[英]Ruby cucumber scenario hook execution order
我有一个After钩子,它在场景本身的钩子之前执行。 我想颠倒那些正在运行的钩子的顺序。 目前,“After do”挂钩在“After('@ 66075')”之前运行,并且66075中的清理必须先运行。
我的钩子
After('@66075') do
begin
#cleanup
rescue => detail
puts detail.message
puts detail.backtrace.join("\n")
end
end
After do |scenario|
begin
if scenario.failed?
#do stuff
end
rescue
puts "process for failing scenarios failed"
end
begin
@browser.link(:text, 'Logout').click
sleep(0.5)
@browser.alert.ok if @browser.alert.exists?
rescue => detail
puts detail.message
puts detail.backtrace.join("\n")
puts "logout and close windows failed"
end
end
和我的情景:
@66075
Scenario: my Scenario
Given A
When B
Then C
挂钩的运行顺序与它们在support / * .rb文件中出现的顺序相反。 钩子是否特定于标签不会影响其运行的顺序。要使标记的钩子在未标记的钩子之前运行,请将标记的钩子放在未标记的钩子之后。
在钩子以与它们声明的顺序相同的顺序运行之前。 https://docs.cucumber.io/cucumber/api/#hooks
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.