我刚开始使用Cucumber,我想弄清楚包含我的步骤定义的文件夹是否必须完全命名为step_defnitions还是可以是任何名称(例如my_defs)。我尝试在我的本地机器上重命名,但有时可以,有时不能。features/||--step_definitions/ 最佳答案 Cucumber将自动加载功能文件夹中的任何文件。这意味着您的步骤定义文件可以位于任何文件夹名称/结构中,只要它们位于功能文件夹中即可。请注意,可以通过执行以下操作来覆盖此设置并明确说明步骤的位置:cucumber-ryour/steps/folder/loc
在Ruby中使用Cucumber时,我不理解作用域,尤其是在实例变量方面。对于我的直接示例的上下文,在hooks.rb的Before部分中,变量@browser被赋值。@browser=Watir::Browser.new@browser_selected.to_sym(其中@browser_selected通常是“chrome”)在步骤定义中使用@browser。举个简单的例子:@browser.send_keys(:tab)我不明白的是什么对象包含@browser作为属性。它在这种情况下有什么意义?我知道令我困惑的代码总是在一个block中,并且我认识到每个这样的block都用于(
我们正在寻找一个基于云的自动化框架,它可以很好地与我们在工作中使用的Cucumber和Selenium配合使用。在读完docs我需要修改我们的env.rb文件以放入一些设置代码。是否可以将此初始化代码放在不同的文件中?如果是这样,那将如何运作?原因是我不想让env.rb比现在更复杂,我们不确定我们是否会使用这个特定的框架并希望保留一些东西很简单,以防我们需要退出。理想情况下,我想将此初始化放在一个单独的文件中,并且只为特定的功能文件调用它,但我会尽我所能。 最佳答案 是的。你可以把它放在features/support目录下的任何文
我使用gem'cucumber-rails'进行了一些cucumber测试。此测试使用另一个名为“page-objects”的gem(来自cheezy),在我的测试中我使用Selenium和Chrome-driver。为了让测试在Jenkins服务器(没有X)中运行,我使用了gem'headless'并且我已经将服务器配置为使用Xfvb(我的本地机器运行ElementaryOSFreya0.3.2并且服务器运行Ubuntu15.10)。当我在我的本地机器上运行这些测试时(也使用headless),每次都它们都完美地通过。当我从终端在Jenkins的服务器中运行测试时也会发生同样的情况。
我需要测试当用户多次重复一组操作时触发的行为。我想以一个看起来像这样的场景结束:Scenario:NicewayGiventhatIamonsomescreenWhenIentersomethingintosometextfieldAndIpresstheContinuebuttonAndIgobackAndIrepeattheprevious2steps5timesThentheapplicationshouldcrash而不是像这样的场景:Scenario:AnnoyingwayGiventhatIamonsomescreenWhenIentersomethingintosomet
我想打印位于跨度中的错误消息的内容,看起来像这样:EsexisitiertbereitseinAccountmitdieserE-MailAdresse.WennSiesichsichersind,dassdiesIhreAdresseist,dannklickenSiehierumdasPasswortunddenZugangzuIhremAccountzuerhalten.在我的步骤定义中,我尝试了以下printpage.find('.error-msgspan')然而,这并没有真正起作用。在谷歌上搜索了一个小时后,我找不到任何有用的东西,这也可能是因为我对这一切还很陌生。我基本上
这是我在使用带有authlogic的@javascript运行cucumber测试时遇到的错误:YoumustactivatetheAuthlogic::Session::Base.controllerwithacontrollerobjectbeforecreatingobjects这是我在feature/support/authlogic.rb中的authlogic支持代码:require"authlogic"require"authlogic/test_case"World(Authlogic::TestCase)ApplicationController.skip_before
我有这个html:adamaarticalocalhostlocalhost.localdomaintest我正在尝试用cucumber来选择所有值,但它没有运行。这些是我的尝试:When/^Iselectallin"(.*)"/do|select_id|options=all(:xpath,"//select[@id='"+select_id+"']/option").clickoptions.eachdo|option|option.clickend#~find(:xpath,"//select[@id='"+select_id+"']/option").eachdo|elemen
我有一个小的测试项目,我用它来测试一个更大的项目的水域。我在rails上使用rspec进行测试,但最近研究了Cucumber。它看起来非常好,但我想知道是否有办法让Cucumber运行我的规范测试,或者让rspec(autospec)运行我的Cucumber功能。我四处张望,但尚未找到可靠的结论。谢谢,迈克 最佳答案 我也一直在试验Cucumber。它支持自动测试:AUTOFEATURE=trueautospec连续运行rspec和cucumber测试套件。 关于ruby-on-rail
在整个cucumber测试过程中,我在各种放置中使用相同的步骤。我想根据调用功能是否分配了标记(在本例中为@javascript)进行微小更改。是否可以在更改行为的步骤中测试标签的存在和名称?(我知道我可以创建不同的步骤,但这不是很干吗?)解释我所追求的伪代码When/^Isigninas"(.*)\/(.*)"$/do|email,password|step%{Igotothesigninpage}step%{Ifillin"user_email"with"#{email}"}step%{Ifillin"user_password"with"#{password}"}iftag&&t