How to run a javascript function before starting any test case in Protactor?
实际上,我正在为一个有angular的应用程序编写一些测试用例,但第一页的加载时间太长,并且有一个用于指示的弹出框。所以我需要在浏览器的localStorage中存储一些值,以使该弹出框不可见。那么如何在运行任何测试用例之前运行任何javascript函数?
默认情况下,protractor正在与angular同步,这使其等待$ http或$ timeout,您可以使用以下方法检查此特定页面上的情况:调试protractor到angular同步问题的规范方法
或者您可以使用模拟模块注入行为
protractor.config.js
1 2 3 4 5 6 7 8 9 10 11 12 | onPrepare: function() { var doTheFuncyStuff= function() { angular .module('doTheFuncyStuff', []) .run([function(){ //do something here so the popup isn't displayed window.localStorage.setItem('my-var', 'my-val'); }]); }; browser.addMockModule('doTheFuncyStuff', doTheFuncyStuff); } |