在源量html代码中找到量角器中无效登录案例的元素

时间:2016-02-23 18:19:03

标签: angularjs automation protractor angularjs-e2e e2e-testing

我试图写一个简单的"登录失败"在量角器中测试。问题是,我无法指出(不知道如何)源代码中的特定字符串。

我尝试了各种各样的事情:cssContainingText,相等,获取文本等等(也许它没问题,但我做错了)。

测试:

describe('login to POC', function() {


  it('should login to POC', function() {
    browser.get('http://emeaherz-swaqal:8080/web-client/login.html#/login');

    element(by.model('echos_username')).sendKeys('super1');

    element(by.model('echos_password')).sendKeys('super');

    element(by.id('loginButton')).click();


    expect(by.id('action-messages')).getText('The following error(s) occurred:').isPresent()).toBe(true);


  });

}); 

请查看源代码。

我真的需要这个建议!

html source

我得到的错误是:

@alecxe

1)登录POC应该登录POC    信息:      NoSuchElementError:找不到使用locator找到的元素:By.cssSelector(" .action-messages")    堆栈跟踪:      NoSuchElementError:找不到使用locator找到的元素:By.cssSelector(" .action-messages") ====异步任务==== 异步测试功能:it() 错误     在[object Object]。 (/localfs/Poc/qapoc1/ECHOS-V2-POC/tests/fail_login.js:16:18) 错误     在[object Object]。 (/localfs/Poc/qapoc1/ECHOS-V2-POC/tests/fail_login.js:6:3)     在对象。 (/localfs/Poc/qapoc1/ECHOS-V2-POC/tests/fail_login.js:1:63)

在4.942秒完成 1次测试,1次断言,1次失败

1 个答案:

答案 0 :(得分:0)

您错过了element电话,我认为您可以期待错误消息的文字。替换:

expect(by.id('action-messages')).getText('The following error(s) occurred:').isPresent()).toBe(true);

使用:

expect($('#action-messages ul li').getText()).toEqual("Sorry, your username ...");