我正在基于selenium提供的代码在python中做一个测试套件,在检查这样的实际页面时我得到了奇怪的断言错误:
sel.click("link=Overview")
sel.wait_for_page_to_load("30000")
self.assertEqual("Naaya testing - Subtitlu testare", sel.get_title())
sel.click("link=Portal properties")
sel.wait_for_page_to_load("30000")
self.assertEqual("Naaya testing - Subtitlu testare", sel.get_title())
sel.click("link=Metadata")
sel.wait_for_page_to_load("15000")
这段代码中的奇怪是我在代码中第一次出现时得到断言错误,在我用第一次出现后改为:
title = sel.get_title()
self.failUnless(title == "Naaya testing - Subtitlu testare","nu sunt "
"pe pagina principala")
我摆脱了错误,但我仍然不明白为什么第二个断言没有失败但是第一个断言呢?
答案 0 :(得分:2)
在python中使用==
运算符命令可能会有所不同。试试"Your strng" == title
并查看结果。 assertEqual也可以检查类型,所以正确的代码是:
self.assertEqual("Naaya testing - Subtitlu testare", str(sel.get_title()))
或:
self.assertEqual(u"Naaya testing - Subtitlu testare", sel.get_title())
如果selenium使用unicode
类型。