QTP的那些事--终极项目脚本设计思路及其测试查询功能的一些实际项目体会
1,采用importdatable將外部的excel數據加載到對應的datatable中;
2,實際項目中可能不會讓我們去設置數據庫的檢查點來校驗數據,而且校驗的數據比較復雜,就拿我們基本的手工測試來說。我們在測試查詢條件的時候也是不去考慮數據庫底層的查詢結果的,我們關注的僅是查詢的結果中有沒有查詢到結果,查詢的結果中有沒有我們的查詢條件中的值;
3,針對以上情況,涉及思路如下:
3.1 所有的查詢條件設計成相當于MVC模式 中的VO層,也就是我們的輸入層數據,然后將對應的錄制的查詢腳本都參數化為我們datatable中對應的字段;
3.2 判斷檢查查詢的實際結果,實際結果我這里就沒有坐那邊復雜的處理,就簡單的是做了一個判斷,如下:
思路其實很簡單,就是得到對應的webtable中的innnertext屬性中所有的文本查詢結果,然后再獲取datatable中所有的查詢條件,將所有的查詢條件與innertext中內容比較一下,查看是否有對應的數據,如果有的話,那么就寫上我們的實際的測試結果(查詢到數據),如果沒有查詢到數據就寫上(沒有結果)。
? 這里的判斷結果只存在兩種情況,其他的復雜的情況沒有考慮。
Browser(“browser").Page(“page").Sync'得到實際的測試執行結果set listtab=Browser(“browser").Page(“page").Frame("frmae").WebTable("合計")writerow=datatable.LocalSheet.GetCurrentRow+1If listtab.Exist(1) Thenlistresult=listtab.GetROProperty("innertext")End Ifprint "當前的行"&writerowIf listtab.Exist(10) Then For index=1 to datatable.LocalSheet.GetParameterCountindexres=datatable.LocalSheet.GetParameter(index) '獲得對應的參數數據if instr(1,listresult,indexres,1)>0 thendatatable.LocalSheet.GetParameter("實際結果").Value="查詢到結果"'寫到excel中結果'writeExcelDatas(filename, sheetindex, x, y, values)writeExcelDatas "result",1,writerow,20,"查詢到結果"elsedatatable.LocalSheet.GetParameter("實際結果").Value="沒有結果"writeExcelDatas "result",1,writerow,20,"沒有結果"end ifNextelsedatatable.LocalSheet.GetParameter("實際結果").Value="沒有結果"writeExcelDatas "result",1,writerow,20,"沒有結果"End If'執行測試結果,預期值與實際值的比較expectvalue=trim(datatable.LocalSheet.GetParameter("期望結果"))actualvalue=trim(datatable.LocalSheet.GetParameter("實際結果").RawValue)If expectvalue=actualvalue Thendatatable.LocalSheet.GetParameter("測試結果").Value="PASS" writeExcelDatas "result",1,writerow,21,"PASS"elsedatatable.LocalSheet.GetParameter("測試結果").Value="Failed"writeExcelDatas "result",1,writerow,21,"Failed"End If'執行用例結束后的通知。。。If datatable.GetCurrentRow=runiteration ThenreportProgress "當前action用例執行完畢.....",5End If
?
?
?
?
小結一下:
?
(我覺得用QTP設計自動化腳本的時候,首先要考慮的是這個模塊相當于是增刪改查中的那個模塊,然后再針對不同模塊進行相關的處理)
1,其實所有的自動化腳本來說,跟開發一樣的概念,對于增刪改查這些功能模塊,及其流程操作來說。
1.1 QTP做的最好的就是增,保存一條信息的功能,這個可以用于流程操作或者是針對系統測試入手的時候,進行系統環境的數據準備工作;
1.2 QTP支持的對應刪,改這些操作其實跟增的功能差不多,也是比較的容易;
1.3 然后就是查的模塊:
我對于這個模塊很是糾結,想到了許多種處理的方式。下面主要介紹針對于查詢功能數據的一些測試方法:
我將查詢模塊的功能分成了兩種形式,一種是聯動數據的信息查詢,一種就是直接從數據庫中校驗數據的查詢;
先說第一種:
聯動數據的信息查詢
意思就是這里的查詢數據的結果,我們可以通過后臺的數據庫查詢到對應的數據,但是我們也可以通過在系統的其他模塊查詢到該對應的數據是否正確與否;
對于這種情況,我的考慮是你從別的地方將所對應的數據先取出來,放到excel或者是txt文件中,最好是txt,excel讀取文件中速度還是很慢的,比較麻煩在查詢的將對應查詢結果與你放在excel或者是txt中的內容對比一下,就可以知道你的查詢結果的正確與否了;
直接從數據庫中校驗數據的查詢
?意思就是這里的查詢數據不依賴與其他的模塊中數據,是完完全全從數據庫中對應的表查詢到的;
對于這種情況,我的考慮就是按照上面的方式進行操作;
上面設計的這種查詢方式,有些缺點就是查詢時候如果數據比較多,就腳本校驗的比較的慢。關于這個問題,我會在后續中進行解決。。。。暫時先不進行處理。
轉載于:https://www.cnblogs.com/alterhu/archive/2012/05/30/2526000.html
總結
以上是生活随笔為你收集整理的QTP的那些事--终极项目脚本设计思路及其测试查询功能的一些实际项目体会的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu重置面板
- 下一篇: 看到了一个 蒙特卡洛方法 随机数得出 圆