量角器 if else with expect(condition)
Protractor if else with expect(condition)
在我的脚本中,我需要包含 if-else 条件来验证 expected=actual.If 它们是否不匹配它应该转到 else 块并打印 "StepFailed"。但是,总是它执行 if 块并且 o/p 是 "step passed" 尽管预期≠Actual.Below 是我的代码:
var expected = ['Select training program using Index', 'Selenium','A','UFT/QTP','Loadrunner'];
var els = element.all(by.xpath("//select[@id='dropdown1']/option"));
for (var i = 0; i < expected.length; ++i) {
if(expect(els.get(i).getText()).to.eventually.equals(expected[i])){
console.log('' +'Steppassed'+ '');
}else{
console.log('' +'Stepfailed'+ '');
}
});
下拉值是:'Select training program using Index'、'Selenium'、
'Appium'、'UFT/QTP'、'Loadrunner'。如果你观察到我给出的是 'A' 而不是“Appium”,因此该步骤应该会失败,但并没有发生。
请告诉我这怎么可能是你resolved.Thank。
首先,如果您正在检查条件值,则无需断言
你可以这样做 -
var expected = ['Select training program using Index', 'Selenium',
'A','UFT/QTP','Loadrunner'];
var els = element.all(by.xpath("//select[@id='dropdown1']/option"));
for (var i = 0; i < expected.length; ++i) {
els.get(i).getText().then((text) => {
if(text === expected[i] ) {
console.log('' +'Steppassed'+ '');
} else {
console.log('' +'Stepfailed'+ '');
}
});
}
您还可以使用 async/await 语法来更好地处理和提高承诺的可读性!
在我的脚本中,我需要包含 if-else 条件来验证 expected=actual.If 它们是否不匹配它应该转到 else 块并打印 "StepFailed"。但是,总是它执行 if 块并且 o/p 是 "step passed" 尽管预期≠Actual.Below 是我的代码:
var expected = ['Select training program using Index', 'Selenium','A','UFT/QTP','Loadrunner'];
var els = element.all(by.xpath("//select[@id='dropdown1']/option"));
for (var i = 0; i < expected.length; ++i) {
if(expect(els.get(i).getText()).to.eventually.equals(expected[i])){
console.log('' +'Steppassed'+ '');
}else{
console.log('' +'Stepfailed'+ '');
}
});
下拉值是:'Select training program using Index'、'Selenium'、 'Appium'、'UFT/QTP'、'Loadrunner'。如果你观察到我给出的是 'A' 而不是“Appium”,因此该步骤应该会失败,但并没有发生。
请告诉我这怎么可能是你resolved.Thank。
首先,如果您正在检查条件值,则无需断言
你可以这样做 -
var expected = ['Select training program using Index', 'Selenium',
'A','UFT/QTP','Loadrunner'];
var els = element.all(by.xpath("//select[@id='dropdown1']/option"));
for (var i = 0; i < expected.length; ++i) {
els.get(i).getText().then((text) => {
if(text === expected[i] ) {
console.log('' +'Steppassed'+ '');
} else {
console.log('' +'Stepfailed'+ '');
}
});
}
您还可以使用 async/await 语法来更好地处理和提高承诺的可读性!