前情介紹:
在做自動化測試的時候有時候需要到數(shù)據(jù)庫中去驗證數(shù)據(jù)的正確性。比如此實例中我們經(jīng)常用到的smeoa中的mysql數(shù)據(jù)庫
練習環(huán)境配置
實例1(UI自動化-百度搜索)
實例2(有效登錄)
實例3(無效登錄)
實例4 (Appium)
Appium Error總結
robotframework Error總結
測試需求:
在公告管理的模塊中新加了一條任務,需要檢查是否新增成功耕漱,頁面上的返回值比較難以捕獲鹅搪。
13.png
測試設計:
通過數(shù)據(jù)庫來驗證系統(tǒng)數(shù)據(jù)庫中的smeoa_task表中是否新增一條數(shù)據(jù)觉既。
測試實現(xiàn):
- 導入DatabaseLibrary庫(默認是沒有安裝的昂羡,可以自行安裝:pip install robotframework_databaselibrary)
- 建立數(shù)據(jù)庫的鏈接待笑,使用到DatabaseLibrary庫中的關鍵字:Connect To Database Using Custom Params(用定制的信息來鏈接數(shù)據(jù)庫)
3.可以執(zhí)行各種SQL語句:
比如查詢整張表的 Execute Sql String
查詢單獨的字段的
比如查詢的語句為:select name from smeoa_task where task_no = '2017-0001' - 判斷返回的值是否為期望值
- 關閉數(shù)據(jù)庫鏈接
11.png
代碼示例:
*** Settings ***
Library DatabaseLibrary
*** Test Cases ***
Testcasemysql
Connect To Database Using Custom Params pymysql database='smeoa', user='root', password='', host='localhost', port=3306
Execute Sql String select * from smeoa_user
${string} query select name from smeoa_task where task_no = '2017-0001'
log ${string}
should be equal ${string[0][0]} test0420
Disconnect From Database