Cucumber Capture Custom Expressions Java - Как разрешить ввод строки в пошаговых инструкциях? - PullRequest
0 голосов
/ 08 октября 2019

Мы пытаемся полностью переключиться на выражения Cucumber и больше не используем Regex. Мой вопрос, возможно ли создать тип, который допускает запись String в файле объектов?

Например: («второй» пользователь) вместо (второй пользователь)

Вот пользовательский метод paramType, который я использую.

registry.defineParameterType(new ParameterType<>(
                "universalKey",
                "1st|first|2nd|second|3rd|third",
                String.class,
                (String arg) -> arg
        ));

В настоящее время он не допускает ввода строк, но я бы хотел оставить его в кавычках, чтобы избежать необходимости повторного выполнения большого количества файлов / шагов объектов.

Ответы [ 2 ]

0 голосов
/ 23 октября 2019

Я понял, что, хотя и не использовал его, но вот как мы это сделали:

registry.defineParameterType(new ParameterType<>(
            "numbers",
            "\"(1st)"\|\"(first)"\|\"(2nd)"\|\"(second)"\",
            String.class,
            (String arg) -> arg
    ));
0 голосов
/ 11 октября 2019

Вы можете попробовать экранировать двойные кавычки с обратной косой чертой '\'.

the \"second\" user is

См. Здесь - https://cucumber.io/docs/cucumber/cucumber-expressions/#escaping

...