草庐IT

calabash-cucumber

全部标签

ruby - 使用cucumber/capybara时有没有类似于selenium grid的东西?

所以我正在尝试设置一个环境,它的行为就像一个Selenium网格:1)它在一组分布式客户端上并行运行测试2)我可以指定测试在特定客户端上运行(在不同的操作系统上运行,使用不同的浏览器),或者测试在所有客户端上运行一次或它们的任意组合。问题是capybara目前实际上使用的是WebDriver,而不是selenium,因此据我所知,我无法为测试指定一个selenium网格以使其正常工作。我调查了诸如DeepTest之类的事情和Testjour,但都没有抓到上面的两个痒处。我希望有一种方法可以用我希望它在哪些浏览器上运行来标记cucumber功能,而且它就是这样做的,就像selenium网

javascript - 使用 Cucumber 测试 Highcharts(JS 图表库)

我有一个应用程序,我们在其中帮助我们的客户通过使用highcharts呈现的图形可视化数据.数据处理和可视化是我们的应用程序提供的主要值(value),换句话说,它很重要,应该进行测试。我正在使用Cucumber为应用程序编写集成测试,我想包括我们的highcharts实现的一些基本测试。我特别热衷于测试是否绘制了正确的数据以及自定义ajax交互是否正常工作。示例功能可能如下所示:Feature:PlotRelatedAlarmDataAsanprojectownerIwanttoseeantecedentdataplottedaroundthetimeofthealarmSothat

ruby - 在 Cucumber 中限定转换范围

我正在使用大量现有的cucumber功能,并添加额外的测试。对于这些新测试,我还尝试使用转换来简化重复性任务。如何在不破坏现有测试的情况下添加转换?我已经将上下文添加到捕获组,但由于上下文与预先存在的测试来自相同的业务领域,因此很容易最终匹配。有没有办法只对某些步骤应用转换? 最佳答案 您可以使用标签和Before过滤器在世界中设置实例变量。这随后可用于您的转换,以便它可以执行特定于标签的转换。例如,如果您只想在存在@hook标记时转换整数:Transform/(\d+)/do|num|if@hooknum.to_ielsenume

ruby - 如何从 cucumber 表中获取空白或零对象?

我尝试在我的测试中传递空白字符。所以我在我的cucumber步骤中尝试以下操作IfIenter:|company_name|phone|||#{nil}|我得到{"company_name"=>"","phone"=>"\#{nil}"}|company_name|phone||||我得到{"company_name"=>"","phone"=>""}|company_name|phone||\s|\nil|我得到{"company_name"=>"\\s","phone"=>"\nil"}|company_name|phone||""|''|我得到{"company_name"=>"

ruby-on-rails - 如何在 cucumber 测试中集成 parallel_test 和 thinking sphinx?

我有带有cucumber功能的Rails4应用程序。在一些测试中,我考虑了sphinx数据,例如:@javascript@sphinxFeature:EditaserviceScenario:EditingGivenIexistasan"individual"AndIhavefewservicesasindividualuserAndSphinxindexesallmodels...ThenIshouldseeI18ntranslationforkey"views.messages.notices.add.updated"@sphinx钩子(Hook)包含以下逻辑:Before('@s

ruby - 保持 cucumber 常见步骤的最佳实践

我将cucumber-watir-webdriver用于自动化目的。我有以下目录结构:|features-|feature1--|1.feature--|step_definitions---|1.rb-feature2--|2.feature--|step_definitions---|2.rb等等。我需要知道什么是减少1.rb和2.rb中冗余的最佳做法。feature1和feature2完全不同,所以我不能将两者合并到一个目录中。还有一些部分特征线相同,但执行步骤不同,所以如果它们放在一起会产生歧义。我需要知道1.rb和2.rb中是否有一些共同的部分,我应该把它放在哪里是保持共同步

ruby - 我如何最好地在 Cucumber 中表达这种依赖于时间的场景?

我一直在努力学习Ruby中的Cucumber,我认为最好的方法是创建自己的项目。但是,我想知道什么是好的“给定”子句。据我理解,“Given”基本上是一个设置,“When”是被测函数,“Then”是预期结果。例如,假设我正在制作一个基于踏入熔岩的实体的Minecraft场景。我当前的G-W-T看起来像这样:Scenario:TakedamagewhenIstandinlava.Givenanentityisstandingnexttoablockoflavawith10healthWhentheentitystepsintheblockoflavaThentheentityshould

ruby-on-rails - 在 Cucumber Ruby 上测试 HTTP 和 HTTPS

我正在尝试修复一个错误,但无法在我的本地环境中重现它正在成为一个问题。Cucumber或许可以提供帮助,但我找不到让Cucumber为我工作的方法。它专门针对HTTP和HTTPS。我使用4种不同的环境。只有生产和下面的是HTTPS的,我的错误只发生在那里正是因为协议(protocol)/URL的生成。有没有办法让Cucumber在HTTPS下为特定功能工作?我希望它足够清楚,尽管我认为它仍然有点模糊。 最佳答案 您可以让capybara在cucumbertaghooks中使用HTTPS。例如:@httpsScenario:redir

ruby - 在 Cucumber 中添加 Sinatra 助手

我目前正在努力从Cucumber中删除我的Sinatra应用程序的辅助方法。我有一个带有简单session身份验证(通过cookie)的Sinatra应用程序,我想通过为我的删除logged_in?辅助方法来关闭身份验证cucumber场景。Sinatra和Cucumber似乎在session方面存在问题,所以我考虑只使用Mocha来解决这个问题。但是我不知道如何从Given-Block中访问Sinatra::Application实例以stub该方法。 最佳答案 看来我需要在Before...end-block中直接覆盖我的身份验

ruby-on-rails - Rails cucumber 未定义方法 `config' 为 nil :NilClass (NoMethodError)

我刚刚升级到ruby​​1.9.3-p125(从1.9.3-p0)。所有测试在升级前都有效。现在我在运行rakefeatures时收到以下错误Usingthedefaultprofile...undefinedmethod`config'fornil:NilClass(NoMethodError)/home/map7/.rvm/gems/ruby-1.9.3-p194@rails3.2/gems/cucumber-rails-1.3.0/lib/cucumber/rails.rb:17:in`'/home/map7/.rvm/gems/ruby-1.9.3-p194@rails3.2/