微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Serenity BDD 剧本验证网页上的多个文本元素

如何解决Serenity BDD 剧本验证网页上的多个文本元素

如何使用 Serenity BDD 验证 bdd 中的多个文本元素和链接

我正在使用下面的代码,但使用这种方法我必须为网页上的每个元素编写相同的代码副本,这很耗时,是否有其他方法来参数化和验证值

private static final String APIBUILDER = "app-data-api-card  .card-header";

    @Subject("the displayed notebook")
    public static class APIBUILDER implements Question<String> {
        @Override

        public String answeredBy(Actor actor) {
            return browseTheWeb.as(actor).findBy(APIBUILDER).getText();
        }


        public static Question<String> value() { return new APIBUILDER(); }

解决方法

您可以使用确保库

static By FIRST_NAME_FIELD = By.id("first_name");
static By LAST_NAME_FIELD = By.id("last_name");

actor.attemptsTo(
    Ensure.that(FIRST_NAME_FIELD).text().isEqualTo("Foo")
    Ensure.that(LAST_NAME_FIELD).text().isEqualTo("Bar")
);

如果你想要软断言,你也可以这样做:

    Ensure.enableSoftAssertions();
    actor.attemptsTo(
        Ensure.that(FIRST_NAME_FIELD).text().isEqualTo("Foo")
        Ensure.that(LAST_NAME_FIELD).text().isEqualTo("Bar")
    );
    Ensure.reportSoftAssertions();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。