有没有一种方法来测试黄瓜和水豚列表的排序。排序是用JavaScript完成客户端。用黄瓜和水豚进行测试排序
我想沿着线的东西:
Then I should see "first element" and then I should see "second element"
不幸的是我不知道如何处理建设的步骤。
感谢您的帮助!
有没有一种方法来测试黄瓜和水豚列表的排序。排序是用JavaScript完成客户端。用黄瓜和水豚进行测试排序
我想沿着线的东西:
Then I should see "first element" and then I should see "second element"
不幸的是我不知道如何处理建设的步骤。
感谢您的帮助!
将你正在测试的故事(你想要接近纯英文)和测试的实际实现(它隐藏在step_definitions中)分开是一个好主意。
有几种方法可以解决这个问题,这取决于你想测试什么。在第一种情况下,黄瓜测试是非常具有可读性,并把它归结为正确实施步骤定义:
Given that I am on page xyz
And I have a list
Then I should see the list in sorted order
在这种情况下,你必须定义意味着什么,有一个列表(可以指定如果你愿意的话,它可以在步骤def中列出),然后意味着按照排序顺序查看列表(在这里你可以传递一个正则表达式,以确保在项目2之前看到项目1等)。
或者如果你喜欢被在黄瓜测试更详细的,你可以这样做,如:
Given that I am on page xyz
Then I should see /item1.*item2.*item3/
假定列表已填充。
根据列表的位置,您可能必须使用within
范围参数。
请记住,黄瓜是伟大的功能和集成测试,但可能不是正确的工具进行单元测试(查看所有边缘案例)。要在单元测试级别测试排序,我强烈建议使用QUnit。由于QUnit测试是静态页面,试试这招用于运行测试,水豚的一部分:
Given I am on "/test/path/to/qunit/tests"
Then I should see "Whatever Title You have Assigned"
And I should see "0" within "//p[@id='qunit-testresult']/span/[@class='failed']"
正则表达式 - 为什么我没有想到这一点? – 2010-12-10 23:31:07
*“测试与黄瓜和水豚排序” *听起来像一个恶意的玩笑开幕... ;-) – 2010-12-10 22:30:58