【问题标题】:Multiple THEN statements in intern functional test实习生功能测试中的多个 THEN 语句
【发布时间】:2015-11-24 01:03:53
【问题描述】:

我有一个测试可以执行 something 并测试 x 是否可见 -

'WHEN something THEN x is visible': function () {
        var myClass= new MyClass(this.remote);
        return myClass
            doSomething()
            .findById('x')
            .isDisplayed()
            .then(function (isDisplayed) {
                assert.isTrue(isDisplayed, 'X should be visible')
            });
    }

我现在想断言y 是隐藏的,即WHEN something THEN x is visible AND y is hidden

我如何在实习生中写这个?我可以为此编写一个单独的测试,但加载应用程序的成本非常高,我想将尽可能多的断言组合到一个测试中,同时尽量保持测试的原子性。

【问题讨论】:

    标签: javascript intern leadfoot


    【解决方案1】:

    如果您从 .then() 处理程序返回另一个承诺,则承诺的解析将被链接,并且您的异步测试应该等待整个链得到解决(制作下面的代码,只是为了给出一个想法) :

    .then(function (isDisplayed) {
        assert.isTrue(isDisplayed, 'X should be visible');
    
        return myClass
            .doSomeOtherThing()
            .findById('y')
            .isHidden()
            .then(function (isHidden) {
                assert.isTrue(isHiddem, 'Y should be hidden');
            });
    });
    

    【讨论】:

    • 我提供的是伪代码,因为我不知道 myClass 是如何实现的。请根据实际界面是什么来调整答案...
    猜你喜欢
    • 2014-05-21
    • 2015-12-30
    • 2016-02-11
    • 2015-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-18
    相关资源
    最近更新 更多