Tag: 黄瓜

如何在Ruby中将字符串转换为对变量的引用?

我需要能够将变量的名称传递给表达式(在黄瓜中),并希望能够将该字符串转换为变量的引用 (即不是副本)。 例如 Given /^I have set an initial value to @my_var$/ do @my_var = 10 end # and now I want to change the value of that variable in a different step Then /^I update “([^”]*)”$/ do |var_name_string| # I know I can get the value of @my_var by doing: eval “@my_var_copy = @#{var_name_string}” […]

当抛出RSpec ExpectationnotMet时,如何使Cucumber测试继续运行

我正在使用Cucumber / Ruby运行场景,每次测试运行时,RSpec都会捕获错误。 将跳过所有剩余步骤(步骤定义)。 我不希望他们跳过。 我希望程序完全运行,只报告发生的问题。 关于如何让这个工作的任何想法? 它看起来像这样: RSpec :: Expectations :: ExpectationNotMetError:期望“某事”不包括“别的东西” 跳过一步 跳过一步 跳过一步 跳过一步 跳过一步 跳过一步 跳过一步 跳过一步 跳过一步 跳过一步

Watir + Cucumber Connection拒绝了

伙计们,我在我的测试中使用watir + cucumber,对于我重用浏览器实例的每个function,我创建了@@browser = Watir::Browser.new的实例,然后通过我的测试重用它,我正在使用watir-webdriver ,我的测试运行良好,直到现在,我只是添加了另一个场景,我一直收到以下错误消息: Connection refused – connect(2) (Errno::ECONNREFUSED) /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:560:in `initialize’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:560:in `open’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:560:in `connect’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/timeout.rb:53:in `timeout’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/timeout.rb:93:in `timeout’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:560:in `connect’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:553:in `do_start’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:542:in `start’ /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:1035:in `request’

不一致地得到错误(Watir :: Wait :: TimeoutError)

我是黄瓜新手,有时运行脚本我收到错误 (Watir::Wait::TimeoutError) 我没有找到任何特定的模式。 任何帮助将非常感谢。 非常感谢

从IntelliJ(OSX)启动Ruby-Cucumber

我正在从事一项新工作,并且正在使用IntelliJ和Ruby和Cucumber ……所有这些对我来说都是新手。 我有一个基于这个项目的工作项目: https : //github.com/jonathanchrisp/selenium-cucumber-ruby-kickstarter 所以,从命令行,我运行我的项目,如下所示: sudo cukesparse something cukesparse不是我的项目,但这里是github的快速描述:“一个简单的命令行解析器,用于将默认和自定义参数传递给Cucumber,并且能够将这些参数定义为config / tasks.yml文件中的任务!” (对我来说似乎很有趣) 因此,从命令行我能够毫无问题地执行此项目。 我也可以毫无问题地“构建>重建项目”。 我的问题是关于让Run Config工作。 我试图去运行>编辑配置,但没有运气创建配置来开始我的运行。 当我尝试从“基本配置”列表中单击Ruby时,IntelliJ似乎不希望我选择它。 UI类型没有响应。 我必须坚持一些明显的新手booboo。 任何提示非常感谢!

如何以及分别使用Cucumber和Rspec进行测试?

我正在使用Ruby on Rails 3.2.2,cucumber-rails-1.3.0,rspec-rails-2.8.1和capybara-1.1.2以及Selenium驱动程序。 我想分别使用Cucumber和Rspec来了解如何测试和测试什么 ? 也就是说,我应该用Cucumber处理什么“行为”以及Rspec如何以适当的方式划分测试“关注点”? 例如 ,为了测试视图,我应该使用Cucumber还是RSpec测试页面内容中是否存在CSS id ? 或两者?

制作’some_element’.present? 在watir等待不到5秒

我们如何制作some_element.present? 或some_element.visible? 等不到5秒钟。 因为我觉得some_element.present? 在超时之前,将单独等待默认值30秒。 谢谢

状态变量-Cutcumber – Ruby -Regular表达式

我是Cucumber-Ruby的新手。 在定义场景后,我在终端执行了测试,黄瓜建议的片段如下: 然后 (“应启用全部显示按钮”) 执行 pending#在这里编写代码,将上面的短语变成具体的动作 结束 然后 (“应该禁用全部显示按钮”) pending#在这里编写代码,将上面的短语变成具体的动作 结束 我改变了下面的代码 然后 (“显示所有按钮应该(启用|禁用)”) 执行 | state | 看跌期权(州) 结束 但即使在那之后,当我使用终端执行测试时,我收到了添加片段的建议。 当我更改下面的代码时,它工作 然后 (/ ^ Show All按钮应该是(启用|禁用)$ /) do | state | 看跌期权(州) 结束 有人可以帮我描述代码之间的区别吗? 使用 ruby:ruby2.3.3p222黄瓜:3.1.0

在Linux Jenkins CI服务器上使用Xvfb的Firefox无头测试自动化

我正在尝试使用Xvfb和firefox来运行测试自动化无头。 但是,我在启动xvfb时收到以下消息。 XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6 _XSERVTransOpen: transport open failed for inet6/cvms1247:99 _XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6 Initializing built-in extension Generic Event Extension Initializing built-in extension SHAPE Initializing built-in extension MIT-SHM Initializing built-in extension XInputExtension Initializing built-in extension XTEST Initializing built-in extension BIG-REQUESTS Initializing built-in extension SYNC Initializing built-in extension […]

如何设计一个保持SOLID原则和设计模式的应用程序

在启动时说ruby中的应用程序有两种模式:命令行模式和文件模式 给定参数ruby myprogram input.txt output.txt时 ,它会根据输入文件中的某些命令生成输出。 当没有提供任何参数时,它会向我们提供命令提示符。 使用以下命令。 create_class_with_capacity 40 create_student_with_marks Alex 70 create_student_with_marks Mathew 30 create_student_with_marks John 55 .. create_student_with_marks Sylvia 70 etc… fail_student_roll_no 12 => Student with roll number 12 #{student} failed give_marks_to_roll_no 70 1 =>Student with roll number 1 Alex got 70 marks find_all_students_with_marks 70 => Alex, Peter , Russell , Mark […]