这是我第一次尝试使用 Spectron 为 Electron 应用程序创建自动化测试。这可能是我对异步编程的生疏知识,但我不知道为什么下面的代码行为不端:
it ('should allow me to create an account', function() {
return app.client
.waitUntilWindowLoaded()
.waitForExist('//a[text()="Create Free Account"]')
.click('//a[text()="Create Free Account"]')
.waitForExist('//button[text()="Create Account"]')
.setValue('#Email', "test@test.com")
.setValue('#Password', "Password1!")
.click('//button[text()="Create Account"]')
.waitForExist('//p[contains(text(),"Almost done.")]')
});
测试似乎一直到第一次 click(),然后它应该等待 App 请求新页面,最终显示“创建帐户”按钮。但是,由于某种原因,应用程序本身似乎在这一点上被阻止了。我知道点击正在发生。当我手动尝试时,该应用程序运行正常。
标记