我尝试在量角器中执行以下场景:
由于某种原因,isSelected()
功能无法使用我的复选框,但我找到了一些解决方案。下面的代码正常工作:
expect(checkbox.getAttribute('aria-checked')).toEqual('false')
它会检查一些复选框属性,如果未选中则为“false”,如果选中则为“true”。 (但作为一个字符串)
现在的主要问题。如何编写'if / else'语句使其有效?
我尝试过类似的东西:
if (expect(checkbox.getAttribute('aria-checked')).toEqual('false')) {
checkbox.click();
}
但如果选中或不选中复选框,它总是会点击复选框。我也试过了:
if (checkbox.getAttribute('aria-checked').toEqual('false')) {
checkbox.click();
}
但是有一个错误,上面写着“这不是一个功能”。
有人可以帮我吗?
答案 0 :(得分:0)
您可以尝试制作一些辅助函数:
function setCheckBoxTo(locator, value){
var checkbox = element(locator);
checkbox.isChecked().then(function(selected){
if(selected !== value){
checkbox.click();
}
}
}
其中[value is true/false]