我目前正在进行测试以验证是否选中了复选框,如果发现复选框状态为false,请勾选它。如果未选中,我已经能够标记复选框。问题是,当我检查已经勾选的复选框的状态时,它总是返回' FALSE'。
任何人都可以帮我验证我的代码吗?谢谢!
这是我的代码:
checkbox.js
Given(/^the sysadmin activates a system product/, () => {
client.element('class name', 'checkmark', function(response) {
client.assert.ok(response.value.ELEMENT, 'Checkbox response OK');
client.elementIdSelected(response.value.ELEMENT, function(result){
console.log("Status: ", result);
console.log("Status: ", result.value);
if (result.value == false) {
console.log("Result value is ", result.value);
SYSPRODUCTSOBJ.click('@sysProductBlood')
.waitForElementVisible('@sysProductSaveBtn', 6000)
.click('@sysProductSaveBtn');
}
client.verify.ok(result.value, 'Checkbox selected');
});
});
return client.pause(2000);
});
elementModel.js
module.exports = {
elements: {
sysProductBlood: {
selector: ".//*[@data-v-594c377e]//*[@for='1']//*[@class='checkmark']",
locateStrategy: 'xpath'
},
sysProductSaveBtn: {
selector: ".//*[@class='system-product']//*[@class='btn btn-default']",
locateStrategy: 'xpath'
},
}
HTML
<label data-v-594c377e="" for="1"><input data-v-594c377e="" type="checkbox" id="1" value="BloodControl"><div data-v-594c377e="" class="checkmark"></div>BloodControl</label>
答案 0 :(得分:0)
这是事情变得奇怪不一致的事情之一。我之前也被这个人咬过了。
复选框使用checked
属性,而不是value