美好的一天 我最近从 cucumber-java8 转换为 cucumber-java,并且在步骤定义中遇到了正则表达式的问题。
Cucumber 无法识别我们在一步定义下合并的步骤。
示例:
@Given(" client (created)/(requests to create) application for code {string}")
public void client_createdrequests_to_create_application_for_code_string(String code) {
// code for steps
}
特征文件1:
client created application for code 200
功能文件2:
client requests to create application for code 201
我尝试为大括号(,)添加转义字符,但仍然面临同样的问题
@Given(" client \\(created)/\\(requests to create) application for code {string}")
public void client_createdrequests_to_create_application_for_code_string(String code) {
// code for steps
}
你能告诉我这个案例应该怎么做才能让黄瓜识别出来吗?连同逃避黄瓜的表情
新的cucumber-java版本是7.12.1 黄瓜小黄瓜 7.13.0
提前致谢
Cucumber 使用正则表达式将步骤与定义进行匹配。捕获与模式匹配的任何内容的简单方法是使用
(.*)
:
@Given(" client (.*) application for code {string}")
public void client_createdrequests_to_create_application_for_code_string(String code) {
// code for steps
}
如果您特别想匹配这些单词而不是其他单词,您可以使用
|
(OR):
@Given(" client (created|requests to create) application for code {string}")
public void client_createdrequests_to_create_application_for_code_string(String code) {
// code for steps
}
有关更多信息,请查看正则表达式。