<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    qileilove

    blog已經轉移至github,大家請訪問 http://qaseven.github.io/

    QTP腳本—測試參數限制

     以前一直覺得自己沒有寫代碼的資質,太急于求成,以為一天就能寫好幾個功能,幾千行代碼,于是就沒耐心了,沒心情學下去了....但是最近發現其實寫代碼是一個漫長的過程,都是在修修改改中成長起來的。于是今天試著慢慢用QTP測下參數限制,雖然代碼量不多,其實也算不上編程,O(∩_∩)O哈哈~但也是個慢慢積累的過程。
      首先,我有一段登陸系統的測試模塊,可以把它設為可重用的,并且參數化必要的信息,比如登陸用戶名密碼等等,這些就不細說了。可以參見《QTP自動化測試實踐》8.3節 Action測試輸入的參數化,調用過程見上一篇關于action的文章
      現在我要測試參數的限制:
      第一步,必須要在當前項目下新建一個action,步驟如下:
      選擇Insert|Call to New Action:
      然后在彈出框中填寫新建action的name和description,可不可重用,以及新action的位置,這里我的參數檢查功能是在登陸模塊之后,所以選擇第一個At the end of the test
      第二步,既然2個action都是測試同一個軟件,可以重用它們的對象庫respositories,操作步驟是:
      先保存login這個action的對象庫,后綴是“.tsr",然后選擇Resources|Associate Respositories,選定剛剛保存的對象庫文件,然后下面的Available Action選擇login模塊,右邊的Associated Action選擇Test_Parameters模塊:
      于是,在測試參數的模塊中就可以直接使用login的對象庫了。 第三步,因為測試參數是一個繁雜的過程,有很多種組合方式,而且每個參數輸入框都要求輸入一遍,但是好在參數輸入框的規則都是一樣的,比如不能輸入符號,字母,負數,小數,空格等等,除此之外還有范圍限制,于是我就采用數據驅動測試的方法來做這個腳本。先寫好輸入參數的過程:
    Dialog("App(1.0.1.0)").WinEdit("MINS").Set ”1“
    Dialog("App(1.0.1.0)").WinEdit("MINX").Set ”1“
    Dialog("App(1.0.1.0)").WinEdit("MAXS").Set ”2“
    Dialog("App(1.0.1.0)").WinEdit("MAXX").Set ”2“
    Dialog("App(1.0.1.0)").WinEdit("IR").Set ”1“
    Dialog("App(1.0.1.0)").WinEdit("OR").Set ”2“
      然后根據數據驅動測試的步驟設置參數根據table中的值來輸入,詳情參見我博客《QTP:數據驅動測試》,Expert View的顯示如下:
    Dialog("App(1.0.1.0)").WinEdit("MINS").Set DataTable("minS", dtLocalSheet)
    Dialog("App(1.0.1.0)").WinEdit("MINX").Set DataTable("minX", dtLocalSheet)
    Dialog("App(1.0.1.0)").WinEdit("MAXS").Set DataTable("maxS", dtLocalSheet)
    Dialog("App(1.0.1.0)").WinEdit("MAXX").Set DataTable("maxX", dtLocalSheet)
    Dialog("App(1.0.1.0)").WinEdit("IR").Set DataTable("IR", dtLocalSheet)
    Dialog("App(1.0.1.0)").WinEdit("OR").Set DataTable("OR", dtLocalSheet)<br>Dialog("App(1.0.1.0)").WinButton("應用參數").Click    ' 點擊開始應用參數
      我設置了2種參數范圍邊界的數據,9種服務端會拒絕應用的參數組合,30種客戶端限制的參數類型組合。
      第四步,對測試結果進行判斷并顯示在QTP生成的測試報告中:
      開始我是這么寫的:
    If   Dialog("App(1.0.1.0)").Dialog("提示").Exist(3) Then
    Dialog("App(1.0.1.0)").Dialog("提示").WinButton("應用參數成功-確定").Click    ' 應用成功
    reporter.ReportEvent micDone,"yes","前2個:可以應用成功"
    else
    reporter.ReportEvent micFail, "yes"," 前2個:服務端拒絕應用"
    End If
    If Dialog("App(1.0.1.0)").Dialog("錯誤").Exist(3) Then
    Dialog("App(1.0.1.0)").Dialog("錯誤").WinButton("服務器不支持該參數-確定").Click
    reporter.ReportEvent micDone,"server no","中間9個:服務端拒絕應用"
    else
    reporter.ReportEvent micFail,"server no", "中間9個:服務端居然應用了"
    End If
    If  Dialog("App(1.0.1.0)").Dialog("警告").Exist(3) Then
    Dialog("App(1.0.1.0)").Dialog("警告").WinButton("客戶端不支持該參數-確定").Click
    reporter.ReportEvent micDone,"client no","后30個:DTC拒絕應用"
    else
    reporter.ReportEvent micFail,"client no", "后30個:DTC居然應用了"
    End If
      運行之后發現,每一行參數的結果都有2個fail,因為我設置的三個主if是并列關系!符合其中一種情況之后,另外2種情況都會失敗。
      于是,我再寫成這樣的:
    If   Dialog("App(1.0.1.0)").Dialog("提示").Exist(3) Then
    Dialog("App(1.0.1.0)").Dialog("提示").WinButton("應用參數成功-確定").Click    ' 應用成功
    reporter.ReportEvent micDone,"yes","前2個:可以應用成功"
    elseif Dialog("App(1.0.1.0)").Dialog("錯誤").Exist(3) Then
    Dialog("App(1.0.1.0)").Dialog("錯誤").WinButton("服務器不支持該參數-確定").Click
    reporter.ReportEvent micDone,"server no","中間9個:服務端拒絕應用"
    elseif Dialog("App(1.0.1.0)").Dialog("警告").Exist(3) Then
    Dialog("App(1.0.1.0)").Dialog("警告").WinButton("客戶端不支持該參數-確定").Click
    reporter.ReportEvent micDone,"client no","后30個:客戶端拒絕應用"
    else
    reporter.ReportEvent micFail, "fail"," 結果跟預期不一致"
    End If
      現在如果全部測試通過,不會出現fail的情況,但是需要在測試報告中一層層點開,查看對于每個測試數據行的測試結果是不是符合以下描述:
      1.前2個:可以應用成功
      2.中間9個:服務端拒絕應用
      3.后30個:客戶端拒絕應用
      雖然上面的腳本避免了重復輸入41種數據,但是后期的結果查看還是一個艱辛的過程,不知道QTP有沒有把測試人員要求的結果描述統一到一個頁面來的功能呢,有待挖掘。

    posted on 2014-05-22 10:11 順其自然EVO 閱讀(375) 評論(0)  編輯  收藏 所屬分類: qtp

    <2014年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿(55)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲午夜国产片在线观看| 亚洲综合综合在线| 亚洲欧美不卡高清在线| 69pao强力打造免费高清| 国产成人精品免费视频大| 好看的亚洲黄色经典| 中文字幕看片在线a免费| 1000部羞羞禁止免费观看视频| 亚洲AV无码成人精品区蜜桃| 亚洲精品亚洲人成在线| 成年女人永久免费观看片| 色欲aⅴ亚洲情无码AV| 国产jizzjizz免费视频| 男人和女人高潮免费网站 | 成人片黄网站色大片免费观看cn| 亚洲av高清在线观看一区二区| 亚洲欧洲日产国产综合网| 色屁屁www影院免费观看视频| 久久精品国产免费观看 | 亚洲人成在线观看| 中文免费观看视频网站| 亚洲一区二区三区成人网站 | 亚洲午夜精品在线| 最近免费中文字幕中文高清| 午夜时刻免费入口| 亚洲国产精品久久久久秋霞影院| 99在线视频免费观看视频| 亚洲精品免费视频| 99久久精品日本一区二区免费| 亚洲国产精品一区二区成人片国内 | 天堂在线免费观看中文版| 一级黄色免费大片| 全部免费a级毛片| 亚洲欧美日韩中文高清www777| 免费a在线观看播放| APP在线免费观看视频| 亚洲成人黄色在线观看| 免费在线视频一区| 中文字幕在线免费观看| 美国毛片亚洲社区在线观看 | 夜夜春亚洲嫩草影院|