黄瓜中的数据驱动测试

时间:2009-09-01 00:02:45

标签: cucumber yaml data-driven-tests

我必须测试一个消息路由应用程序,其功能大致如下: - 消息被发送到应用程序 - 应用程序检查消息 - 根据消息内容

将消息转发到某处

绝大多数测试用例几乎相同;生成特定类型的消息,将其加载到系统中,等待几秒钟,然后检查所需的目标,以确保消息正确转发。

有没有一种推荐的方法来生成一个测试用例,并让它重复循环遍历所有(message,required_destination)元组,而不是在Cucumber中生成100个几乎相同的测试用例?我更喜欢将这些元组保存到YAML文件而不是数据库中,以便于维护,但任何一种解决方案都可以。

2 个答案:

答案 0 :(得分:5)

您应该使用示例

尝试场景大纲

正常情景

Scenario: Login
  Given I am on login page
  When I enter username "Jonas" and password "secrect" and press login
  Then I get redirected to "Jonas Home Page"

情景大纲

Scenario Outline: Login
  Given I am on login page
  When I enter username <username> and password <password> and press login
  Then I get redirected to <redirect_page>

Examples:
  | username | password | redirect_page     |
  | "Jonas"  | "secret" | "Jonas Home Page" |
  | "Anna"   | "Data"   | "Annas Home Page" |

了解更多: https://github.com/cucumber/cucumber/wiki/Scenario-Outlines

答案 1 :(得分:0)

我在黄瓜中没有这种情况,但我确实在规格中使用管道分隔文件进行海量数据测试,希望它会有所帮助:

您可以找到示例here in description of DamerauLevenshteinModhere in read_test_file

我不明白为什么同样的方法也不能用于黄瓜。