如何在黄瓜情况下写数字

问题描述 投票:1回答:2

我想在黄瓜页上写一个数字。请让我知道我该怎么写。

方案概要:输入无效的URL

Given the context "Invalid URL" is open on "Market" 
  When user is on the error 404 page
  Then page not found message is displayed

但是我观察到404被当作参数。

cucumber cucumber-junit cucumber-java
2个回答
5
投票

当然,您只需要在步骤定义中将其作为正则表达式(regex)处理即可。您的步骤定义可以如下所示:

@When("^When user is on the error \"(\\d+)\" page$")
public void When_user_is_on_the_error_page(int errorNum) throws Throwable {

...

}

可以处理1个或多个数字。 \ d代表数字,而+号代表“ 1或更多”。

[我个人喜欢用双引号(“”)括住我的参数,因为这样IDE才知道它是一个参数,可以帮助您完成自动完成功能,等等。

如果想将其限制为更具体的数字(例如,仅三位数字),则可以将正则表达式优化为[\d]{3}之类。 Oracle在Java正则表达式here上有课程。


0
投票

您可以在步骤中使用:

     @When("^When user is on the error (.*) page$")
        public void When_user_is_on_the_error_page(int errorNum) {
   ...
}

(。*)将占用该插槽中的所有内容,并将其用作在()之间定义的变量。如果您没有使用正则表达式的实践,那么它会非常有用,因为(。*)没有预定义的类型,它将使您的步骤更易于阅读。

© www.soinside.com 2019 - 2024. All rights reserved.