{eval=Array;=+count(Array);}
具體得視情況而定。
如果接口進行的是讀操作,是不需要校驗數(shù)據(jù)庫的。
如果接口進行的是寫操作,嚴謹?shù)恼f是需要的,并且涉及的字段均需要校驗。
接口進行讀數(shù)據(jù)庫操作,如GET方式,即查詢,驗證期望響應(yīng)內(nèi)容與實際響應(yīng)內(nèi)容,即驗證了數(shù)據(jù)入庫-數(shù)據(jù)查詢流程,因此不需要校驗數(shù)據(jù)庫。當然,每次執(zhí)行自動化是需要進行環(huán)境初始化,每次運行自動化用例前插入自動化測試數(shù)據(jù),運行結(jié)束后清空自動化數(shù)據(jù)。
接口進行寫數(shù)據(jù)庫操作,如POST或DELETE方式,即寫入/刪除,一般除了驗證期望響應(yīng)結(jié)果與實際響應(yīng)結(jié)果外,還需額外驗證數(shù)據(jù)庫是否真的進行了相關(guān)操作。因為接口返回結(jié)果并不能真實反映數(shù)據(jù)是否被寫入或刪除。
一般使用Sql驗證,字段較多時,建議封裝個方法,實現(xiàn)根據(jù)請求體拼接Sql功能,如下:
Select count(1) from tablename where field1 = value1 and field2 = value 2……
然后再封裝數(shù)據(jù)庫查詢方法,驗證count數(shù)量是否等于預(yù)期即可。
若對您有所幫助,歡迎大家評論、留言。
接口自動化測試,一般設(shè)計接口各種場景用例,校驗返回值是否符合預(yù)期;接口測試,會去做字段缺失、為空、長度、字段類型等校驗測試,接口測試更多關(guān)注了入?yún)⒊鰠?,其實也就間接測試了數(shù)據(jù)庫表字段。
所以說,接口自動化不需要特意去關(guān)注數(shù)據(jù)庫,Json數(shù)據(jù)一般來說通過XPath去取值校驗,字段校驗方式有等于、大于、小于、包含,還有字段長度類型及響應(yīng)code等校驗。另外需要和預(yù)期接口響應(yīng)數(shù)據(jù)做個對比,如果字段key不同或者數(shù)量不同,標記失敗,字段值不同也標記出來,不一定是失敗
0
回答1
回答2
回答0
回答0
回答0
回答10
回答0
回答8
回答0
回答