我不能用黄瓜为项目执行简单的测试.我在Intellij 13社区,有黄瓜插件.
我在我的功能目录中编写了我的功能文件,我还实现了我的步骤,在插件的帮助下创建它们.我在intellij中识别我在功能文件中的步骤,它可以导航并转到步骤实现.
但是当我尝试运行我的场景时,它总是失败,因为对于每一步,它都会显示"Undefined step:".
以下是我的项目组织方式:

正如我之前所说,你可以看到我的步骤被Intellij识别:

这怎么可能,我怎么能纠正这个?
任何帮助都会很棒!
编辑现在我为跑步者添加了选项:
@CucumberOptions( monochrome = true,
features = "src/test/resources/features/",
format = { "pretty","html: cucumber-html-reports",
"json: cucumber-html-reports/cucumber.json" },
dryRun = false,
glue = "fr.tlasnier.cucumber" )
Run Code Online (Sandbox Code Playgroud)
有用!
然而,我注意到在此之前,我有两个场景大纲.一个工作完美,另一个无法找到步骤定义!
真的很奇怪,因为这两种情况都有一些步骤.
我想格式化一些字符串,如"I>Télé"类似的东西"itele".这个想法是,我希望我的字符串是小写(完成),无空白字符(完成),无重音或特殊字符(如>,<,/,%,~,é,@,ï等).
删除特殊字符的出现是可以的,但是我想在删除重音时保留字母(就像我在我的例子中所做的那样).这就是我所做的,但我不认为好的解决方案是用"e"替换每个é,è,ê,ë,而不是为"i","a"等替换它,然后删除每一个特殊字符...
String name ="I>télé" //example
String result = name.toLowerCase().replace(" ", "").replace("é","e").........;
Run Code Online (Sandbox Code Playgroud)
这样做的目的是为Android应用程序提供有效的资源文件名,所以如果您有任何其他想法,我会接受它!
我想从互联网上读取一个xml文件.你可以在这里找到它.
问题是它是用UTF-8编码的,我需要将它存储到一个文件中,以便以后解析它.我已经阅读了很多关于这方面的主题,这是我想出的:
BufferedReader in;
String readLine;
try
{
in = new BufferedReader(new InputStreamReader(url.openStream(), "UTF-8"));
BufferedWriter out = new BufferedWriter(new FileWriter(file));
while ((readLine = in.readLine()) != null)
out.write(readLine+"\n");
out.close();
}
catch (UnsupportedEncodingException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
这段代码一直工作到这一行:<title>Chérie FM</title>
当我调试时,我得到这个:<title>Ch?rie FM</title>
显然,有些东西我无法理解,但在我看来,我在几个网站上都遵循了代码.