首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在量角器中获得提交按钮的下一页的url?

如何在量角器中获得提交按钮的下一页的url?
EN

Stack Overflow用户
提问于 2015-07-30 15:50:49
回答 3查看 1.3K关注 0票数 2

我能够运行测试代码,并且能够提交表单。我需要下一页的网址时,提交按钮是点击。我需要得到下一页的网址时,提交按钮被点击。但是我得到了第一页的curenturl。我的代码:

代码语言:javascript
复制
describe('Pmts app 5.0',function(){
var LoginPage = require("./LoginPO");
it('login test', function(){
LoginPage.setUserName('xyz@test.com');
LoginPage.setPassWord('test');
LoginPage.clickButton();
    expect(browser.getCurrentUrl()).toEqual('https://localhost:1234/#/timesheet');
});
});

单击提交按钮后,浏览器会立即关闭,并且不会等待下一个页面加载。一旦按钮被提交,它应该等待,直到下一页加载,我需要下一页的网址…

EN

回答 3

Stack Overflow用户

发布于 2015-07-30 16:03:16

可以这样说:

代码语言:javascript
复制
LoginPage.clickButton().then(function(){ expect(browser.getCurrentUrl()).toEqual('https://localhost:1234/#/timesheet');
})

或者你可以设置一个明确的硬睡眠:

代码语言:javascript
复制
browser.sleep(time in ms)

或者,您可以放置一个browser.wait()来等待下一页中出现的某些元素:

代码语言:javascript
复制
        browser.wait(function(){
           return elem.isPresent()
        },time in ms).then(function(){     
     expect(browser.getCurrentUrl())
.toEqual('https://localhost:1234/#/timesheet');
        })
票数 3
EN

Stack Overflow用户

发布于 2015-08-04 03:48:51

请避免使用browser.sleep(number),如果您的应用程序是基于Angular.js的,请使用browser.waitForAngular()。

使用硬编码的依赖关系从来都不是一个好主意。

我注意到,量角器加载整个页面所需的时间各不相同。因此,要么使用browser.waitForAngular(),要么在browser.sleep()中设置一个较大的数字

票数 1
EN

Stack Overflow用户

发布于 2015-07-30 22:22:59

试试这个:

代码语言:javascript
复制
describe('Pmts app 5.0',function(){
    ptor = protractor.getInstance();
    var LoginPage = require("./LoginPO");

    it('login test', function(){
        LoginPage.setUserName('xyz@test.com');
        LoginPage.setPassWord('test');
        LoginPage.clickButton();
        ptor.sleep(1000); 
        expect(browser.getCurrentUrl()).toEqual('https://localhost:1234/#/timesheet');
    });
});
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31718064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档