点击后量角器得到 url()

protractor get url after click()

我是量角器的新手..我需要你的帮助.. 我的代码是这样的..

describe('Protractor Demo Charts', function () {
           var url = 'https://angularjs.org/';


it('should get the value of attribute d', function () {
    browser.get(url);
    element(by.css('.btn-warning')).click().then(function(text){

        expect(browser.getCurrentUrl()).toContain('0BxgtL8yFJbacQmpCc1NMV3d5dnM');
        }

    );

});

});

我的问题是 browser.getCurrentUrl() 仍然 return 我是基础 url(我来自 'https://angularjs.org/' 的页面)

如何获得新的 Url(URL 点击之后)?

您应该等到页面加载完毕。 试试这个方法:

describe('Protractor Demo Charts', function () {
     var url = 'https://angularjs.org/';

     it('should get the value of attribute d', function () {
         browser.get(url);
         browser.sleep(2000);
         $('.btn-warning').click();
         expect(browser.getCurrentUrl()).toContain('0BxgtL8yFJbacQmpCc1NMV3d5dnM');
     });
});

来自doc

Protractor 将确保命令自动 运行 同步。例如,在下面的代码中,element(by.model(...)).click() 将在 browser2.$('.css').click() 之前 运行:

browser.get('http://www.angularjs.org');
browser2.get('http://localhost:1234');

browser.sleep(5000);
element(by.model(...)).click();
browser2.$('.css').click();