Angularjs 强制按顺序执行量角器脚本语句
在我的量角器脚本中,我正在调用Angularjs 强制按顺序执行量角器脚本语句,angularjs,protractor,Angularjs,Protractor,在我的量角器脚本中,我正在调用browser.ignoreSynchronization=false在第二条语句之后(在login语句之后),但它是在login语句之前应用的,因为语句是按1>3>2的顺序执行的。下面是我的代码 browser.ignoreSynchronization= true;//1 loginPage.login(loginData.free.username,loginData.free.password);//2 browser.ignoreSync
browser.ignoreSynchronization=false代码>在第二条语句之后(在login语句之后),但它是在login语句之前应用的,因为语句是按1>3>2的顺序执行的。下面是我的代码
browser.ignoreSynchronization= true;//1
loginPage.login(loginData.free.username,loginData.free.password);//2
browser.ignoreSynchronization=false;//3
但是,如果我像下面那样使用量角器.promise.controlFlow()
,它就可以正常工作。但是如何强制量角器脚本按顺序执行而不使用dragrator.promise.controlFlow()
放置“browser.ignoreSynchronization=true;”如果您使用jasmine,则使用beforeAll()方法中的语句。应该在调用browser.get()之前声明它,并声明“browser.ignoreSynchronization=false;”登录操作后的语句
代码片段:
beforeAll(function(){
browser.ignoreSynchronization= true;
browser.get('url');
});
it('test logic',function(){
loginPage.login(loginData.free.username,loginData.free.password);
browser.ignoreSynchronization=false;
});
放置“browser.ignoreSynchronization=true;”如果您使用jasmine,则使用beforeAll()方法中的语句。应该在调用browser.get()之前声明它,并声明“browser.ignoreSynchronization=false;”登录操作后的语句
代码片段:
beforeAll(function(){
browser.ignoreSynchronization= true;
browser.get('url');
});
it('test logic',function(){
loginPage.login(loginData.free.username,loginData.free.password);
browser.ignoreSynchronization=false;
});
变量流=量角器.promise.controlFlow();这是否需要使用?@SureshSalloju,如果我不使用var flow=pregrator.promise.controlFlow()代码>我正在获取“window.angular未定义”。错误您可以将browser.ignoreSynchronization=true;如果您正在使用jasmine,请在beforeAll()方法中使用此语句。应在调用browser.get()之前声明此语句 method@SureshSalloju是的,我认为你是对的,你应该把这句话作为答案。谢谢@alecxe,我会做itvar-flow=pregrator.promise.controlFlow();这有必要使用吗?@SureshSalloju如果我不使用var-flow=pregrator.promise.controlFlow();
我得到了“window.angular未定义。'error您可以将browser.ignoreSynchronization=true;如果您正在使用jasmine,则在beforeAll()方法中使用此语句。应该在调用browser.get()之前声明它method@SureshSalloju是的,我认为你是对的,你应该把这句话作为回答。谢谢@alecxe,我会的