• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    用例驅動自動化測試在國產(chǎn)化環(huán)境下應用

    2018-03-03 13:12馮亞玲徐鶯
    數(shù)字技術與應用 2018年11期
    關鍵詞:Python語言自動化測試

    馮亞玲 徐鶯

    摘要:針對傳統(tǒng)API接口測試用例數(shù)據(jù)量大、用例和腳本管理繁瑣以及國產(chǎn)化環(huán)境下缺乏通用測試工具的問題,本文通過對API接口自動化測試技術特點和國產(chǎn)化應用技術特點的分析,設計了基于Excel用例模板的API接口通用自動化測試工具,采用Python語言開發(fā)代碼,將測試用例、測試數(shù)據(jù)和測試執(zhí)行的代碼分層開發(fā),實現(xiàn)了用例數(shù)據(jù)驅動API接口自動化測試在國產(chǎn)化環(huán)境下的應用。

    關鍵詞:API接口;用例數(shù)據(jù)驅動;自動化測試;國產(chǎn)化環(huán)境;Python語言

    中圖分類號:TP312 文獻標識碼:A 文章編號:1007-9416(2018)11-0097-05

    0 引言

    API接口測試是軟件測試中非常普遍而重要的測試類型,能夠覆蓋業(yè)務規(guī)則,體現(xiàn)系統(tǒng)行為[1],測試可信度高、效果好。API接口測試要求測試工程師了解軟件的設計及接口的定義,針對功能、性能和穩(wěn)定性等方面要求,編寫相應的測試代碼、構造各種測試用例進行測試。

    每一個API接口都有其自身特點,組成的業(yè)務邏輯復雜,在測試過程中,需要針對每個API接口設計一套測試腳本,模擬各種正常、異常的測試參數(shù)[2],比對實際結果與期望結果的一致性,測試工作量大,腳本和用例的維護工作繁瑣,要求測試人員始終保持高度謹慎;同時,軟件API接口使用環(huán)境種類繁多,包括X86平臺,國產(chǎn)化平臺,Windows系統(tǒng),國產(chǎn)化操作系統(tǒng)等,要求API接口測試工具能滿足國產(chǎn)化需求,兼容各種主流平臺環(huán)境。如果能實現(xiàn)用例驅動API接口自動化測試在國產(chǎn)化環(huán)境下的應用,既可以減輕手工測試的強度,又可以滿足國產(chǎn)化環(huán)境測試需求,提高接口測試的自動化水平和軟件質量[3]。

    1 Python與自動化和國產(chǎn)化

    Python可定義為面向對象的腳本語言,開發(fā)和迭代的效率極高[4];它內置了眾多支持一系列應用級編程任務的標準庫,可通過自行開發(fā)的庫或眾多第三方的擴展庫進行擴展。Python腳本可通過靈活的集成機制輕松地與應用程序的其他部分進行通信,Python可以使用C和C++的庫,可以被C和C++的程序調用,可以與Java組件集成。Python所具有的質量和效率優(yōu)點,以其付出更少的精力完成更多的任務而成為自動化測試開發(fā)的首選語言。

    Python的標準實現(xiàn)是由可移植的ANSIC編寫,除了語言解釋器本身以外,Python自帶的標準庫和模塊在實現(xiàn)上也盡可能地考慮了跨平臺的可移植性[5]。Python程序自動編譯成可移植的字節(jié)碼,這些字節(jié)碼在已安裝兼容版本Python的平臺上運行的結果都是相同的。這意味著Python程序的核心語言和標準庫可以在Linux、Windows和其他帶有Python解釋器的平臺上無差別運行,能很好的滿足兼容各種平臺環(huán)境的測試需求。

    2 API自動化測試應用工具的特性分析

    API自動化測試應用工具是為了實現(xiàn)適用于各種主流平臺的軟件接口自動化測試需求,它應該包括用例驅動性、API接口通用性、平臺兼容性等需求特性。

    2.1 用例驅動性

    用例驅動性指的是用例數(shù)據(jù)驅動API接口自動化測試。API接口除了實現(xiàn)其本身的功能之外,還與其他接口存在上下文關系,多變的接口關系組成各種業(yè)務測試邏輯。本質上測試執(zhí)行的每一步都只是一個接口,可以抽象出執(zhí)行邏輯[6],使測試的執(zhí)行邏輯與業(yè)務邏輯無關,達到測試執(zhí)行腳本與接口業(yè)務邏輯關系解耦合的目的。因此,測試人員根據(jù)用例模板進行測試用例數(shù)據(jù)設計,體現(xiàn)接口調用順序和參數(shù)關系,無需關心測試腳本的調用和執(zhí)行,由測試工具根據(jù)用例數(shù)據(jù)進行接口函數(shù)識別、接口參數(shù)識別和封裝,通用化透明化地進行測試業(yè)務流程執(zhí)行。

    2.2 API接口通用性

    API接口通用性指的是API自動化測試應用工具適用于所有API接口類型的DLL庫和.SO庫的接口測試,滿足功能、性能和穩(wěn)定性測試需求。軟件API接口雖然繁多,但接口的輸入輸出測試、接口的異常參數(shù)處理重復性較強[7],接口測試的結果易于形式化處理,測試用例間存在較大的共性,可對這些用例進行模板定制,形成模板化可通用的測試工具。

    2.3 平臺兼容性

    平臺兼容性指的是API自動化測試應用工具可以在Linux、Windows和其他帶有Python解釋器的平臺上無差別運行,且能方便地在測試環(huán)境中進行快捷部署。

    3 API自動化測試應用工具的框架研究與設計

    在實際系統(tǒng)中,針對API接口測試形成模板化可重用的測試架構,可以解決測試自動化問題,降低自動化測試腳本設計的復雜度,提高測試工具的通用性和可擴展性,真正帶來提高效率的價值。

    3.1 框架設計

    API自動化測試應用工具的主要目標是接收測試用例,轉換成測試數(shù)據(jù)進行測試執(zhí)行,最終輸出測試結果。

    根據(jù)API自動化測試應用工具的特性分析,測試框架采用分層結構[8],由測試輸入層、測試數(shù)據(jù)層、測試執(zhí)行層、測試輸出層組成,每一層通過各功能模塊實現(xiàn)自己特定的任務,各層之間根據(jù)需要去進行調用。各功能模塊之間的交互關系及其對應于框架的分層關系如圖1所示。

    3.2 測試輸入層

    包含數(shù)據(jù)讀取模塊,用于接收測試用例文件、頭文件和測試參數(shù)等數(shù)據(jù)輸入。

    3.3 測試數(shù)據(jù)層

    包含數(shù)據(jù)識別模塊、數(shù)據(jù)處理模塊、參數(shù)封裝模塊、測試場景構建模塊,是整個測試程序的入口,它實現(xiàn)測試輸入數(shù)據(jù)解析,完成測試數(shù)據(jù)轉換和測試場景構建,調用測試執(zhí)行腳本,輸出日志記錄。

    3.4 測試執(zhí)行層

    包含功能測試模塊、性能測試模塊、穩(wěn)定性測試模塊,用于執(zhí)行測試數(shù)據(jù),對接口的調用進行封裝,根據(jù)測試場景完成測試執(zhí)行,并輸出測試結果。

    3.5 測試輸出層

    包含測試結果處理模塊、測試日志記錄模塊,用于收集測試結果和測試日志記錄,以文件的形式輸出給測試人員。

    4 API自動化測試應用工具的實現(xiàn)與應用

    在具體的測試代碼開發(fā)過程中,主要采用分層的思想編寫代碼,每一層完成的任務由其包含的功能模塊實現(xiàn),下面詳細介紹每層代碼的開發(fā)實現(xiàn)。

    4.1 測試輸入層

    測試輸入層主要完成數(shù)據(jù)讀取模塊的功能。用于讀取測試用例文件、頭文件和測試參數(shù)數(shù)據(jù)。

    4.1.1 用例文件數(shù)據(jù)

    測試人員根據(jù)Excel用例模板設計測試用例。用例模板如圖2所示。

    在用例模塊中將調用接口的函數(shù)名、參數(shù)類型、參數(shù)值、參數(shù)輸入輸出關系和調用順序按定義進行描述:

    (1)函數(shù)說明列表。用例集中需要調用的接口函數(shù)列表;(2)測試用例。測試人員針對被測接口函數(shù)對象設計的用例,包括函數(shù)調用順序、參數(shù)值、參數(shù)輸入輸出關系等;(3)標志區(qū)域。區(qū)分被測接口和關聯(lián)接口,明確測試用例標號;(4)函數(shù)名。接口的函數(shù)名;(5)函數(shù)參數(shù)說明。接口函數(shù)的參數(shù)個數(shù)和參數(shù)類型,以及在該用例集中不變化的參數(shù)值。

    4.1.2 頭文件和測試參數(shù)數(shù)據(jù)

    頭文件數(shù)據(jù)包括接口庫包含的基本數(shù)據(jù)類型和結構體嵌套數(shù)據(jù)類型等參數(shù)信息。

    測試參數(shù)是構建測試場景需要的配置信息,包括用例文件路徑、被測接口庫路徑等相對固定的參數(shù),還包括測試分支選擇、并發(fā)用戶數(shù)、多進程/多線程啟動、測試運行時間、測試退出條件等參數(shù)信息,其中,變化的參數(shù)可通過配置文件或命令行參數(shù)的方式輸入。例如:

    casename=c:\\example.xls#用例表路徑

    testcase=0#功能測試0,性能測試1,穩(wěn)定性測試2

    methodflag=0#線程(0)/進程(1)執(zhí)行

    usernum=20#并發(fā)用戶數(shù)

    4.2 測試數(shù)據(jù)層

    測試數(shù)據(jù)層主要完成數(shù)據(jù)識別模塊、數(shù)據(jù)處理模塊、參數(shù)封裝模塊和測試場景構建模塊的功能。將讀取的用例文件數(shù)據(jù)和配置參數(shù)數(shù)據(jù)進行識別,處理為相應的測試數(shù)據(jù)。

    4.2.1 數(shù)據(jù)識別模塊和數(shù)據(jù)處理模塊

    數(shù)據(jù)識別模塊的功能是將讀取的數(shù)據(jù)按照事先制定的規(guī)則識別為有特定意義的用例數(shù)據(jù),將輸入數(shù)據(jù)和信息字段建立對應關系。數(shù)據(jù)處理模塊將識別出來的用例數(shù)據(jù)處理為可執(zhí)行的測試數(shù)據(jù)。

    (1)識別用例文件中接口函數(shù)描述說明,建立接口函數(shù)與參數(shù)個數(shù)、參數(shù)類型、參數(shù)值之間的關聯(lián)關系;如表1所示。

    ConnectDev函數(shù)是pre準備階段執(zhí)行的函數(shù),有三個參數(shù),參數(shù)類型依次是UINT32、pHDEV、UINT8,參數(shù)值在該測試集中不變化,分別是0、out1、0;其中,out1表示該參數(shù)是輸出參數(shù),輸出值需保存供其它函數(shù)調用。OpenApp函數(shù)類似。

    GenerateKey函數(shù)是act被測階段函數(shù),有三個參數(shù),參數(shù)類型依次是pHPIPE、WORKKEYATTR、pHANDLE,參數(shù)值在該測試集中變化,變化在測試用例中體現(xiàn);

    (2)識別接口函數(shù)執(zhí)行次數(shù)、預期結果,不同接口函數(shù)之間的參數(shù)輸入輸出關系、調用順序等。如表2所示。

    測試用例1,GenerateKey函數(shù)執(zhí)行完后執(zhí)行DestroyKey函數(shù),GenerateKey函數(shù)的參數(shù)值依次為ref_out2、(2,1,0,16)、out3,執(zhí)行次數(shù)為1次,預期結果默認為0;DestroyKey函數(shù)的參數(shù)值依次為ref_out2、ref_out3,執(zhí)行次數(shù)為1次,預期結果默認為0。GenerateKey函數(shù)的ref_out2參數(shù)表示該參數(shù)的輸入值需調用out2參數(shù)的輸出值,out3輸出值供DestroyKey函數(shù)的ref_out3參數(shù)調用。

    (3)識別基本數(shù)據(jù)類型和結構體嵌套數(shù)據(jù)類型等,使接口函數(shù)的參數(shù)類型和參數(shù)值建立關聯(lián)關系。如:

    GenerateKey函數(shù)三個參數(shù)類型依次是pHPIPE、WORKKEYATTR、pHANDLE,對應的數(shù)據(jù)類型為指針c_void_p、結構體class WORKKEYATTR、指針c_void_p,對應的參數(shù)值是ref_out2、(2,1,0,16)、out3。在處理過程中,參數(shù)1按指針類型引用out2的輸出值,參數(shù)2按結構體WORKKEYATTR的各字段類型對(2,1,0,16)的每個值進行賦值,參數(shù)3按指針類型將輸出值保存在out3中。

    (4)識別測試參數(shù)信息,明確測試場景構建數(shù)據(jù)。將讀入的配置參數(shù)數(shù)據(jù)與測試分支選擇testcase、并發(fā)用戶數(shù)usernum、多進程/多線程啟動methodflag、測試運行時間runtime、測試退出條件exitflag等測試場景構建信息字段建立對應關系。

    API自動化測試應用工具提供了通用化的用例數(shù)據(jù)識別和處理模型,對接口函數(shù)的每個參數(shù)都根據(jù)參數(shù)類型和參數(shù)值進行賦值,對接口函數(shù)之間的調用順序和參數(shù)引用建立邏輯關系。

    4.2.2 參數(shù)封裝模塊

    將經(jīng)處理后的測試數(shù)據(jù)封裝為接口函數(shù)調用可執(zhí)行的參數(shù)。

    傳統(tǒng)的API接口測試工具中,每一個API接口對應一套測試腳本,原因在于接口之間存在調用關系、參數(shù)之間存在引用關系,接口函數(shù)的形參和實參需一一對應,不同的接口含有不同個數(shù)和類型的形參,這就導致了針對每個接口函數(shù)都需要測試腳本去做形參和實參的匹配,不同接口之間測試腳本不能復用。

    本文實現(xiàn)的API自動化測試應用工具提供了可復用的參數(shù)封裝模塊,經(jīng)過用例數(shù)據(jù)識別和處理后,接口函數(shù)的每個形參都處理為對應的實參,對接口函數(shù)實參的封裝采用Python提供的*args可變位置參數(shù)實現(xiàn)。即多個實參按照位置傳值,放到一個元組里面,以*開頭,可以傳遞多個參數(shù)。如:

    libc=windll.LoadLibrary(dllpath)#加載被測dll庫

    def dealparam:#處理函數(shù)參數(shù)并封裝

    #識別函數(shù)funcname

    #識別函數(shù)參數(shù)個數(shù)和參數(shù)類型

    for i in range(paramlen):#根據(jù)參數(shù)類型和參數(shù)值賦值

    param[i] = value[i]

    execparam.append(param[i]) #封裝參數(shù)

    ret=getattr(libc,funcname)(*execparam)#接口封裝調用

    通用化的接口參數(shù)封裝模塊使不同的接口函數(shù)可以使用同一模板實現(xiàn)參數(shù)封裝,不再需要定制化的測試腳本。

    4.2.3 測試場景構建模塊

    測試場景構建模塊根據(jù)測試參數(shù)構建測試場景。選擇功能、性能或穩(wěn)定性測試分支,采用多進程/多線程的方式啟動并發(fā)測試,線程/進程數(shù)由并發(fā)用戶數(shù)決定,到達運行時間后或者測試人員選擇退出測試。

    testcase=1#功能測試0,性能測試1,穩(wěn)定性測試2

    import MyProcess,MyThread#導入多進程/多線程庫

    methodflag=0#選擇執(zhí)行方式,多進程方式=0,多線程方式=1

    for i in range(usernum):#根據(jù)并發(fā)用戶數(shù)啟動線程/進程數(shù)

    #將運行時間和測試退出方式通過參數(shù)傳遞給執(zhí)行函數(shù)

    p = MyProcess(test1,(execlist,exit_flag,run_time,row,timeflag,j,tmpparam,))

    processes.append(p)

    4.3 測試執(zhí)行層

    測試執(zhí)行層主要完成功能測試模塊、性能測試模塊和穩(wěn)定性測試模塊的功能。功能、性能和穩(wěn)定性測試的用例文件可復用,根據(jù)不同的測試場景進行不同測試分支的執(zhí)行。

    4.3.1 功能測試模塊

    功能測試模塊通過調用接口庫驗證函數(shù)的功能是否與描述一致,測試執(zhí)行的實際返回值與期望返回值是否一致,并返回測試結果。測試用例如表3所示。

    該用例集的測試對象為對稱加密函數(shù)Encrypt,不僅需要驗證加密函數(shù)Encrypt的執(zhí)行結果,也需要驗證加密結果的正確性。用例1設計的測試內容為產(chǎn)生密鑰GenerateKey->加密Encrypt->解密Decrypt->銷毀密鑰DestroyKey->驗證加解密正確性,即GenerateKey輸出結果為密鑰句柄out3,Encrypt利用密鑰out3對96字節(jié)的數(shù)據(jù)(96,1)進行加密,輸出密文out4,Decrypt利用密鑰out3對密文out4進行解密,輸出明文out5,加解密完成后銷毀密鑰out3,為了驗證加解密過程的正確性,將解密輸出的明文out5與原始數(shù)據(jù)(96,1)進行比較。

    libc=windll.LoadLibrary(dllpath)#加載被測dll庫

    #識別函數(shù)列表funclist

    for i in range(funclist):

    dealparam(func[i])#處理列表中每個函數(shù)的參數(shù)并封裝

    ret=getattr(libc,func[i])(*execparam)#接口封裝調用

    if ret != respectexec:

    break#如果函數(shù)執(zhí)行結果不符合預期,退出測試

    #函數(shù)執(zhí)行結果符合預期,進行輸出結果有效性檢查

    #如:判斷ref_out5 是否等于96字節(jié)的原始數(shù)據(jù)(96,1)

    #返回測試結果

    4.3.2 性能測試模塊

    性能測試模塊驗證接口在各測試場景下的性能指標以及性能指標是否與要求一致。測試用例如表4所示。

    該用例集的測試對象為對稱加密函數(shù)Encrypt在不同測試場景下的性能指標,性能測試過程中Encrypt是被測接口對象,GenerateKey、Decrypt、DestroyKey是關聯(lián)接口,測試執(zhí)行時關聯(lián)接口執(zhí)行一次,輸出和Encrypt有引用關系的參數(shù)值,重點關心被測接口在測試場景下的成功執(zhí)行次數(shù)(執(zhí)行失敗時整個測試指標無參考意義)。如:

    測試配置參數(shù)為testcase=1、usernum=20、methodflag=1、runtime=5、exitflag=0,即Encrypt函數(shù)在多進程啟動條件下,20個并發(fā)用戶數(shù)運行5min的性能指標,達到運行時間后退出測試。測試配置參數(shù)支持自定義。

    libc=windll.LoadLibrary(dllpath)#加載被測dll庫

    for i in range(funclist):

    dealparam(func[i])#處理列表中每個函數(shù)的參數(shù)并封裝

    #構建性能測試場景

    #執(zhí)行關聯(lián)接口,保存輸出參數(shù)

    if time<runtime:#執(zhí)行被測接口

    ret=getattr(libc,tarfunc)(*execparam)#被測接口封裝調用

    if ret != respectexec:

    writelog(‘loginfo.txt,loginfo)#記錄錯誤日志

    break#如果函數(shù)執(zhí)行結果不符合預期,記錄日志后退出測試

    totalnum+=1#統(tǒng)計執(zhí)行成功次數(shù)

    #返回性能測試結果

    4.3.3 穩(wěn)定性測試模塊

    穩(wěn)定性測試模塊驗證在各測試場景下接口本身的穩(wěn)定性以及在業(yè)務邏輯下接口組合關系的穩(wěn)定性。測試用例如表5所示。

    (1)接口本身的穩(wěn)定性。當該用例集的測式對象為對稱加密函數(shù)Encrypt在不同測試場景下的穩(wěn)定性時,代碼實現(xiàn)與性能測試模塊相似,關心Encrypt接口在測試場景下的穩(wěn)定性,與性能測試的區(qū)別在于穩(wěn)定性測試執(zhí)行過程中記錄執(zhí)行失敗的錯誤信息,不強制退出測試。(2)業(yè)務邏輯的穩(wěn)定性。當該用例集的測式對象為加解密業(yè)務在不同測試場景下的穩(wěn)定性時,代碼流程相似,在測試運行時間內反復執(zhí)行整個加解密業(yè)務流程,不再只針對某一個測試接口對象。

    4.4 測試輸出層

    測試輸出層主要完成測試結果處理模塊和測試日志記錄模塊的功能。

    4.4.1 測試結果處理模塊

    測試結果處理模塊負責測試結果的收集、處理和展示。

    (1)功能測試結果。功能測試結果包括接口執(zhí)行結果、接口功能有效性結果以及綜合前兩項指標所得的用例通過結果,三項結果回寫至Excel用例文件。如表6所示。(2)性能測試結果。性能測試結果返回被測接口對象在測試場景下的執(zhí)行總次數(shù),結果回寫至Excel用例文件。如表7所示。(3)穩(wěn)定性測試結果。穩(wěn)定性測試結果包括被測接口對象或業(yè)務對象在測試場景下的執(zhí)行總次數(shù)、失敗次數(shù),測試結果以txt文件展示。如表8所示。

    tarfunc2(業(yè)務1)的總次數(shù)為447796,錯誤次數(shù)為0,執(zhí)行時間3600min

    業(yè)務2的總次數(shù)為125202,錯誤次數(shù)為0,執(zhí)行時間3600min

    業(yè)務3的總次數(shù)為572596,錯誤次數(shù)為0,執(zhí)行時間3600min

    (其中,一行用例代表一個業(yè)務邏輯。)

    4.4.2 測試日志記錄模塊

    測試日志記錄模塊負責測試日志記錄和工具運行日志記錄。記錄內容包括用例執(zhí)行詳細信息、測試執(zhí)行失敗的錯誤信息等。

    用例執(zhí)行詳細信息包括執(zhí)行的用例文件信息、測試集(用例表)信息、測試函數(shù)信息(用例行)等;錯誤信息包括出錯函數(shù)名信息、錯誤碼信息、執(zhí)行失敗時間信息等。

    5 結語

    本文研究了API接口自動化測試方法,分析了用例數(shù)據(jù)通用化解析、用例驅動自動化測試和國產(chǎn)化環(huán)境應用等技術,提出了一種API接口自動化測試框架,解決了用例數(shù)據(jù)轉換、接口參數(shù)封裝和接口映射調用的難題,最后采用Python語言實現(xiàn)了用例驅動API接口自動化測試在國產(chǎn)化環(huán)境下的應用工具。該工具在實際項目中進行了應用,可滿足X86平臺和飛騰、龍芯、兆芯等國產(chǎn)化平臺下的API接口功能測試、性能測試和穩(wěn)定性測試需求,在測試效率的提高和測試成本的降低方面取得了良好的效果[9]。

    參考文獻

    [1]林萍.數(shù)據(jù)分層的接口自動化測試框架設計與應用[J].信息技術,2016(5):37-40.

    [2]吳振宇,顧曉明,李翔.協(xié)議可擴展的軟件接口測試工具的研究與實現(xiàn)[J].數(shù)字技術與應用,2017(12):58-60.

    [3]蘇春梅,何劍偉,奚宏明,et al. 基于XML的通用數(shù)據(jù)接口測試工具[J].兵工自動化,2012,31(8):72-77.

    [4]Wesley Chun.Python核心編程[M].人民郵電出版社,2016.

    [5]楊清玉,李金麗,陳吉蘭,et al.HTTP接口自動化測試方法研究[J].微型機與應用,2016,35(18):22-25.

    [6]余永忠,張哲軍,陳華軍.IEC61970與IEC61968標準接口自動化測試系統(tǒng)研發(fā)[J].南方電網(wǎng)技術,2013,7(5):61-64.

    [7]范典華,潘芳蕊.自動化測試在業(yè)務支撐系統(tǒng)接口測試中的應用設計[J].電信工程技術與標準化,2012,25(4):63-67.

    [8]郝曉曉,張衛(wèi)豐.基于XML的SDK自動化測試框架的設計與實現(xiàn)[J].計算機技術與發(fā)展, 2010,20(4):101-104.

    [9]蔡春梅.基于pyUnit的OTS REST接口自動化測試設計與實現(xiàn)[J].信息技術與標準化,2017(4).

    Application of Case-Driven Automated Testing in Localized Environment

    FENG Ya-ling, XU Ying

    (No.30 Institute of CETC, Chengdu Sichuan? 610041)

    Abstract:Traditional API interface testing has the following disadvantages: a large number of test cases, management of test cases and scripts is cumbersome, and lack of common test tools in the localized environment. In view of the above shortcomings, this paper analyzes the characteristics of the API interface automation test technology and the characteristics of the localized application technology. The paper designed an API automation universal test tool based on Excel test case template,? layered the development of test cases, test data, and test execution and code by using Python language. This paper realized the technology that the test case data driven API interface automatic test, successfully applied to the domestic environment.

    Key words:API; case data-driven; automated testing; localized environment; Python

    猜你喜歡
    Python語言自動化測試
    Python語言程序設計教學體系建設
    面向計算生態(tài)的Python語言入門課程教學方案
    淺談空調控制器自動化測試
    直男gayav资源| 亚洲乱码一区二区免费版| 男女下面进入的视频免费午夜| 国产国拍精品亚洲av在线观看| 欧美黑人巨大hd| 成人鲁丝片一二三区免费| 赤兔流量卡办理| 精品国产亚洲在线| 国内揄拍国产精品人妻在线| 乱人视频在线观看| 欧美黄色淫秽网站| 在线十欧美十亚洲十日本专区| 99国产极品粉嫩在线观看| 国产精品一区二区三区四区久久| 免费人成视频x8x8入口观看| 亚洲精品456在线播放app | 伊人久久精品亚洲午夜| 亚洲国产精品sss在线观看| 露出奶头的视频| 简卡轻食公司| 国产激情偷乱视频一区二区| 国产免费一级a男人的天堂| 美女黄网站色视频| 精品欧美国产一区二区三| 亚洲天堂国产精品一区在线| 变态另类成人亚洲欧美熟女| 一区福利在线观看| 啪啪无遮挡十八禁网站| 中文字幕人妻熟人妻熟丝袜美| 成年版毛片免费区| 久久久久久久久大av| 丝袜美腿在线中文| 丰满人妻熟妇乱又伦精品不卡| 少妇高潮的动态图| www.色视频.com| 夜夜爽天天搞| 日本三级黄在线观看| 成人国产综合亚洲| 久久久色成人| 日韩大尺度精品在线看网址| 国内精品美女久久久久久| 免费电影在线观看免费观看| a在线观看视频网站| 内地一区二区视频在线| 在线天堂最新版资源| 国产欧美日韩一区二区三| 中亚洲国语对白在线视频| 免费黄网站久久成人精品 | 国产亚洲av嫩草精品影院| 亚洲久久久久久中文字幕| 国产毛片a区久久久久| 91av网一区二区| 国产黄色小视频在线观看| 99久久精品国产亚洲精品| 欧美高清成人免费视频www| 亚洲专区中文字幕在线| 国内毛片毛片毛片毛片毛片| 国产精品亚洲av一区麻豆| 91九色精品人成在线观看| 国产极品精品免费视频能看的| 97人妻精品一区二区三区麻豆| 国产伦精品一区二区三区视频9| 男女床上黄色一级片免费看| 美女xxoo啪啪120秒动态图 | 久久这里只有精品中国| 久久午夜福利片| 日本三级黄在线观看| 波野结衣二区三区在线| 天堂动漫精品| 简卡轻食公司| 国产精品99久久久久久久久| 亚洲精品日韩av片在线观看| 两个人视频免费观看高清| 蜜桃亚洲精品一区二区三区| 日韩精品中文字幕看吧| 亚洲精品成人久久久久久| 嫩草影院新地址| 欧美成人免费av一区二区三区| 伊人久久精品亚洲午夜| 国产精品av视频在线免费观看| 女人十人毛片免费观看3o分钟| 精品午夜福利视频在线观看一区| 国产精品一区二区三区四区免费观看 | 怎么达到女性高潮| 国产av在哪里看| 深爱激情五月婷婷| 精品日产1卡2卡| 一个人看的www免费观看视频| 亚洲片人在线观看| 精品欧美国产一区二区三| 窝窝影院91人妻| 日韩精品青青久久久久久| 综合色av麻豆| 99久国产av精品| 欧美日韩瑟瑟在线播放| 久久亚洲精品不卡| 日本一二三区视频观看| 亚洲国产日韩欧美精品在线观看| 少妇人妻一区二区三区视频| 两个人视频免费观看高清| 国产久久久一区二区三区| 又紧又爽又黄一区二区| 国产成人福利小说| 国产v大片淫在线免费观看| 国产乱人伦免费视频| 日本 av在线| 日韩高清综合在线| 亚洲av中文字字幕乱码综合| 少妇人妻一区二区三区视频| 最近最新免费中文字幕在线| 久久久久久久亚洲中文字幕 | 久久草成人影院| 人妻制服诱惑在线中文字幕| 一区福利在线观看| 午夜精品在线福利| 18+在线观看网站| 亚洲精品日韩av片在线观看| 欧美xxxx黑人xx丫x性爽| 亚洲久久久久久中文字幕| 国产亚洲精品久久久久久毛片| 国产高清视频在线观看网站| 中文字幕精品亚洲无线码一区| 中文资源天堂在线| 久久这里只有精品中国| 精品一区二区三区视频在线| 欧美高清成人免费视频www| 97人妻精品一区二区三区麻豆| 亚洲精品影视一区二区三区av| 最近最新中文字幕大全电影3| 亚洲中文字幕一区二区三区有码在线看| 长腿黑丝高跟| 欧美黄色淫秽网站| 欧美日本视频| 老女人水多毛片| 中文字幕精品亚洲无线码一区| 简卡轻食公司| 一级av片app| 国产色婷婷99| 免费在线观看影片大全网站| 日韩欧美三级三区| av视频在线观看入口| 精品熟女少妇八av免费久了| 亚洲人成网站在线播| 色5月婷婷丁香| av在线蜜桃| 亚洲av.av天堂| 一区二区三区四区激情视频 | 在线观看美女被高潮喷水网站 | 国产精品亚洲av一区麻豆| 精品久久久久久久久久免费视频| 亚洲最大成人中文| 日韩人妻高清精品专区| 久久精品夜夜夜夜夜久久蜜豆| 国产精品日韩av在线免费观看| 天天躁日日操中文字幕| 夜夜夜夜夜久久久久| 老女人水多毛片| 欧美区成人在线视频| 午夜福利欧美成人| 欧美日韩乱码在线| 日韩亚洲欧美综合| 国产亚洲精品av在线| 日本五十路高清| 最近中文字幕高清免费大全6 | 在线免费观看的www视频| 亚洲欧美日韩高清专用| 少妇高潮的动态图| 中文字幕熟女人妻在线| 色综合欧美亚洲国产小说| 日本黄色视频三级网站网址| 国产精品精品国产色婷婷| 免费黄网站久久成人精品 | x7x7x7水蜜桃| .国产精品久久| 亚洲熟妇中文字幕五十中出| 亚洲成a人片在线一区二区| 一个人看视频在线观看www免费| 久久精品国产清高在天天线| 男人和女人高潮做爰伦理| 在线观看舔阴道视频| 3wmmmm亚洲av在线观看| 成人av在线播放网站| 99久久99久久久精品蜜桃| 亚洲美女视频黄频| 在线免费观看不下载黄p国产 | 久久久久亚洲av毛片大全| 久久久久久国产a免费观看| 亚洲aⅴ乱码一区二区在线播放| 99久久精品热视频| 欧美激情在线99| 99热6这里只有精品| 成人美女网站在线观看视频| h日本视频在线播放| 亚洲国产精品sss在线观看| 露出奶头的视频| 熟女人妻精品中文字幕| 日本一本二区三区精品| 小说图片视频综合网站| 18禁黄网站禁片免费观看直播| 欧美性猛交╳xxx乱大交人| 亚洲欧美激情综合另类| 小蜜桃在线观看免费完整版高清| 免费在线观看影片大全网站| 长腿黑丝高跟| 亚洲人成电影免费在线| 亚洲经典国产精华液单 | 久久国产精品人妻蜜桃| www日本黄色视频网| 男插女下体视频免费在线播放| 18+在线观看网站| 2021天堂中文幕一二区在线观| 最近视频中文字幕2019在线8| 好男人在线观看高清免费视频| 又黄又爽又刺激的免费视频.| 国产黄片美女视频| 国产免费av片在线观看野外av| 国产精品女同一区二区软件 | 嫁个100分男人电影在线观看| 亚洲国产精品久久男人天堂| 一个人看视频在线观看www免费| 亚洲欧美日韩无卡精品| 噜噜噜噜噜久久久久久91| 夜夜夜夜夜久久久久| 欧美乱色亚洲激情| 中文字幕人成人乱码亚洲影| 一区二区三区免费毛片| 精品一区二区三区av网在线观看| 国产白丝娇喘喷水9色精品| 一a级毛片在线观看| 色播亚洲综合网| 国产av一区在线观看免费| 日本成人三级电影网站| 久久久久久久久大av| 国产精华一区二区三区| 日本一本二区三区精品| 日韩免费av在线播放| or卡值多少钱| 91麻豆av在线| 亚洲av二区三区四区| 精品乱码久久久久久99久播| 男插女下体视频免费在线播放| 日韩欧美在线二视频| aaaaa片日本免费| 久久久久久久久中文| 色噜噜av男人的天堂激情| 国产一区二区在线观看日韩| 天堂动漫精品| 深爱激情五月婷婷| 别揉我奶头 嗯啊视频| 亚洲中文字幕一区二区三区有码在线看| 国产精品日韩av在线免费观看| 日韩高清综合在线| 尤物成人国产欧美一区二区三区| 国产精品98久久久久久宅男小说| av天堂在线播放| 国产精品女同一区二区软件 | 国产精品久久电影中文字幕| 久久久久久久久久成人| 午夜福利欧美成人| 国模一区二区三区四区视频| 乱码一卡2卡4卡精品| 亚洲色图av天堂| 丰满的人妻完整版| 欧美乱妇无乱码| 日日夜夜操网爽| 无遮挡黄片免费观看| 亚洲av第一区精品v没综合| 亚洲久久久久久中文字幕| 亚洲精品在线美女| 亚洲熟妇熟女久久| 亚洲国产色片| 午夜视频国产福利| 午夜福利18| 91久久精品国产一区二区成人| 亚洲不卡免费看| 国产精品亚洲一级av第二区| 天堂动漫精品| 老司机午夜十八禁免费视频| 成人永久免费在线观看视频| 少妇丰满av| 一边摸一边抽搐一进一小说| 久久久久久久亚洲中文字幕 | 能在线免费观看的黄片| 亚洲国产日韩欧美精品在线观看| 搡老岳熟女国产| bbb黄色大片| 国产精品久久久久久久电影| 国产精品久久视频播放| 成人国产综合亚洲| 成人午夜高清在线视频| 人妻制服诱惑在线中文字幕| 在线观看美女被高潮喷水网站 | 久久久久久久久久黄片| 国产综合懂色| 宅男免费午夜| 乱码一卡2卡4卡精品| 欧美bdsm另类| 少妇的逼好多水| 又爽又黄a免费视频| 中文字幕人成人乱码亚洲影| 国产单亲对白刺激| 国产真实伦视频高清在线观看 | 国产熟女xx| 色哟哟·www| 国产综合懂色| 97超视频在线观看视频| 中文在线观看免费www的网站| 欧美在线黄色| 亚洲精品456在线播放app | 超碰av人人做人人爽久久| 国产欧美日韩精品一区二区| 免费电影在线观看免费观看| www.熟女人妻精品国产| 久久这里只有精品中国| 日本三级黄在线观看| 精华霜和精华液先用哪个| x7x7x7水蜜桃| av天堂在线播放| 国产美女午夜福利| 中文字幕av成人在线电影| 日韩亚洲欧美综合| 成人av一区二区三区在线看| 国产精华一区二区三区| 熟女电影av网| 黄色视频,在线免费观看| 日本黄色片子视频| 欧美在线一区亚洲| 久久精品国产亚洲av天美| 国产视频一区二区在线看| 美女高潮喷水抽搐中文字幕| 51国产日韩欧美| 黄色一级大片看看| 国产高清激情床上av| av女优亚洲男人天堂| 老司机深夜福利视频在线观看| 国产主播在线观看一区二区| 国产欧美日韩一区二区精品| 国产成+人综合+亚洲专区| 久久久久久久久大av| 99热6这里只有精品| 亚洲经典国产精华液单 | 亚洲男人的天堂狠狠| 91久久精品电影网| 一个人观看的视频www高清免费观看| 欧美潮喷喷水| 九九久久精品国产亚洲av麻豆| 欧美色欧美亚洲另类二区| 波野结衣二区三区在线| 久久久精品欧美日韩精品| 国产麻豆成人av免费视频| 简卡轻食公司| 两性午夜刺激爽爽歪歪视频在线观看| 国产私拍福利视频在线观看| 国产中年淑女户外野战色| 老熟妇乱子伦视频在线观看| 变态另类丝袜制服| 免费看日本二区| 色哟哟哟哟哟哟| 色精品久久人妻99蜜桃| 国产欧美日韩精品一区二区| 午夜福利欧美成人| 99精品久久久久人妻精品| 亚洲色图av天堂| 国产一区二区激情短视频| 蜜桃久久精品国产亚洲av| 亚洲成人久久性| 69人妻影院| 亚洲在线自拍视频| 亚洲国产精品999在线| 久久久色成人| 黄色一级大片看看| 国产精品日韩av在线免费观看| 99热这里只有精品一区| 好男人电影高清在线观看| 97热精品久久久久久| 日日摸夜夜添夜夜添av毛片 | 最新中文字幕久久久久| 国产中年淑女户外野战色| 99视频精品全部免费 在线| 90打野战视频偷拍视频| av黄色大香蕉| 久久人人精品亚洲av| 一本一本综合久久| 国产精品一区二区三区四区免费观看 | 日韩欧美在线二视频| 亚洲av成人不卡在线观看播放网| 性插视频无遮挡在线免费观看| 麻豆一二三区av精品| 宅男免费午夜| 亚洲精品456在线播放app | 国产真实伦视频高清在线观看 | 校园春色视频在线观看| 日本免费一区二区三区高清不卡| 免费搜索国产男女视频| 在线国产一区二区在线| 国产伦精品一区二区三区视频9| 亚洲欧美激情综合另类| 色哟哟哟哟哟哟| 亚洲精品影视一区二区三区av| 韩国av一区二区三区四区| 国产成年人精品一区二区| 亚洲成a人片在线一区二区| 亚洲一区二区三区色噜噜| 女人十人毛片免费观看3o分钟| 国产在线男女| 日韩欧美三级三区| 亚洲男人的天堂狠狠| 国产三级在线视频| 男人和女人高潮做爰伦理| 亚洲欧美日韩东京热| 变态另类丝袜制服| 黄色丝袜av网址大全| 亚洲av成人不卡在线观看播放网| 日韩高清综合在线| 757午夜福利合集在线观看| 久久久久久久午夜电影| 又爽又黄a免费视频| 18禁黄网站禁片免费观看直播| 国产真实乱freesex| 一级黄色大片毛片| 色综合站精品国产| 国产在线精品亚洲第一网站| 18禁黄网站禁片免费观看直播| bbb黄色大片| 国产午夜福利久久久久久| 我要搜黄色片| 高潮久久久久久久久久久不卡| av国产免费在线观看| 欧美日韩福利视频一区二区| 在线a可以看的网站| 嫩草影院新地址| 看片在线看免费视频| 色吧在线观看| 精品99又大又爽又粗少妇毛片 | 神马国产精品三级电影在线观看| 久久午夜亚洲精品久久| 国产精品98久久久久久宅男小说| 一个人免费在线观看电影| 国产精品电影一区二区三区| 亚洲综合色惰| 欧美日韩亚洲国产一区二区在线观看| 亚洲精品亚洲一区二区| 男插女下体视频免费在线播放| 亚洲av五月六月丁香网| 一个人免费在线观看的高清视频| 精品人妻一区二区三区麻豆 | 好男人在线观看高清免费视频| 一个人看视频在线观看www免费| 色吧在线观看| 99精品久久久久人妻精品| 国产高清视频在线播放一区| 日韩有码中文字幕| 女同久久另类99精品国产91| 午夜免费激情av| 国产亚洲精品久久久久久毛片| 一区二区三区免费毛片| 欧美色视频一区免费| 国产av麻豆久久久久久久| 亚洲美女视频黄频| 色综合欧美亚洲国产小说| 久久人人精品亚洲av| 欧美xxxx性猛交bbbb| 1000部很黄的大片| 国产亚洲精品久久久com| 一个人看的www免费观看视频| 亚洲七黄色美女视频| 日日摸夜夜添夜夜添av毛片 | 美女xxoo啪啪120秒动态图 | 国产精品三级大全| 免费黄网站久久成人精品 | 精品无人区乱码1区二区| 每晚都被弄得嗷嗷叫到高潮| 午夜福利在线观看吧| 人妻制服诱惑在线中文字幕| 国产一区二区三区在线臀色熟女| 高潮久久久久久久久久久不卡| 99热只有精品国产| 日本三级黄在线观看| 国产不卡一卡二| 女人被狂操c到高潮| 在线观看av片永久免费下载| 久99久视频精品免费| 身体一侧抽搐| 俺也久久电影网| 网址你懂的国产日韩在线| 最近中文字幕高清免费大全6 | av黄色大香蕉| 欧美午夜高清在线| 在线播放国产精品三级| eeuss影院久久| 精品日产1卡2卡| 3wmmmm亚洲av在线观看| 亚洲第一欧美日韩一区二区三区| 国产真实伦视频高清在线观看 | 午夜久久久久精精品| 国产欧美日韩一区二区三| 中文字幕人妻熟人妻熟丝袜美| 亚洲激情在线av| 在线播放国产精品三级| 日韩欧美一区二区三区在线观看| 欧洲精品卡2卡3卡4卡5卡区| 91av网一区二区| 色av中文字幕| 久久精品久久久久久噜噜老黄 | 国产精品久久久久久久久免 | 欧美国产日韩亚洲一区| 成年女人永久免费观看视频| 欧美不卡视频在线免费观看| 欧美日韩福利视频一区二区| 精华霜和精华液先用哪个| 日本一本二区三区精品| 在线观看美女被高潮喷水网站 | 免费搜索国产男女视频| 午夜福利高清视频| 亚洲欧美精品综合久久99| 丰满人妻一区二区三区视频av| 99久久99久久久精品蜜桃| 色精品久久人妻99蜜桃| 男人舔奶头视频| 久久伊人香网站| 亚洲av日韩精品久久久久久密| 日本熟妇午夜| 真人一进一出gif抽搐免费| 国产午夜精品久久久久久一区二区三区 | 欧美黄色片欧美黄色片| 国产成+人综合+亚洲专区| 日本一二三区视频观看| 无遮挡黄片免费观看| 十八禁国产超污无遮挡网站| 国产黄a三级三级三级人| a级一级毛片免费在线观看| 亚洲av成人av| 国产色爽女视频免费观看| 一进一出好大好爽视频| 观看免费一级毛片| 国产成年人精品一区二区| 怎么达到女性高潮| 有码 亚洲区| 欧美高清成人免费视频www| 欧美一区二区亚洲| 国产精品乱码一区二三区的特点| 两个人视频免费观看高清| 激情在线观看视频在线高清| 毛片一级片免费看久久久久 | 在线国产一区二区在线| 欧美性感艳星| 欧美绝顶高潮抽搐喷水| 欧美在线一区亚洲| 在线a可以看的网站| 久久性视频一级片| 悠悠久久av| 国产麻豆成人av免费视频| 最好的美女福利视频网| 国产v大片淫在线免费观看| 日本 av在线| 成人一区二区视频在线观看| 啪啪无遮挡十八禁网站| 变态另类成人亚洲欧美熟女| 国产亚洲av嫩草精品影院| 永久网站在线| 一级作爱视频免费观看| 日韩欧美国产一区二区入口| 欧美丝袜亚洲另类 | 免费电影在线观看免费观看| 天堂网av新在线| a级毛片免费高清观看在线播放| 亚洲国产日韩欧美精品在线观看| 嫩草影院新地址| 三级男女做爰猛烈吃奶摸视频| 午夜福利视频1000在线观看| 亚洲一区二区三区色噜噜| 三级毛片av免费| 无遮挡黄片免费观看| 欧美高清性xxxxhd video| 男女床上黄色一级片免费看| 久久久精品大字幕| 丰满乱子伦码专区| 久久久久久久久中文| 一夜夜www| 一级黄色大片毛片| 麻豆国产av国片精品| 好男人电影高清在线观看| 免费看日本二区| 色综合亚洲欧美另类图片| 日韩大尺度精品在线看网址| 免费看日本二区| 久久欧美精品欧美久久欧美| 国产单亲对白刺激| 草草在线视频免费看| 亚洲三级黄色毛片| 听说在线观看完整版免费高清| 99国产精品一区二区三区| 亚洲精品影视一区二区三区av| 精品国产亚洲在线| 亚洲人与动物交配视频| 无遮挡黄片免费观看| 久久伊人香网站| 波多野结衣高清作品| 日韩欧美在线乱码| av视频在线观看入口| 国产亚洲精品久久久久久毛片| 午夜精品久久久久久毛片777| 欧美潮喷喷水| av在线天堂中文字幕| 欧美激情久久久久久爽电影| 日韩高清综合在线| 国产高潮美女av| 美女高潮的动态| 草草在线视频免费看| 国产色婷婷99| 舔av片在线| 少妇高潮的动态图| 午夜福利视频1000在线观看| 亚洲 国产 在线| 欧美成人免费av一区二区三区|