the*_*ner 5 javascript selenium unit-testing angularjs protractor
我试图让一个按钮上的残疾人attr它应该被"禁用",但我似乎没有得到这个价值.角度和量角器的新手!
当我检查页面时,这就是我为禁用的按钮获取的HTML被禁用,就像在页面上一样:
<button type="submit" class="button primary inverse" ng-disabled="!comment.$dirty && comment.$valid" disabled="disabled">Save</button>
Run Code Online (Sandbox Code Playgroud)
下面的量角器测试返回'Expected null to equal disabled'
var btnSave = element(by.css('.primary'));
expect(btnSave.isPresent()).toBeTruthy();
var attr = element(by.css('.primary')).getAttribute('disabled');
expect(attr).toEqual("disabled");
Run Code Online (Sandbox Code Playgroud)
当我尝试时,我得到预期''等于残疾.
expect(attr).toEqual("disabled");
Run Code Online (Sandbox Code Playgroud)
我出错的任何想法?
谢谢
getAttribute()量角器中的函数以promise的形式返回值.所以要么你等到它返回然后执行验证,要么你可以将函数传递给expectation它,从而解决了这个问题.disabledhtml属性是一个布尔属性,因此它返回的值是true或false.这是如何做 -
element(by.css('.primary')).getAttribute('disabled').then(function(attr){
expect(attr).toBe(true);
});
Run Code Online (Sandbox Code Playgroud)
要么
expect(element(by.css('.primary')).getAttribute('disabled')).toBe(true);
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你.