首页 > 解决方案 > 黄瓜示例表未正确分隔

问题描述

我有一个示例表

Examples:
| UserName         | Group    | NotifyUser | ReadOnlyPermission |
| testing@test.com | new test | no         | no                 |

对于步骤

And User fills out User Info Form with <UserName> <Group> <NotifyUser> <ReadOnlyPermission>

和步骤定义

@And("^User fills out User Info Form with (.*) (.*) (.*) (.*) $")
public void fillUserInfoForm(String username, String group, String notifyUser, String readOnlyPermission)

但由于某种原因,变量用户名被导入为“testing@test.com new”,而不仅仅是“testing@test.com”。

我已经看过了,但我似乎无法找出为什么它没有正确划界。有什么办法可以解决这个问题吗?

标签: seleniumcucumbercucumber-java

解决方案


因为您的“组”中有空格。在 Cucumber 将您的示例数据替换为如下所示的步骤后:

在此处输入图像描述

您可以重写您的步骤定义以用逗号分隔您的项目,以便:

And User fills out User Info Form with <UserName>,<Group>,<NotifyUser>,<ReadOnlyPermission>

@And("^User fills out User Info Form with (.*),(.*),(.*),(.*)$")
public void fillUserInfoForm(String username, String group, String notifyUser, String readOnlyPermission)

这应该可以解决您的问题:

在此处输入图像描述

PS - 如果您的示例数据中有逗号,此修复会遇到问题。但是,您可以在准备正则表达式时考虑这一点。


推荐阅读