Rails和Selenium:如何在浏览器中停止/暂停执行测试?

Jos*_*eim 15 bdd selenium ruby-on-rails

我正在努力(但非常有趣的时候)使用Cucumber,RSpec,Selenium和Rails进入行为驱动开发.

我已准备好使用Selenium进行测试,看看Firefox弹出并在我的场景中自动运行会很有趣.但我想做的一件事是暂停或停止某一点的执行,所以我可以检查Selenium在某一点看到的内容.

我知道save_and_open_page命令,但这只显示了没有格式化的纯HTML.那么也许有一个stop_execution方法或什么东西阻止Selenium 而不关闭浏览器?

Abe*_*ker 27

安装pry,然后将binding.pry测试放在您希望暂停的位置.完成后,按Ctrl+ D或键入exit要打开的REPL继续执行.


小智 18

要不就:

 visit '/'
 sleep(inspection_time=5)
 visit '/dreamland'
Run Code Online (Sandbox Code Playgroud)

  • "这可能会让你有两种方式.首先,你需要将睡眠时间设置得足够长,以便有足够的时间来获得响应.但这意味着你会花很多时间闲着等待响应因此,减慢你的测试速度.第二点就是,无论你多长时间睡觉,有时它都是不够的.环境会有一些变化会导致你超过睡眠 - 你会得到错误的失败.因此,我强烈建议你永远不要像这样裸睡." 来自http://martinfowler.com/articles/nonDeterminism.html (2认同)