对象没有属性“assertEqual”

use*_*550 2 python selenium

当我尝试在代码中使用以下语句时,获取对象没有属性“assertEqual”:

self.assertEqual("IRELAND INSTITUTE OF PITTSBURGH", driver.find_element_by_id("cname").get_attribute("value"))
Run Code Online (Sandbox Code Playgroud)

当我在测试用例中使用时,效果很好。我知道将断言放入测试用例中是一个很好的做法。但我想了解为什么这段代码不能在页面中工作,而不是如果我们遵循页面对象模式

alx*_*wrd 5

assertEqual是属于TestCaseunittest 模块中的类的方法(python unittest 文档)。

它在您的测试代码中起作用的原因很可能是因为您的测试类继承自该类TestCase

class YourTestClass(unittest.TestCase):
    pass
Run Code Online (Sandbox Code Playgroud)

你可以只使用关键字assert

assert "IRELAND INSTITUTE OF PITTSBURGH" == driver.find_element_by_id("cname").get_attribute("value")
Run Code Online (Sandbox Code Playgroud)

如果断言失败,它将引发AssertionError