【发布时间】:2016-08-29 04:14:35
【问题描述】:
我正在尝试在 facebook 中自动化 Angular 应用程序。我能够成功登录到 facebook,但是每当我尝试导航到 iframe 中的 angular 页面时,它就会不断将我踢出此错误消息“Error while waiting Protractor to sync with the page:”window.角度未定义。这可能是因为这是一个非角度页面,也可能是因为您的测试涉及客户端导航,这可能会干扰 Protractor 的引导。"
规格
it('测试', function () {
browser.driver.ignoreSynchronization = true;
browser.driver.get(URL); //navigating to my facebook page
browser.driver.sleep(500);
//Login to facebook
browser.driver.findElement(by.id('email')).sendKeys(email);
browser.driver.findElement(by.id('pass')).sendKeys(password);
browser.driver.findElement(by.id('login')).click();
browser.driver.sleep(500);
//navigating to angular page withtin iframe
browser.driver.switchTo().frame(0);
browser.waitForAngular();
element(by.model('name')).click();
});
配置
exports.config = { seleniumAddress: 'http://127.0.0.1:4444/wd/hub', 能力:{ “浏览器名称”:“铬”,
},
specs: ['test'],
framework: 'jasmine2',
jasmineNodeOpts: {
onComplete: null,
isVerbose: false,
showColors: true,
includeStackTrace: true,
defaultTimeoutInterval: 5000
}
};
量角器版本 - 3.3.0 npm - 2.14.12 节点 - 4.2.4 茉莉花 - 2
日志
10:33:46.248 信息 - 正在执行:[切换到帧:0]) 10:33:46.292 信息 - 完成:[切换到帧:0] 10:33:46.300 信息 - 执行:[执行异步脚本:尝试{返回(函数(rootSelector,回调){ var el = document.querySelector(rootSelector);
试试{ 如果(window.getAngularTestability){ window.getAngularTestability(el).whenStable(callback); 返回; } 如果(!window.angular){ throw new Error('window.angular 未定义。这可能是 ' + '因为这是一个非角页面或因为你的测试涉及' + '客户端导航,会干扰量角器的' + '引导。详见http://git.io/v4gXM'); } 如果(angular.getTestability){ angular.getTestability(el).whenStable(callback); } 别的 { if (!angular.element(el).injector()) { throw new Error('根元素 (' + rootSelector + ') 没有注入器。' + ' 这可能意味着它不在 ng-app 内。'); } angular.element(el).injector().get('$browser')。 notifyWhenNoOutstandingRequests(回调); } } 捕捉(错误){ 回调(错误消息); } }).apply(this, arguments); }
HTML
我们的 html 代码中确实有 ng-app 和 iframe
<iframe id=" " class=" " frameborder="" src=" " style="" name="">
<!DOCTYPE html>
<html class=" " lang="" ng-app="appname" xmlns=" ">
<head>
<body class=" ">
</html>
</iframe>
任何帮助将不胜感激
【问题讨论】:
标签: protractor