Ruby Watir和Cucumber在Netbeans -场景未定义



我是新来的。我希望精确度这个问题是正确的。我没有找到答案,这里和这个解决方案都没有帮助。

简介:

我在RubyMine中使用Ruby/Watir/Cucumber创建了一个web应用程序的自动测试。特性工作正常——测试通过了(步骤定义没问题)。不幸的是,我不能在NetBeans中运行相同的功能。似乎我确实有问题链接步骤与他们的步骤定义。

使用的相关环境/工具:

Windows 7


NetBeans IDE 8.0
NenBeans插件:Cetriolo v 1.0
NetBeans插件:Cucumber Features v 1.8.2
Ruby 1.9.3
GEM: watr -webdriver 0.6.10
创业板:cucumber 1.3.15
GEM: Page-object 1.0
项目结构:
Picture_of_project_structure


功能看起来像:

 1    Feature: Adoptin Puppies
 2    
 3      As a puppy lover
 4      I want to adopt puppies
 5      So they can chew my furniture
 6    
 7     Background:
 8       Given I an on the adoption site
 9    
10     Scenario: Adopting one puppy
11       When I click the View Details of puppy 1 button
12       And I click the Adopt Me button
13       And I click the Complete the Adoption button
/..../

问题描述:

特征文件Given, When, And, And,…,并附有注释,说明这些步骤没有步骤定义。
步骤窗口(由插件启用)中没有看到实现:Image_of_step_window_without_step_implementation

当我经营收养小狗的时候。功能使用黄瓜图标(由插件启用),然后执行背景和步骤在收养网站上给定i和。我的意思是-网页浏览器打开并进入正确的地址,然后关闭(这种情况发生了4次-每4种情况一次)。输出为:

Output of running [cmd, /C, cucumber, -r, C:Userst4fNetBeansProjectstest_puppies_copylibfeatures, C:Userst4fNetBeansProjectstest_puppies_copylibfeaturesadopting_puppies.feature, -s] is:
--- START ---
*** WARNING: You must use ANSICON 1.31 or higher (https://github.com/adoxa/ansicon/) to get coloured output on Windows
Feature: Adoptin Puppies
  As a puppy lover
  I want to adopt puppies
  So they can chew my furniture
  Background: 
    Given I an on the adoption site
      dupa
  Scenario: Adopting one puppy
    When I click the View Details of puppy 1 button
    And I click the Adopt Me button
 /...steps written here like in feature file.../
4 scenarios (4 undefined)
43 steps (30 skipped, 9 undefined, 4 passed)
2m35.034s
You can implement step definitions for undefined steps with these snippets:
When(/^I click the View Details of puppy (d+) button$/) do |arg1|
  pending # express the regexp above with the code you wish you had
end


当我遵循这个答案并在cmd窗口中使用

运行该功能时:
cucumber lib/features/adopting_puppies.feature -r lib/features

的结果是相同的(浏览器打开,页面访问,浏览器关闭),但至少我可以看到adopting_puppy_steps。Rb 'used'(输出相同,但每行输出后都有注释):

/.../
  Background:                       # libfeaturesadopting_puppies.feature:7
    Given I an on the adoption site # lib/features/step_definitions/adopting_pup
py_steps.rb:1
      dupa
  Scenario: Adopting one puppy                            # libfeaturesadoptin
g_puppies.feature:10
    When I click the View Details of puppy 1 button       # libfeaturesadoptin
g_puppies.feature:11
    And I click the Adopt Me button                       # lib/features/step_de
finitions/adopting_puppy_steps.rb:17
/.../

问题/要求:

谁能告诉我为什么NetBeans的步骤定义不能被识别?由于'Given'被成功执行,并且RubyMine的所有步骤都没有问题,我很困惑(特别是因为我对所有这些Ruby/Watir/Cucumber的东西都很陌生)。

我的RubyMine评估在5天内结束,我仍然想学习:)

当我第一次使用Rubymine时,我有一个类似的问题,解决方案是在目录设置中。步骤定义文件夹在我的项目中的错误目录树下,所以当它试图在默认位置找到它们时,它什么也找不到。

更具体地说,我的step_definition文件夹是在我的主项目目录下创建的,而不是在我的功能文件文件夹中。因此,当rubymine试图找到一个名为step_definitions的文件时,它在相对文件(功能)中找不到一个,所以它告诉我步骤没有定义,尽管它们显然在另一个文件夹中。一旦我移动了文件,它就可以正常工作了。

我对netbeans一无所知,但默认情况下,它可能会在不同的位置寻找rubymine来找到这些步骤定义。

您的文件结构看起来是正确的,但我不熟悉netbeans是否在不同的地方寻找步骤定义。

您是否尝试在接受的答案下面的答案中按照建议删除黄瓜功能插件?

如果这不起作用,看看是否可以找到netbeans在默认情况下查找其step_definitions文件夹的位置。

相关内容

  • 没有找到相关文章

最新更新