我正在使用 Mocha 和 WebDriver 测试我的网络应用程序。我正在为有关 Mocha 测试顺序和驱动程序持久状态的最佳实践而苦苦挣扎。
我想将测试分开到不同的文件,例如
测试\ index.js 硒\ 登录.js 搜索.js
所以在执行方面,login.js 必须是第一个,因为它登录到应用程序并获得身份验证。只有在 search.js 之后才有可能做到。但是怎么做?在 login.js 我现在有这个:
webdriverjs = require('webdriverjs');
describe 'UI/Selenium', ->
client = {}
before ->
client = webdriverjs.remote
desiredCapabilities:
browserName: 'chrome'
client.init()
client.windowHandleSize({width: 1920, height: 1080})
it 'should let us login', (done) ->
client.url('http://127.0.0.1:1337/login')
.setValue('#username', 'username')
.setValue('#password', 'password')
.buttonClick('button[type="submit"]')
.waitFor '#search_results_user', 5000, (err) -> throw err if err
.call done
如何将客户端的状态持久化到其他测试而不必每次都重新初始化?以及如何使用 Mocha 定义文件的执行顺序?