javascript – 量角器:非角度登录角度站点

在我到达要测试的站点之前,我必须首先访问登录(非角度)页面

var url = 'http://localhost:9999/login?usern=bar';
browser.driver.get(url);

虽然这是一个非角度页面,但是将?usern = bar传递给url,服务器给出的HTTP CODE为302,并重定向到页面/新用户.在新用户页面内,我必须先单击一个按钮才能开始测试

但无论我做什么,我总能得到

Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL.

我的流程出了问题,因为我可以看到新用户页面,但是没有点击该按钮(很久之后就会出现错误)

规范文件:

var Site = require('helper/site');

describe('Main', function {
    beforeAll(function () {
        return Site.login();
    });

    it('should show the main page', function () {
        epect(browser.getCurrentUrl()).toMatch(/\/main/);
    });
});

Site.js:

function login() {
    browser.driver.get('http://localhost:9999/login?usern=bar');

    browser.driver.wait(function () {
        return browser.driver.getCurrentUrl().then(function (url) {
            return /\/new-user/.test(url);
        });
    });

    element(by.css('.save')).click();
}

module.exports = {
    login: login
};

任何帮助,将不胜感激

最佳答案 您必须关闭同步:

describe('Main', function {
    beforeAll(function () {
        browser.ignoreSynchronization = true;
        return Site.login();
    });

    it('should show the main page', function () {
        browser.ignoreSynchronization = false;

        expect(browser.getCurrentUrl()).toMatch(/\/main/);
    });
});

但是,一旦你进入主页面,想想更好的地方可以关闭然后再打开.

点赞