Angular 量角器:失败:等待异步角度任务在11秒后完成时超时
我得到以下错误: 失败:等待异步角度任务完成时超时 11秒后。这可能是因为当前页面不是 角度应用 我见过类似的问题,但似乎没有一个好的解决办法 在Angular 4上工作 我的设置是:Angular 量角器:失败:等待异步角度任务在11秒后完成时超时,angular,protractor,e2e-testing,angular-e2e,Angular,Protractor,E2e Testing,Angular E2e,我得到以下错误: 失败:等待异步角度任务完成时超时 11秒后。这可能是因为当前页面不是 角度应用 我见过类似的问题,但似乎没有一个好的解决办法 在Angular 4上工作 我的设置是: 1) 发射前: 我正在使用webdrive和chromedriver获取令牌进行身份验证 beforeLaunch(){ const webdriver = require('selenium-webdriver'); const chrome = require('selenium-webdr
1) 发射前: 我正在使用webdrive和chromedriver获取令牌进行身份验证
beforeLaunch(){
const webdriver = require('selenium-webdriver');
const chrome = require('selenium-webdriver/chrome');
const path = require('chromedriver').path;
// do stuff like get token save it in variable
driver.quit();
}
2) 准备
browser.params.tokens=启动前的令牌
(三)
第三步是给出错误
PS:我已经尝试了多种选项,如ignoreSync、waitforangularenabled、sleep nothing worked,有人能指出我做错了什么吗
以下是应用程序的特定结构可能导致的问题。因为默认情况下,量角器将等待角度应用程序,直到角度进入所谓的“平静模式” 在执行任何操作之前,量角器将等待,直到Angular应用程序中没有挂起的异步任务。这意味着所有超时和http请求都已完成。-这是“平静模式” 很多人都会遇到这个问题,你可以看到很多关于StackOverFlow的问题,很久以前我也问过这个问题,然后我们和我的团队一起解决了这个问题 首先,阅读它以了解一个基础: 轮到我了,我会给你推荐两个选项,你需要从中选择一个
waitForAngularEnabled(假)设置为waitForAngularEnabled(假)代码>
在一些操作(您将在测试时定义)之后,通过将同一行代码放在布尔值为true的位置返回它
waitForAngularEnabled(true)
为什么在beforeLaunch中使用
driver.quit()
?在on中,在我使用前面提到的lib登录到headless chrome之前,所以一旦我的工作完成,获取令牌,我就关闭它。所以你看到浏览器开始启动并打开页面了吗?是的,只有当它尝试运行“it”时,一切都会按预期工作,它会失败。假设行browser.get(“/home?”+browser.params.token)
以分号结尾?
it('should authenticate',() => {
browser.get('/home?'+browser.params.token)
expect(browser.getCurrentUrl()).toContain('home');
})