找了几个小时后,我不得不问...
我想在页面上找到一串文本。具体地说,我希望确保根据用户提交的表单显示适当的错误。考虑到可能有几条消息,以及我正在处理的web应用程序,如果我可以将每个元素捕获到一个列表中,我想我可以遍历该列表并匹配字符串。
宁静-BDD对我来说是新的,我正在挖掘Screenplay (我的老板很喜欢它的报告),但我发现很难理解其中的一些(好的演练例子很少)。此外,我也几乎没有使用Selenium的经验。
如果有人可以帮助我,或者告诉我一些信息(除了serenity-bdd在线手册),我将非常感激。
发布于 2017-01-25 16:48:21
使用剧本模式,您可以编写返回表单错误的问题,这些错误可以在BDD测试中进行检查。例如,我有一个表单,它在输入值旁边显示错误。所有的错误都有css类".text-danger“。匹配的Question对象将如下所示:
public class FormErrors
implements Question<List<String>> {
public static FormErrors displayed() {
return new FormErrors();
}
@Override
public List<String> answeredBy( Actor actor ) {
return Text.of( EnterForm.FORM_ERRORS ).viewedBy( actor ).asList();
}
}FORM_ERRORS常量如下所示:
public static final Target FORM_ERRORS = Target.the( "Form Errors" ).locatedBy( ".text-danger" );因此,我能够像这样检查正确的错误:
theActorInTheSpotlight().should(
seeThat( FormErrors.displayed(), is( errors ) )
);如何编写剧本测试的一个很好的例子是screenplay-pattern-todomvc项目。
https://stackoverflow.com/questions/41774796
复制相似问题