日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

QTP之对测试用例的自动化过程的分解

發(fā)布時間:2025/3/13 c/c++ 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QTP之对测试用例的自动化过程的分解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

第一部分:自動化一個測試用例

當你要開始自動化一個測試用例的時候,有一些重要的事情需要完成。當你完成所有這些事情的時候,測試腳本的自動化也隨之完成。

在這里,我們將首先在大部分的自動化測試用例里找出所有通用的任務。

讓我們用一個例子(GmailLogin)來理解前面所說的內(nèi)容

為了自動化Gmail Login,你需要寫一些代碼來做以下的事情:

  • 打開Gmail Url
  • 輸入正確的用戶名和密碼
  • 點擊登錄按鈕

通過下面的圖讓我們更加詳細的理解這一點:

?

任務1 - 識別對象

?

  • 在你對任何對象做操作之前,你需要唯一地識別這個對象。比如,在你輸入Email之前,你應該知道在Gmail Login界面上的2個輸入框那個是Email。一旦你正確的識別出email,你就可以在Email里輸入正確的數(shù)據(jù)
  • 每個控件都有它自己的唯一屬性集,用它們,在同一個頁面你就可以與其它的控件做區(qū)分。例如,Gmail的的登錄按鈕包含了文本'Sign in',用這個文本就可以明顯與其它的按鈕做出區(qū)分

  • 因此,識別一個對象,你要找出這個對象的唯一識別屬性

任務2 - 在對象上執(zhí)行操作

?

  • 一旦你唯一的識別一個對象,那么下一步將是對這個對象的一些操作
  • 你所執(zhí)行的操作依賴對象的類型,不同類型的對象包含不同的操作
  • 比如:對于按鈕和鏈接,你可以做點擊操作。對于一個輸入框,你能執(zhí)行Set或者Type操作。類似的,對于每個對象都有自己的操作集合

?

任務3 - 數(shù)據(jù)處理

  • 數(shù)據(jù)處理也是在對象上執(zhí)行操作的一部分
  • 對于像輸入框的控件,你需要執(zhí)行輸入一些數(shù)據(jù)的操作

?

任務4 - 合并所有單獨的操作

  • 為了創(chuàng)建一個測試腳本,你需要合并單獨的操作在一起,然后執(zhí)行它們
  • 比如:Gmail的登錄部分將有以下的操作
    • op1: 打開Gmail URL
    • op2: 輸入用戶名
    • op3: 輸入密碼
    • op4: 點擊登錄按鈕
  • 您能以Action或者Function的形式合并所有單獨的操作
  • 因此一個Action或者Function是一個操作集合,這些操作集合合并成一個業(yè)務邏輯流(比如Login, Logout, Search)

?

任務5 - 重用和不重用的函數(shù)

  • 在你的測試腳本里有一些函數(shù),一些是只能用一次,而其他的函數(shù)可以用多次
  • 只能用一次的Actions是不可重用的Actions,可以用多次的Actions是可重用的Actions
  • 例子:考慮以下的3個測試用例

  • ?上圖,你注意到函數(shù)Gmail_Login和Gmail_Logout是被用了多次。因此,這些都是可重用的函數(shù),其它都是非可重用的函數(shù)。

一個簡單測試腳本的結構

?

?以上我們已經(jīng)列出了你需要執(zhí)行測試腳本的通用任務

  • 識別唯一的對象
  • 在對象上執(zhí)行操作
  • 只要需要就要執(zhí)行數(shù)據(jù)處理操作
  • 創(chuàng)建重用和非重用的的Action(Function)

?

第二部分:QTP怎樣自動化測試用例

?

?

  • 在第一部分,你看到為了創(chuàng)建一個測試腳本你需要完成的通用任務
  • 在這個部分,你將看到QTP怎么樣協(xié)助我們來完成這些任務
  • QTP有不同的功能和機制來幫助你完成這些任務
  • 讓我們看下每個任務以及對應QTP的功能

?

識別和存儲對象

QTP提供一個唯一的機制,使用它,你能找出對象的唯一識別屬性。這個機制叫做Object Spy。QTP也提供一個叫做Object Repository的倉庫,可以存儲一些對象以及他們的屬性

在對象上執(zhí)行操作

QTP有一系列預定義函數(shù)庫,他們包含了不同對象的相關所有的操作。當你寫一個對象在你的腳本里,QTP也提供了智能提示,它可以自動展示與這個對象相關的所有函數(shù)和屬性

?

?

?

?

執(zhí)行數(shù)據(jù)處理操作

QTP有自己內(nèi)建的機制,叫做DataTable, 你在這里保存測試數(shù)據(jù),稍后在測試腳本里使用它。QTP提供它自己的集合函數(shù),使用它們就可以從DataTable里解析數(shù)據(jù)

?

即使你的數(shù)據(jù)存儲在外部文件里,比如Excel或者XML文件,QTP提供許多方法,使用它們你就可以從外部數(shù)據(jù)源里獲取到數(shù)據(jù)

?

?

存儲重用和不重用的代碼

QTP也提供許多方法,你能用這些方法來存儲重用和非重用的的代碼。這些機制是:

  • Action:Action是你保存代碼最通用的方法之一。你能保存重用和不重用的代碼在Actions里
  • Function Library: 函數(shù)庫是又一個很流行的方法,你幾乎可以在所有的QTP項目里的使用它。函數(shù)庫主要用來存儲可重用的代碼
  • Business/Scripted Components: 盡管很少用,這個也是你可以存儲代碼的地方

總結:

  • 為了寫測試腳本,你需要知道你要做的一些通用任務是:
    • 識別和存儲對象
    • 在對象上執(zhí)行操作
    • 在腳本里處理測試數(shù)據(jù)
    • 合并所有的操作形成重用&非重用的動作

?

  • 你也知道QTP怎么用它的一系列功能來幫助你創(chuàng)建測試腳本:
    • Object Spy和對象庫
    • 內(nèi)建的函數(shù)庫
    • DataTable和相關的方法
    • Actions,函數(shù)庫和組件

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

轉載于:https://www.cnblogs.com/testermark/p/3542671.html

總結

以上是生活随笔為你收集整理的QTP之对测试用例的自动化过程的分解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。