詹金斯找不到水豚的步骤定义

Jenkins can't find step definition of capybara

我已经在 windows 服务器上安装了 Jenkins,并在同一台服务器上设置了测试环境。

我有一份 运行 如下 cmd 命令的工作:

set PATH=%PATH%;C:\Ruby200-x64\bin;
cucumber C:\Users\Administrator\Documents\web-automation\features --tag @auth

当我在服务器上通过 cmd 运行 使用相同的命令时,它工作正常,但 Jenkins 给出了关于未定义步骤的错误,如下所示:

6 scenarios (6 undefined)
34 steps (34 undefined)
0m0.070s

You can implement step definitions for undefined steps with these snippets:

Given(/^I login to to system as "([^"]*)"$/) do |arg1|
  pending # Write code here that turns the phrase above into concrete actions
end

. . .

我猜当您通过 CMD 运行 时,您位于 cucumber 的项目文件夹中...据我了解,您的问题是告诉 cucumber 应该在哪里找到以及 运行 功能,但是如果您的终端不在该文件夹结构中,黄瓜将不知道如何找到您的步骤定义...可能有两种解决问题的方法:

在 Jenkins 中,在 运行 执行 cucumber 命令之前,导航至:

cd C:\Users\Administrator\Documents\web-automation

然后运行:

cucumber features --tag @auth

或运行以下命令而不导航到 Cucumber 测试套件:

cucumber C:\Users\Administrator\Documents\web-automation\features -r C:\Users\Administrator\Documents\web-automation\features --tag @auth