为了账号安全,请及时绑定邮箱和手机立即绑定

如何在最新的 4.x 版本中将简单字符串传递给 cucumber-jvm stepdef

如何在最新的 4.x 版本中将简单字符串传递给 cucumber-jvm stepdef

炎炎设计 2023-06-04 16:48:54
在功能文件中,我有以下内容(Joe 是我想传递给步骤文件的参数)   Given Person name is Joe在步骤文件中,我写道:@Given("Person name is {string1}")    public void personName(String name) {        System.out.println("name=" +name);    }在实现 TypeRegistryConfigurer 的类中,我写了typeRegistry.defineParameterType(new ParameterType<String>(        "string1",        "([^ ']*)",        String.class,        new Transformer<String>() {            @Override            public String transform(String s) throws Throwable {                return s;            }        }));我无法使用 name= {string}定义defineParameterType。我得到一个错误,它已经被定义,但是如果我在步骤中使用{string}则Given是未定义的。有更好的方法吗?
查看完整描述

1 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

匹配字符串时,您的步骤必须将参数值括在引号(单引号或双引号)中

因此,将您的故事情节更改为:

Given Person name is "Joe"

然后你可以使用步骤定义:

@Given("Person name is {string}")
public void personName(String name) {
    System.out.println("name=" +name);
}


查看完整回答
反对 回复 2023-06-04
  • 1 回答
  • 0 关注
  • 114 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信