selenium 提供了三种模式的断言:assert 、verify、waitfor
Assert 失败时,该测试将终止。
Verify 失败时,该测试将继续执行,并将错误记入日显示屏 。也就是说允许此单个 验证通过。确保应用程序在正确的页面上。
Waitfor 用于等待某些条件变为真。可用于 AJAX 应用程序的测试。
如果该条件为真,他们将立即成功执行。如果该条件不为真,则将失败并暂停测试。直到超过当前所设定的超时时间。 一般跟 setTimeout 时间一起用
断言常用的有:
assertLocation(判断当前是在正确的页面)、
assertTitle(检查当前页面的 title 是否正确)、
assertValue(检查 input 的值, checkbox 或 radio,有值为”on”无为”off”)、
assertSelected(检查 select 的下拉菜单中选中是否正确)、
assertSelectedOptions(检查下拉菜单中的选项的是否正确)、
assertText(检查指定元素的文本)、
assertTextPresent(检查在当前给用户显示的页面上是否有出现指定的文本)、
assertTextNotPresent(检查在当前给用户显示的页面上是否没有出现指定的文本)、
assertAttribute(检查当前指定元素的属性的值)、
assertTable(检查 table 里的某个 cell 中的值)、
assertEditable(检查指定的 input 是否可以编辑)、
assertNotEditable(检查指定的 input 是否不可以编辑)、
assertAlert(检查是否有产生带指定 message 的 alert 对话框)、
verifyTitle
验证预期的页面标题。
verifyTextPresent
验证预期的文本是否在页面上的某个位置。
verifyElementPresent
验证预期的 UI 元素,它的 HTML 标签的定义,是否在当前网页上。
verifyText
核实预期的文本和相应的 HTML 标签是否都存在于页面上。
verifyTable
验证表的预期内容。
waitForPageToLoad
暂停执行,直到预期的新的页面加载。
waitForElementPresent (等待检验某元素的存在。为真时,则执行。)
#verifyText 验证用户名
try:
self.assertEqual(u"小二账号", tt)
except AssertionError as e:
self.verificationErrors.append(str(e))
#assertText 断言用户名
self.assertEqual(u"小二账号", tt)
#assertTitle 断言页面 title
self.assertEqual(u"消息中心", driver.title)