【问题标题】:Can I rewrite webdriver v4 test method chain to v5 (current spectron / electron testing)我可以将webdriver v4测试方法链重写为v5(当前spectron / electron测试)
【发布时间】:2020-09-06 03:18:23
【问题描述】:

我使用光谱/电子测试。 Spectron 更新更改为 webdriver v5。 我有用 v4 方法链编写的 UI 测试。 我可以将 webdriver v4 测试方法链重写为 webdriver v5(current spectron) 吗?

it("input basic test", function() {
    return this.app.client.waitForVisible('#query-area__query-input__input')
            .waitForEnabled('#query-area__query-input__input')
            .clearElement('#query-area__query-input__input')
            .setValue('#query-area__query-input__input', "Bonan matenon!")
            .getValue('#query-area__query-input__input')
            .then(function(text){assert(text === 'Bonan matenon!')})
})

https://github.com/MichinariNukazawa/lina_dicto/blob/master/lina_dicto/test/input_ui.js

我知道需要替换一些方法和元素 id 选择器。 查看我的 Spectron 问题网址: https://github.com/electron-userland/spectron/issues/663

【问题讨论】:

    标签: javascript electron mocha.js spectron


    【解决方案1】:

    旧 Spectron(WebdriverIO v4 方法链)

    
        it("input basic test", function() {
            return this.app.client.waitForVisible('#query-area__query-input__input')
                    .waitForEnabled('#query-area__query-input__input')
                    .clearElement('#query-area__query-input__input')
                    .setValue('#query-area__query-input__input', "Bonan matenon!")
                    .getValue('#query-area__query-input__input')
                    .then(function(text){assert(text === 'Bonan matenon!')})
        })
    
    

    新的spectron(WebderiverIO v5 async/await)

    
        it("input basic test", async function() {
    
            const inputElement = await this.app.client.$('#query-area__query-input__input');
            let text;
            text = await inputElement.getValue();
            console.log(`before:'${text}'`);
            await inputElement.waitForEnabled()
            await inputElement.clearValue()
            await inputElement.setValue("Bonan matenon!")
            text = await inputElement.getValue();
            console.log(`after:'${text}'`);
            assert(text === 'Bonan matenon!')
            // assert(text === '') // test to test (falure)
        })
    
    

    【讨论】:

      猜你喜欢
      • 2018-01-26
      • 1970-01-01
      • 1970-01-01
      • 2020-05-24
      • 1970-01-01
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多