selenium三種斷言以及異常類型


elenium提供了三種模式的斷言:assert 、verify、waitfor

1)Assert(斷言) 失敗時,該測試將終止。

2)Verify(驗證) 失敗時,該測試將繼續執行,並將錯誤記入日志顯示屏 

3)Waitfor(等待) 用於等待某些條件變為真

如果該條件為真,他們將立即成功執行。如果該條件不為真,則將失敗並暫停測試。直到超過當前所設定的超過時間。一般跟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 (等待檢驗某元素的存在。為真時,則執行)

 

異常類型

  • AssertionError:assert語句失敗
  • AttributeError:試圖訪問一個對象沒有的屬性
  • IOError:輸入輸出異常,基本是無法打開文件
  • ImportError:無法引入模塊或者包,基本是路徑問題
  • IndentationError:語法錯誤,代碼沒有正確的對齊
  • IndexError:下標索引超出序列邊界
  • KeyError:試圖訪問字典里不存在的鍵
  • KeyboadrInterrupt:Ctrl+c被按下
  • NameError:使用一個還未賦值對象的變量
  • SyntaxError:python代碼邏輯語法錯誤,不能執行
  • TypeError:傳入的對象類型與要求不符
  • UnboundLocalError:試圖訪問一個還未設置的全局變量,基本上是由於另有一個同名的全局變量,導致你以為在訪問
  • ValueError:傳入一個不被期望的值,即使類型正確

 

UnitTest框架中的斷言

(在unittest單元測試框架中,TestCase類提供了一些方法來檢查並報告故障)

 

 

TestNG框架中的常用的斷言

    • assertTrue:判斷是否為True。
    • assertFalse:判斷是否為false。
    • assertSame:判斷引用地址是否相同。
    • assertNotSame:判斷引用地址是否不相同。
    • assertNull:判斷是否為null。
    • assertNotNull:判斷是否不為null。
    • assertEquals:判斷是否相等,Object類型的對象需要實現haseCode及equals方法。
    • assertNotEquals:判斷是否不相等。
    • assertEqualsNoOrder:判斷忽略順序是否相等。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM