拍摄场景失败屏幕截图

时间:2019-12-20 20:14:28

标签: ruby-on-rails ruby selenium automated-tests bdd

在使用Ruby / Capybara / Cucumber / Selenium进行的自动测试中,有必要在测试的某些步骤失败时执行以下步骤: -拍摄浏览器截图 -Stacktrace取出的图像 -执行下一个场景。

知道如何帮助我解决这个问题吗?

今天,系统将屏幕截图作为方案成功的证据,但是现在,我想在执行下一步或方案之后,在不干扰我所有测试执行的情况下拍摄失败的屏幕截图。

当前用作拍摄屏幕快照的示例代码:
事后|场景|
屏幕快照=“日志/屏幕快照/#{scenario.name} .png”
page.save_screenshot(屏幕截图)
嵌入(屏幕截图,“图片/ png”,“屏幕证据”)
结束

2 个答案:

答案 0 :(得分:0)

这应该为您创建屏幕快照。

  config.after(:each) do |example|
    if example.exception
      screenshot = "log / screenshots / # {scenario.name} .png"

page.save_screenshot(屏幕截图) 嵌入(屏幕截图,“图片/ png”,“ Screen_Evidence”)         结束       结束

您可能希望将其限制为仅用于功能测试,并且可以选择将现有的屏幕截图代码重构为相同的功能。

答案 1 :(得分:0)

尝试这种方式。

chmod +x
相关问题