我对 Protractor 和 angularJS 相当陌生,所以请帮助我。当选择 dayReport
元素时,会设置 class='active'
属性,但当未选择该元素时,该属性将被完全删除。
我想确保当选择另一个元素时,dayReport
没有 class='active'
属性,尽管该元素本身仍然存在。
我尝试了这个: expect(dayReport.getAttribute('class').isPresent()).toBe(false);
和其他一些想法,但我似乎没有成功工作。有什么想法吗?
最佳答案
对于正在阅读本文并需要明确答案的人来说,@TomNijs 的响应非常有帮助,但应该创建 hasClass
函数才能使其正常工作。因此,定义 dayReport
元素后的整段代码现在如下所示:
var hasClass = function (element, cls)
{
return element.getAttribute('class').then(function (classes)
{
return classes.split(' ').indexOf(cls) !== -1;
});
};
expect(hasClass(dayReport, 'active')).toBe(false);
关于angularjs - 检查元素属性是否存在 - Protractor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29842656/