一、數據驅動:
第一次遇到這個名字覺得很高大上,等了解自動化后發現這4個字分解一下,就很好理解,拿個登錄自動化腳本舉例子(登錄接口存在用戶名和密碼字段)
我們驗證一個登錄功能,需要驗證常規和異常情況
'''用戶名、密碼為空登錄'''
'''用戶名正確,密碼為空'''
'''用戶名為空,密碼正確'''
'''用戶名密碼正確 '''
(1)、驅動:上面4種情況,我們只要在請求的body信息里面把用戶名和密碼對應的值做參數化,然后把這個方法進行封裝(下面的user_login就是一個封裝好的方法),再把4種業務的數據寫入,就實現了數據驅動,這里的驅動其實也就是user_login這個方法,其他方法調用這個方法就可以實現一個測試點
class loginTest(unittest.TestCase): def setUp(self): # 封裝用戶登錄 def user_login(self, username, password): '''編寫你的接口腳本''' def test_login1(self): '''用戶名、密碼為空登錄''' self.user_login(null, null) def test_login2(self): '''用戶名正確,密碼為空''' self.user_login(username, null) def test_login3(self): '''用戶名為空,密碼正確''' self.user_login(null, password) def test_login4(self): '''用戶名密碼正確 ''' self.user_login(username, password) if __name__ == '__main__': unittest.main()
(2)、數據怎么來--如果你是一個領導者,手底下人員可能沒有代碼基礎怎么辦,我們通過定義規則,別人不會代碼,只要手動輸入數據就能執行自動化(excel,txt,csv都可以),如果一個人工作,個人覺得直接代碼里加個字典也很方便,搞excel這些還是很麻煩的
二、關鍵字驅動:(比起數據驅動,關鍵字驅動更加清晰,易於多人合作)
關鍵字驅動:數據也封裝了,封裝更完全--假設上面登錄四種情況用一個字典概括下寫在代碼里,測試人員只要在excel里面輸入正確的用戶名和正確的密碼,這四個情況就會執行,這樣是不是方便很多?
關鍵字驅動本質:只要輸入具體的東西,就能得到你想要的值,如何得到值的邏輯全部都在代碼里寫好了
