WebdriverIO选择器中如何实现OR逻辑匹配enumVal1或enumVal2元素
问题原因
你原来的写法不生效是因为 WebdriverIO 中*=文本匹配是框架自定义的扩展选择器,不支持原生CSS选择器的逗号分隔OR逻辑。
简单实现方案
方案1:直接用或逻辑判断(最简洁,适合匹配值少的场景)
const section = $('#my-section'); const isExist = section.$('p*=enumVal1').isExisting() || section.$('p*=enumVal2').isExisting();
方案2:批量匹配(适合有多个要匹配的枚举值的场景)
// 要匹配的文本列表可自行扩展 const matchTextList = ['enumVal1', 'enumVal2'] const isExist = $('#my-section').$$('p').some(pEl => { const text = pEl.getText() return matchTextList.some(item => text.includes(item)) })
内容的提问来源于stack exchange,提问作者EDJ
相关产品推荐
相关产品推荐

