【发布时间】:2026-02-08 02:05:01
【问题描述】:
我有这样的 html DOM:
<div class="alert alert-danger">
<button class="close" aria-hidden="true" data-dismiss="alert" type="button">×</button>
Your username or password was incorrect.
</div>
我想获取Your username or password was incorrect. 文本。
如果我这样做:
$('.global-alerts div.alert-danger').getText()
然后我得到这个×。
有没有办法获取 div 元素中唯一的文本部分?
我设法做到了这样的事情:
getErrorMessageText() {
return browser.execute(function () {
const selector = '.global-alerts div.alert-danger';
// @ts-ignore
return $(selector).contents().not($(selector).children()).text().trim();
});
}
而且它有效。
但是有人有更好的主意吗?还是更像这里的 webdriverIO 方法?
【问题讨论】:
-
正在用新类将该行文本包装在一个 div 中,然后选择该 div 不是一个选项?
-
不,不是一个选项,因为我无法更改被测应用的源代码
标签: css-selectors webdriver-io