WebService測(cè)試方案_第1頁(yè)
WebService測(cè)試方案_第2頁(yè)
WebService測(cè)試方案_第3頁(yè)
WebService測(cè)試方案_第4頁(yè)
WebService測(cè)試方案_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、WebService測(cè)試方案by 姚婷婷2011-1-131. WebService簡(jiǎn)介WebService是一種革命性的分布式計(jì)算技術(shù),本質(zhì)上就是網(wǎng)絡(luò)上可用的API,可以直接在網(wǎng)絡(luò)環(huán)境調(diào)用的方法。WebService常用的框架有axis、xfire、cxf等。WebService發(fā)布后,其服務(wù)是封裝在一個(gè)wsdl(Web Services Description Language,Web服務(wù)描述語(yǔ)言)文件中,客戶端發(fā)請(qǐng)求主要是向發(fā)布好的wsdl地址以SOAP方式發(fā)請(qǐng)求,調(diào)用過(guò)程如下:Ø 服務(wù)端:n 生成服務(wù)描述文件,以供客戶端獲取。n 接收客戶端發(fā)來(lái)的SOAP請(qǐng)求消息,解析其中的方

2、法調(diào)用和參數(shù)格式。n 根據(jù)wsdl和wsml的描述,調(diào)用相應(yīng)的COM對(duì)象來(lái)完成指定功能,并把返回值放入SOAP回應(yīng)消息返回給用戶。Ø 客戶端:n 取得服務(wù)端的服務(wù)描述文件,解析該文件從而獲得服務(wù)端的服務(wù)信息以及調(diào)用方式。n 指定調(diào)用方法和參數(shù),生成恰當(dāng)?shù)腟OAP請(qǐng)求消息,發(fā)往服務(wù)端。n 等待服務(wù)端返回的SOAP回應(yīng)消息,解析得到返回值。2. WebService測(cè)試說(shuō)明WebService的測(cè)試主要圍繞功能測(cè)試、性能測(cè)試和安全性測(cè)試展開,下面主要描述WebService三大測(cè)試的要點(diǎn)。2.1 WebService功能測(cè)試測(cè)試目的:測(cè)試系統(tǒng)所實(shí)現(xiàn)WebService接口的功能。進(jìn)入條件

3、:開發(fā)人員提供已實(shí)現(xiàn)功能的程序包,和待測(cè)試webservice的方法名、參數(shù)以及實(shí)現(xiàn)的功能描述。測(cè)試要點(diǎn):不同的參數(shù)組合,應(yīng)按設(shè)計(jì)要求返回相應(yīng)的信息。2.2 WebService性能測(cè)試測(cè)試目的:測(cè)試系統(tǒng)所實(shí)現(xiàn)WebService接口的性能。進(jìn)入條件:WebService接口的功能測(cè)試已完畢。測(cè)試要點(diǎn):測(cè)試并發(fā)調(diào)用WebService接口,觀察其性能表現(xiàn),主要是在不同的并發(fā)量、持續(xù)運(yùn)行時(shí)間和數(shù)據(jù)庫(kù)不同容量下,事務(wù)的響應(yīng)時(shí)間、總事務(wù)數(shù)、事務(wù)的成功率、點(diǎn)擊率等,同時(shí)監(jiān)控硬件資源的消耗情況。2.3 WebService安全性測(cè)試測(cè)試目的:測(cè)試系統(tǒng)所實(shí)現(xiàn)WebService接口的安全性。進(jìn)入條件:We

4、bService接口的功能測(cè)試已完畢。測(cè)試要點(diǎn):測(cè)試WebService接口的調(diào)用是否有用戶名、密碼驗(yàn)證,惡意調(diào)用是否會(huì)導(dǎo)致系統(tǒng)崩潰等。3. WebService功能測(cè)試目前掌握的測(cè)試工具soapUI可以進(jìn)行WebService的功能測(cè)試,下面以測(cè)試存儲(chǔ)服務(wù)的PIXManager接口詳細(xì)介紹使用soapUI進(jìn)行WebService功能測(cè)試的操作步驟。3.1 新建工程1、 單擊File-> New soapUI Project,如下圖:2、 在彈出的對(duì)話框中輸入待測(cè)試的ws信息,然后點(diǎn)擊 OK 到下一步Project Name:PIXManagerInitial WSDL/WADL:Cre

5、ate Requests:選中Create TestSuite:選中Relative Paths:選中3、 保存project4、 生成初始的測(cè)試用例選擇One TestCase for each Operation:每個(gè)接口創(chuàng)建一個(gè)用例選擇Create new empty requests:創(chuàng)建一個(gè)空的請(qǐng)求Operations:選擇待測(cè)試的方法選擇Generates a default LoadTest for each created TeseCase:每個(gè)用例生成一個(gè)負(fù)責(zé)測(cè)試(為后面性能測(cè)試做準(zhǔn)備)5、 生成TestSuite這里可以根據(jù)習(xí)慣更改TestSuite的名稱,如TestSui

6、te:PIXManager。6、 在soapUI的左側(cè)生成如下目錄此時(shí)新建project已完成!3.2 發(fā)送請(qǐng)求1、創(chuàng)建項(xiàng)目的時(shí)候我們選擇了Create sample requests for all operations,所以每個(gè)接口方法都會(huì)自動(dòng)創(chuàng)建一個(gè)請(qǐng)求,如下圖:2、雙擊它就可以打開編輯面板,左邊是請(qǐng)求內(nèi)容,右邊是響應(yīng)內(nèi)容。3、在Form頁(yè)面輸入?yún)?shù),單擊按鈕執(zhí)行,右側(cè)查看結(jié)果。根據(jù)反饋的結(jié)果判斷請(qǐng)求是否發(fā)送成功。輸入的xml內(nèi)容如下:<?xml version="1.0" encoding="GB2312"?> <V_PATIE

7、NTREGC99999999 xsi:noNamespaceSchemaLocation="PATIENTREGC99999999.xsd" xmlns:xsi=""> <MEDICALSERVICE_NO>01</MEDICALSERVICE_NO> <NAME>小花</NAME> <BIRTH_DATE>1988-02-01T00:00:00</BIRTH_DATE> <GENDER_CD>1</GENDER_CD> <GENDER_VALUE

8、>男性</GENDER_VALUE> <MARITAL_ST_CD>10</MARITAL_ST_CD> <MARITAL_ST_VALUE>未婚</MARITAL_ST_VALUE> <ID_NO_CD>01</ID_NO_CD> <ID_NO_VALUE>居民身份證</ID_NO_VALUE> <ID_NO>12586</ID_NO> <MEDICARE_CD>01</MEDICARE_CD> <MEDICARE_VALUE

9、>社會(huì)基本醫(yī)療保險(xiǎn)</MEDICARE_VALUE> <MEDICAL_INSURANCE_NO>Y001</MEDICAL_INSURANCE_NO> <AR_CD>111</AR_CD> <AD_CD>01</AD_CD> <AD_VALUE>戶籍住址</AD_VALUE> <PROVINCE_NAME>上海</PROVINCE_NAME> <CITY_NAME>上海</CITY_NAME> <AREA_NAME>浦東

10、區(qū)</AREA_NAME> <STREET_ID>霞飛路</STREET_ID> <VILLAGE_NAME>街</VILLAGE_NAME> <HOUSE_NO>門牌號(hào)</HOUSE_NO> <TEL_TYPE_CD>01</TEL_TYPE_CD> <TEL_TYPE_VALUE>本人電話</TEL_TYPE_VALUE> <TEL_NO>1232312</TEL_NO> <REGISTER_DATE>2010-09-27T

11、14:31:00</REGISTER_DATE> <RECORDER_NAME>小芳</RECORDER_NAME> <REGISTER_PERSON_CODE>01</REGISTER_PERSON_CODE> <REGISTER_ORG_CODE>01</REGISTER_ORG_CODE> <REGISTER_ORG_NAME>中科</REGISTER_ORG_NAME> <SEND_TIME>2010-09-27T14:32:00</SEND_TIME>

12、<SEND_ORG_CODE>798921772</SEND_ORG_CODE> <SEND_SYSTEM>222222222222</SEND_SYSTEM> </V_PATIENTREGC99999999>4. WebService性能測(cè)試目前掌握的是兩個(gè)測(cè)試工具soapUI和LoadRunner,其中soapUI可以進(jìn)行WebService的功能和性能測(cè)試,而LoadRunner主要是性能測(cè)試。下面分別介紹兩個(gè)工具進(jìn)行WebService性能測(cè)試的步驟。1.2.4.1 采用soapUI測(cè)試步驟基于前面soapUI功能測(cè)試的步驟,

13、若已成功,可將腳本參數(shù)化后用于性能測(cè)試,具體步驟如下:4.1.1 數(shù)據(jù)生成器1、右鍵單擊Test Steps,Add Step->DataGen,如下圖:2、輸入步驟名稱3、設(shè)置生成方法1) 點(diǎn)擊新建2) 定義名稱和類型Name:自定義,如MEDICALSERVICE_NOType:選擇Number型,3) 設(shè)置為Randomize instead of step4.1.2 參數(shù)化打開待參數(shù)化的請(qǐng)求,找到需參數(shù)化的內(nèi)容,選中并右鍵單擊,如下圖:。選擇Get Data->Step 1:DataGen->property MEDICALSERVICE_NO原來(lái)的數(shù)據(jù)被替換為:$D

14、ataGen#MEDICALSERVICE_NO4.1.3 場(chǎng)景執(zhí)行和監(jiān)控1、打開TestSuite:PIXManager->registerPatientInterface->Load Tests->registerPatientInterface2、設(shè)置并發(fā)線程,單擊執(zhí)行測(cè)試4.1.4 結(jié)果分析4.2 采用LoadRunner測(cè)試步驟4.2.1 腳本準(zhǔn)備1.選擇協(xié)議2、導(dǎo)入wsdl3、Add Service Call 設(shè)置好后生成如下腳本:web_service_call( "StepName=registerPatientInterface_101"

15、,"SOAPMethod=PIXManager_Service|PIXManager_ServicePort|registerPatientInterface","ResponseParam=response","Service=PIXManager_Service","ExpectedResponse=SoapResult","Snapshot=t1294907356.inf",BEGIN_ARGUMENTS,"msgID=","sendMsgOrgID=&quo

16、t;,"sendMsgPosID=","eventDateTime=","eventDateTimeSpecified=","xml=",END_ARGUMENTS,BEGIN_RESULT,"return=Param_return",END_RESULT,LAST);4、輸入?yún)?shù)1) 輸入msgID、sendMsgOrgID、sendMsgPosID、eventDateTime、eventDateTimeSpecified;"msgID=11111","sendM

17、sgOrgID=111111","sendMsgPosID=111111","eventDateTime=2011-01-12 10:10:10","eventDateTimeSpecified=true",2) 輸入Xml;"xml=<?xml version="1.0" encoding="GB2312"?> ""<V_PATIENTREGC99999999 xsi:noNamespaceSchemaLocation="PA

18、TIENTREGC99999999.xsd" xmlns:xsi="">"" <MEDICALSERVICE_NO>01</MEDICALSERVICE_NO>"" <NAME>小花</NAME>"" <BIRTH_DATE>1988-02-01T00:00:00</BIRTH_DATE>"" <GENDER_CD>1</GENDER_CD>"" <GENDE

19、R_VALUE>男性</GENDER_VALUE>"" <MARITAL_ST_CD>10</MARITAL_ST_CD>"" <MARITAL_ST_VALUE>未婚</MARITAL_ST_VALUE>"" <ID_NO_CD>01</ID_NO_CD>"" <ID_NO_VALUE>居民身份證</ID_NO_VALUE>"" <ID_NO></ID_NO>

20、;"" <MEDICARE_CD>01</MEDICARE_CD>"" <MEDICARE_VALUE>社會(huì)基本醫(yī)療保險(xiǎn)</MEDICARE_VALUE>"" <MEDICAL_INSURANCE_NO>Y001</MEDICAL_INSURANCE_NO>"" <AR_CD>111</AR_CD>"" <AD_CD>01</AD_CD>"" <AD_

21、VALUE>戶籍住址</AD_VALUE>"" <PROVINCE_NAME>上海</PROVINCE_NAME>"" <CITY_NAME>上海</CITY_NAME>"" <AREA_NAME>浦東區(qū)</AREA_NAME>"" <STREET_ID>霞飛路</STREET_ID>"" <VILLAGE_NAME>街</VILLAGE_NAME>"

22、;" <HOUSE_NO>門牌號(hào)</HOUSE_NO>"" <TEL_TYPE_CD>01</TEL_TYPE_CD>"" <TEL_TYPE_VALUE>本人電話</TEL_TYPE_VALUE>"" <TEL_NO>1232312</TEL_NO>"" <REGISTER_DATE>2010-09-27T14:31:00</REGISTER_DATE>"" <

23、;RECORDER_NAME>小芳</RECORDER_NAME>"" <REGISTER_PERSON_CODE>01</REGISTER_PERSON_CODE>"" <REGISTER_ORG_CODE>01</REGISTER_ORG_CODE>"" <REGISTER_ORG_NAME>中科</REGISTER_ORG_NAME>"" <SEND_TIME>2010-09-27T14:32:00</

24、SEND_TIME>"" <SEND_ORG_CODE>798921772</SEND_ORG_CODE>"" <SEND_SYSTEM>222222222222</SEND_SYSTEM>"" </V_PATIENTREGC99999999>",5、腳本增強(qiáng)1) 參數(shù)化;2) 增加事務(wù)并打印返回結(jié)果;lr_start_transaction("registerPatientInterface");if (strstr(lr_eval_string("Param_return"),"C99999999$")=NULL) if (strstr(lr_eval_string("Param_return"),"em

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論