如何为python / selenium中的特定元素断言文本?

有没有办法断言特定元素中没有文字?我正在尝试测试一个登录页面,当您输入无效的登录信息并想要测试一开始没有文本时,会弹出一条错误消息.

这是页面加载时首次显示的HTML元素:

<div class="message ng-binding”/>

然后在输入无效信息时更改为:

<div class="message ng-binding">Your email address or password is invalid.</div>

我试过这样做:

elem = browser.find_element_by_css_selector("div.message.ng-binding")
self.assertEqual(str(elem.text), None)

但是我会得到AssertionError”!=无.

我是否必须断言(str(elem.text),”)?

我已经读过在Selenium中有assertText函数并尝试用assertText替换assertEqual但是我会得到’Selenium_test’对象没有属性’assertText’.

最佳答案

self.assertNotEqual(str(elem.text), "Your email address or password is invalid.", "your assertion fail message-optional")
点赞