我试图运行相同的场景1000次。我要测试的是,如果我登录并注销n次,应用程序是否稳定。我想出了一个方法,但看起来并不干净整洁。我想为同一HTML中的1000次执行生成报告。
这就是我所做的
黄瓜步骤:
When I login "1000" number of times
在我的步骤定义中是:
successful_attempts = 0
unsuccessful_attempts = 0
attempt_login = attempt_login.to_i
attempt_login.times do
visit_page(Login)
on_page Login do |page|
page.login_with username, password
page.logout? ? (page.logout;successful_attempts+= 1) : unsuccessful_attempts+= 1
end
end
puts "Total Attempts : #{attempt_login}"
puts "Successful Attempts : #{successful_attempts}"
puts "Unsuccessful Attempts : #{unsuccessful_attempts}"
fail if unsuccessful_attempts > 0
答案 0 :(得分:1)
你的情况有点不寻常。如果是我,我会尝试使用'Scenario Outline',其中每个场景都会引入一个名为“尝试”的参数。例如:
Scenario Outline: verify login 1000 times
Given I am not logged in
When I log in with attempt <attempt>
Then ...
Examples:
| attempt |
| 1 |
| 2 |
| ... |
| 1000 |
步骤定义:
When(/^I log in with attempt (\d+)$/) do |attempt|
...
end
这方面的优点是你有一个干净的报告,说明它失败的尝试,可能保留不同的异常日志,1个失败的案例不会阻止其他情况。这样做的缺点是你需要编写一些脚本来生成1000个数字的表。