测试页面之间的AngularJS行为

Testing AngularJS behavior between pages

本文关键字:AngularJS 行为 之间 测试      更新时间:2023-09-26

我有一个Angular应用程序,它有两个页面:登录页面和登录页面。我想实现一个Protractor断言,测试有效页面登录何时启动,然后确认登录页面加载有效内容。

登录提示本身通过对端点进行JSON调用来检查有效用户,如果成功,则使用窗口重定向加载登录页。它在测试上下文之外工作,但当下面的断言用例运行时,它会在等待过程中停止,然后最终在没有断言的情况下结束。

//Attempt to login with a valid Username and Password
it('should attempt to login with valid credentials', function() {
    element(by.css('#login_username')).sendKeys('testusername');
    element(by.css('#login_password')).sendKeys('testpassword');
    element(by.css('.btn-default')).click();
    browser.driver.sleep(20000);
    //H1 on landing page
    expect(by.css('h1').html()).toEqual("Landing");
});

我不清楚在这种情况下,按钮表单提交是否足以在量角器最终加载下一页时暂停量角器,或者我是否错过了起草测试的一步。下一步该怎么办?

我不确定它是否适用

//Attempt to login with a valid Username and Password
it('should attempt to login with valid credentials', function() {
    element(by.css('#login_username')).sendKeys('testusername');
    element(by.css('#login_password')).sendKeys('testpassword');
    element(by.css('.btn-default')).click();
    //H1 on landing page
    expect(by.css('h1')).then(function (event) {
        toEqual("Landing");
    });
});