Java 如何解析分析功能文件时出错的runtime.cucumberexception
我刚刚创建了一个简单的java文件,用于通过cucumber执行功能文件,但失败了,并抛出以下运行时异常Java 如何解析分析功能文件时出错的runtime.cucumberexception,java,webdriver,cucumber,bdd,Java,Webdriver,Cucumber,Bdd,我刚刚创建了一个简单的java文件,用于通过cucumber执行功能文件,但失败了,并抛出以下运行时异常 Exception in thread "main" cucumber.runtime.CucumberException: Error parsing feature file C:/Users/XXX/XXXX/src/test/java/RunTest.java at cucumber.runtime.FeatureBuilder.parse(FeatureBuilder.ja
Exception in thread "main" cucumber.runtime.CucumberException: Error parsing feature file C:/Users/XXX/XXXX/src/test/java/RunTest.java
at cucumber.runtime.FeatureBuilder.parse(FeatureBuilder.java:133)
at cucumber.runtime.model.CucumberFeature.loadFromFeaturePath(CucumberFeature.java:102)
at cucumber.runtime.model.CucumberFeature.load(CucumberFeature.java:54)
at cucumber.runtime.model.CucumberFeature.load(CucumberFeature.java:34)
at cucumber.runtime.RuntimeOptions.cucumberFeatures(RuntimeOptions.java:201)
at cucumber.runtime.Runtime.run(Runtime.java:109)
at cucumber.api.cli.Main.run(Main.java:36)
at cucumber.api.cli.Main.main(Main.java:18)
Caused by: gherkin.lexer.LexingError: Lexing error on line 1: 'package test.java;
import cucumber.api.CucumberOptions;
import cucumber.api.testng.AbstractTestNGCucumberTests;
@CucumberOptions(features="src/test/resources/")
public class RunTest extends AbstractTestNGCucumberTests {
}
功能文件:
Feature: Search India on BBC website and verify search.
@Search
Scenario Outline: Search India on BBC website and verify it.
Given I open the firefox browser
And I navigating to BBc website
Then I click at search textbox
And I enter "India" in search textbox
And I click at Search button
Then I should be taken to search page
And I verify India on search page
有人能告诉我如何解决这个问题吗?在使用场景大纲时,您需要提供一个“示例”部分。在本例中,看起来您根本不需要场景大纲,因此:
Feature: Search India on BBC website and verify search.
@Search
Scenario: Search India on BBC website and verify it.
Given I open the firefox browser
And I navigating to BBc website
Then I click at search textbox
And I enter "India" in search textbox
And I click at Search button
Then I should be taken to search page
And I verify India on search page
如果您确实需要场景大纲,则需要类似以下内容:
Feature: Search India on BBC website and verify search.
@Search
Scenario Outline: Search India on BBC website and verify it.
Given I open the firefox browser
And I navigating to BBc website
Then I click at search textbox
And I enter "<country>" in search textbox
And I click at Search button
Then I should be taken to search page
And I verify <country> on search page
Examples:
| country |
| India |
| China |
功能:在BBC网站上搜索印度并验证搜索结果。
@搜寻
场景概述:在BBC网站上搜索印度并验证。
如果我打开firefox浏览器
我导航到BBc网站
然后单击搜索文本框
我在搜索文本框中输入“”
我点击搜索按钮
然后我应该被带到搜索页面
我在搜索页面上验证
示例:
|国家|
|印度|
|中国|
我发现了这个问题,在功能文件或场景中,冒号之前有额外的空间
所以这个问题应该在删除额外的空间后解决
先前的
Scenario Outline: Search India on BBC website and verify it.
期望
ScenarioOutline: Search India on BBC website and verify it.
这真的很有用。。在删除文本场景和冒号之间的空格后,我也出现了同样的错误。如果IDE显示错误以更正它,这将非常有用?? 脚本: 给药后没有冒号只是为了让你知道。 场景概要:使用正确的用户名和密码登录 给定我导航到登录页面 然后我输入
Examples:
| username | password |
| apple | passapple |
| ball | passball |
| cat | passcat |
我也有类似的问题。在去掉(:)分号和功能、场景、场景大纲等之间的空格后。。我的错误解决了 e、 g: 以及
功能:调用所有API事件、服务
场景大纲:创建呼叫后和验证数据
给定用户\u有\u产品的\u列表\u
当我们能得到产品详细信息的列表时
示例:
|用户类型|
|国内的|
考虑以下情况-
功能:预订确认页面
场景:验证页面组件
假设客户在“预订确认”页面
当客户查看页面时
然后,他们应该能够查看以下内容:
|标题|预订ID |乘客姓名|旅行日期|旅行时间|
|公交车详细信息|支付总额|目的地名称|目的地图像|
|到达目的地的时间|页脚|
如果在第2行中指定要验证的值(如图所示),则会出现解析错误。复制上述内容并粘贴到编辑器中时,不会显示任何错误。但是当您运行它时,它将给出解析错误。因此,我们需要在一行中指定要验证的值,即使它不适合编辑器
因此,场景如下所示
场景:验证页面组件
假设客户在“预订确认”页面
当客户查看页面时
然后,他们应该能够查看以下内容:
|页眉|预订ID |乘客姓名|旅行日期|旅行时间|巴士详细信息|支付总额|目的地名称|目的地图像|到达目的地的时间|页脚|
确保您只有一次word功能我也面临这个问题。在我的例子中,我在一个数据表中遗漏了一个管道“|”。添加后,问题得到解决。数据表(或示例中的某个时间)
Feature: Call all APIs Incidents, Services
Scenario: Create POST call and verify data
Given user_has_a_list_of_products
When we_can_get_a_list_of_product_details
Feature: Call all APIs Incidents, Services
Scenario Outline: Create POST call and verify data
Given user_has_a_list_of_products <usertype>
When we_can_get_a_list_of_product_details
Examples:
| usertype |
| Domestic |
Issue:
| feed.title |
| feed.updated
| feed.author.name |
Corrected(added pipe in 2nd data) as:
| feed.title |
| feed.updated |
| feed.author.name |