小编ari*_*fun的帖子

Ruby调试器在STDIN.gets用户输入上失败

我相信你可以很容易地重现这个问题.只需要一个新的RubyMine(7.1) - Mac或Windows版本,Ruby 2.2,创建简单的脚本:

puts "Hi, i'm gonna break your debugger :)"
user_input = gets
puts "Here should be breakpoint"
Run Code Online (Sandbox Code Playgroud)

将断点放在第3行并运行Debug会话(RubyMine使用ruby-debug-idegem).

当您在RubyMine控制台窗口中键入内容以便脚本读入时gets- 程序不会吃掉您输入的内容:

无法执行语句:当前堆栈帧不可用.暂停进程以使用控制台解释器

这里发生了什么,你如何调试这样的Ruby脚本?

ruby debugging rubymine

10
推荐指数
1
解决办法
1478
查看次数

Capybara + Rspec如何匹配tag属性的一部分

我有一个页面有几个链接,<a href='/bla/bla/bla/?page=xxx>text</a> 我想要xxx使用Capybara和RSpec 匹配某些值链接,我不关心属性的bla/bla/bla一部分href.

page.should have_selector("div.class ul li a", :href => "page=2") 
Run Code Online (Sandbox Code Playgroud)

也行不通

page.should have_xpath("//a[@href='page=2']")
Run Code Online (Sandbox Code Playgroud)

不是一个选项,因为我不知道完整的href属性值.

PS:也没有找到任何完整的Capybara API文档,只是为了获得所有可用的方法和参数的描述.我有这样的事吗?

rspec ruby-on-rails capybara

8
推荐指数
1
解决办法
5059
查看次数

标签 统计

capybara ×1

debugging ×1

rspec ×1

ruby ×1

ruby-on-rails ×1

rubymine ×1