gpt4 book ai didi

angularjs - Protractor 检查元素是否有效

转载 作者:行者123 更新时间:2023-12-01 23:45:46 25 4
gpt4 key购买 nike

我想知道是否有更简单的方法来使用 Protractor 检查输入字段是否有效。我写了一个如下所示的辅助函数:

isValid(css:string) {
var deferred = protractor.promise.defer();

expect(element(by.css(css)).isPresent()).toBe(true);

element(by.css(css)).getAttribute('class').then(function (attributes) {
var matches:string[] = attributes.match('ng-invalid');

deferred.fulfill(matches === null || matches.length === 0);
});

return deferred.promise;
}

效果很好,但它似乎不是您使用 Protractor 的方式。好像太复杂了……

你们有没有更简单的方法?有点像

expect(element(by.css(css)).isValid()).toBeTruthy

最佳答案

如果您的 Angular 代码具有表单验证逻辑并正确更新ng-valid/ng-invalid,那么您可以这样做

expect(hasClass(element(by.name('your-element')), 'ng-invalid')).toBe(true);
expect(hasClass(element(by.name('your-element')), 'ng-dirty')).toBe(true);

如果你想将 your-element 作为参数传递。

关于angularjs - Protractor 检查元素是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29280002/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com