Mic*_* K. 1 jasmine angularjs protractor
我正在用Jasmine和编写一个AngularJS-app的e2e-tests protractor.我onPrepare对protractor.conf.js中的-function 有问题.如果我在其中执行以下操作beforeAll正常:
browser.get('/login');
element(by.id('username')).sendKeys('John');
Run Code Online (Sandbox Code Playgroud)
但如果我这样做 onPrepare
browser.driver.get('https://localhost:9000/login');
browser.driver.findElement(by.id('username')).sendKeys('John');
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
NoSuchElementError: no such element: Unable to locate element: {"method":"css selector","selector":"*[id="username"]"}
Run Code Online (Sandbox Code Playgroud)
任何提示?
PS:在量角器文档中,有一个链接到我用作模式的这个例子:https://github.com/angular/protractor/blob/master/spec/withLoginConf.js
为什么使用" browser.driver "格式?我们应该只针对非Angular应用程序而不是Angular应用程序遵循该格式.刚刚尝试相同的代码,你在试图beforeAll()在onPrepare()为好.它会工作.
onPrepare: function () {
browser.get('https://localhost:9000/login');
element(by.id('username')).sendKeys('John');
},
Run Code Online (Sandbox Code Playgroud)
即使它不起作用,也要实现browser.wait()以加载完整的页面.