无法使用webdriverio在Android设备上运行完整的测试套件(个别测试很好)

时间:2018-01-12 15:21:48

标签: android appium webdriver-io appium-android

我正在尝试针对本地连接的Android手机运行我的WebdriverIO测试。使用--spec /folder_with_tests/test.js命令单独运行测试每次都可以正常运行。但是,如果我不使用--spec并尝试运行整个套件,我就无法正常连接到手机。

15个测试中有1个会随机通过。其余的产生如下错误:

ERROR: ESOCKETTIMEDOUT

ERROR: A session is either terminated or not started

ERROR: An unknown server-side error occurred while processing the command. Original error: Cannot read property 'shutdown' of null

此外,奇怪的事情就像相机打开和关闭一样。我尝试过不同的手机,每次都会发生同样的事情。

还有其他人有这个问题吗?或者知道解决方案?

2 个答案:

答案 0 :(得分:0)

查看有关organising suite in wdio的官方文章:

要进行分组测试,您需要:

success(objects)

然后你可以运行套件:

// wdio.conf.js
exports.config = {
    // define all tests
    specs: ['./test/specs/**/*.spec.js'],
    // ...
    // define specific suites
    suites: {
        login: [
            './test/specs/login.success.spec.js',
            './test/specs/login.failure.spec.js'
        ],
        otherFeature: [
        // ...
        ]
    },
    // ...
}

答案 1 :(得分:0)

事实证明,我的团队中的一位开发人员(后来离开)在项目的根目录中推送了一些奇怪的文件:

failed fibers@2.0.0 mocha_webdriverio_poc@0.0.1 node wdio

所有这些都是空白的,除了Android测试之外没有其他任何影响,即便如此,只有在一起运行时才会影响。不确定这些是否已经自动生成,但他可能只使用了git add -A,然后提交了&推动一切。

我删除了所有文件,一切正常。