python自動化測試常用斷言API


開發環境:appium Android python

摘要:最近進行自動化測試,經常使用斷言,在此總結一些unittest的TestCase類提供的常用assert方法。

具體:

方法 檢查 新的
assertEqual(a, b) == b  
assertNotEqual(a, b) != b  
assertTrue(x) bool(x) 是 True  
assertFalse(x) bool(x) 是 False  
assertIs(a, b) 是 b 3.1
assertIsNot(a, b) 是 不是 b 3.1
assertIsNone(x) 是  3.1
assertIsNotNone(x) 是 不是  3.1
assertIn(a, b) 在 b 3.1
assertNotIn(a, b) 不是 在 b 3.1
assertIsInstance(a, b) isinstance(a, b) 3.2
assertNotIsInstance(a, b) 不是 isinstance(a, b) 3.2

 

 

 

 

 

 

 

 

 

 

assert方法都接受一個msg參數,如果指定,則用作失敗時的錯誤消息(參見longMessage)。

1.assertEqual(first,second,msg=None)

  該方法是測試first和second是否相等。如果值不相等,測試將失敗。

  此外,first與second是完全相同的類型以及list,tuple,dict,set,frozenset或str或子類注冊addTypeEqualityFunc()將調用類型特定的相等函數,以生成更有用的默認錯誤消息。  

  在版本3.1中已更改:添加了類型特定的相等函數的自動調用。

  在版本3.2中更改: assertMultiLineEqual()添加為用於比較字符串的默認類型相等函數

2.assertNotEqual(first,second,msg=None)

  該方法是測試first與second不相等,如果值相等,測試將失敗。

3.assertTrue(expr,msg=None)和assertFalse(expr,msg=None)

  測試expr是true(或false)但當有更具體的方法可以使用時,應避免使用這種方法,例如,assertEqual(a,b)可判斷a與b是否相等時,應使用assertEqual()方法,而不是assertTrue(a==b)因為他們在出現故障時提供更好的錯誤信息。

4.assertIsNone(expr,msg=None)和assertIsNotNone(expr,msg=None)

  測試expr是不是無,這個是版本3.1的新功能。

5.assertIn(first,second,msg=None)和assertNotIn(first,second,msg=None

  測試first是否在second

6.assertIsInstance(obj,cls,msg=None)和assertNotIsInstance(obj,cls,msg=None)

  測試obj是不是cls的實例(它可以是類或類的元組,如isinstance() 支持。檢查具體類型使用assertIs(type(obj),cls))

  該方法是版本3.2中的新功能


免責聲明!

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



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