《太原理工大學(xué)軟件測試實(shí)驗(yàn)報(bào)告.doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《太原理工大學(xué)軟件測試實(shí)驗(yàn)報(bào)告.doc(27頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
本科實(shí)驗(yàn)報(bào)告
課程名稱: 軟件測試技術(shù)
實(shí)驗(yàn)項(xiàng)目: 軟件測試技術(shù)實(shí)驗(yàn)
實(shí)驗(yàn)地點(diǎn): 逸夫樓304
專業(yè)班級(jí): 軟件1415 學(xué)號(hào):2014005960
學(xué)生姓名: 朱偉
指導(dǎo)教師: 蘭方鵬
2016 年 9 月 12日
實(shí)驗(yàn)名稱
實(shí)驗(yàn)一白盒測試方法
實(shí)驗(yàn)地點(diǎn)
逸夫樓304
實(shí)驗(yàn)時(shí)間
2016.09.23
一、實(shí)驗(yàn)?zāi)康暮鸵?
⑴ 熟練掌握白盒測試方法中的邏輯覆蓋和路徑測試覆蓋方法。
⑵ 通過實(shí)驗(yàn)掌握邏輯覆蓋測試的測試用例設(shè)計(jì),掌握程序流圖的繪制。
⑶ 運(yùn)用所學(xué)理論,完成實(shí)驗(yàn)研究的基本訓(xùn)練過程。
二、實(shí)驗(yàn)內(nèi)容和原理
實(shí)驗(yàn)內(nèi)容:測試以下程序段
Void DoWork(int x,int y,int z)
{
1 int k=0,j=0;
2 if((x>0)&&(z<10))
3 {
4 k=x*y-1;
5 j=sqrt(k);
6 }
7 if((x==4)||(y>5))
8 j=x*y+10;
9 j=j%3;
10}
三、主要儀器設(shè)備
筆記本電腦
四、操作方法與實(shí)驗(yàn)步驟
⑴ 畫出程序的控制流圖(用題中給出的語句編號(hào)表示)。
⑵ 分別以語句覆蓋、分支覆蓋、條件覆蓋和基本路徑覆蓋法設(shè)計(jì)測試用例,并寫出每個(gè)測試用例的執(zhí)行路徑(用題中給出的語句編號(hào)表示)。
⑶ 編寫完整的 4->5 程序(含輸入和輸出),使用你所設(shè)計(jì)的測試用例運(yùn)行上述程序段。完整填寫相應(yīng)的測試用例表(語句覆蓋測試用例表、分支覆蓋測試用例表、條件覆蓋測試用例表、基本路徑測試用例表)
五、實(shí)驗(yàn)數(shù)據(jù)記錄和處理
測試用例表
用例編號(hào)
輸入
期望結(jié)果
覆蓋標(biāo)準(zhǔn)
覆蓋路徑
實(shí)際結(jié)果
1
x=4, y=6,z=7;
j=1;k=23
語句覆蓋
abcdfghj
j=1
k=23
2
x=4,
y=6,z=7
j=1;
k=23
判定覆蓋
abcdfghj
j=1;
k=23
3
x=4, y=4,z=11
j=2;
k=0
判定覆蓋
abeghj
j=2;
k=0;
4
x=4,
y=4,z=11
j=2;
k=0
條件覆蓋
abeghj
j=2;
k=0
5
x=0, y=6,z=9
j=1;
k=0
條件覆蓋
abeghj
j=1;
k=0
6
x=4,
y=6,z=7
j=1;
k=23
基本路徑覆蓋
abcdfghj
j=1;k=23
7
x=3, y=4,z=9
j=2;
k=11
基本路徑覆蓋
abcdfij
j=2;
k=11
8
x=0, y=6,z=11
j=1;
k=0
基本路徑覆蓋
abeghj
j=1;
k=0
9
x=0,
y=4,z=11
j=2;
k=0
基本路徑覆蓋
abeij
j=2;
k=0
六、實(shí)驗(yàn)結(jié)果與分析
期望結(jié)果與實(shí)際結(jié)果相同
1、 語句覆蓋:(覆蓋路徑:abcdfghj)
2、 判定覆蓋:
(1) 覆蓋路徑(abcdfghj)
(2) 覆蓋路徑(abeghj)
3、 條件覆蓋
(1) 覆蓋路徑(abeghj)
(2) 覆蓋路徑(abeghj)
4、 基本路徑覆蓋
(1) 覆蓋路徑(abcdfghj)
(2) 覆蓋路徑(abcdfij)
(3) 覆蓋路徑(abeghj)
(4) 覆蓋路徑(abeij)
5、 程序代碼
#include
#include
#include
void DoWork(int x,int y,int z){
int k=0,j=0;
if ((x>0)&&(z<10)){
k=x*y-1;
j=sqrt(k);
}
if((x=4)||(y>5)){
j=x*y+10;
}
j=j%3;
printf("j=%d\n",j);
printf("k=%d\n",k);
}
void main(){
int a,b,c;
printf("請(qǐng)輸入第一個(gè)數(shù):");
scanf("%d",&a);
printf("請(qǐng)輸入第二個(gè)數(shù):");
scanf("%d",&b);
printf("請(qǐng)輸入第三個(gè)數(shù):");
scanf("%d",&c);
DoWork(a,b,c);
printf("軟件1415班 朱偉 2014005960");
system("pause");
}
七、討論、心得
通過實(shí)驗(yàn),用Diagram Designer軟件畫了流程圖,讓我充分理解并且掌握了白盒測試方法,對(duì)于語句覆蓋,判定覆蓋,條件覆蓋,基本路徑覆蓋的掌握更加清晰透徹,每一種方法對(duì)于我們的測試都十分適用
實(shí)驗(yàn)名稱
實(shí)驗(yàn)二黑盒測試方法
實(shí)驗(yàn)地點(diǎn)
逸夫樓402
實(shí)驗(yàn)時(shí)間
2016.09.27
一、實(shí)驗(yàn)?zāi)康暮鸵?
⑴ 熟練掌握黑盒測試方法中的等價(jià)類測試方法和邊界值測試方法。
⑵ 通過實(shí)驗(yàn)掌握如何應(yīng)用黑盒測試方法設(shè)計(jì)測試用例。
⑶ 運(yùn)用所學(xué)理論,完成實(shí)驗(yàn)研究的基本訓(xùn)練過程。
二、實(shí)驗(yàn)內(nèi)容和原理
1.用你熟悉的語言編寫一個(gè)判斷三角形問題的程序。要求:讀入代表三角形邊長的三個(gè)整數(shù),判斷它們能否組成三角形。如果能夠,則輸出三角形是等邊、等腰或一般三角形的識(shí)別信息;如何不能構(gòu)成三角形,則輸出相應(yīng)提示信息。
2.使用等價(jià)類方法和邊界值方法設(shè)計(jì)測試用例。
三、主要儀器設(shè)備
筆記本電腦
四、操作方法與實(shí)驗(yàn)步驟
⑴ 先用等價(jià)類和邊界值方法設(shè)計(jì)測試用例,然后用白盒法進(jìn)行檢驗(yàn)與補(bǔ)充。
⑵ 判斷三角形問題的程序流程圖和程序流圖如圖 1 和圖 2 所示。用你熟悉 的語言編寫源程序。
⑶ 使用等價(jià)類方法設(shè)計(jì)測試用例,并填寫完成表 2 和表 3。
⑷ 輸入設(shè)計(jì)好的測試用例,執(zhí)行源程序,記錄輸出結(jié)果。
五、實(shí)驗(yàn)數(shù)據(jù)記錄和處理
表 2. 等價(jià)類劃分表
輸入條件
有效等價(jià)類
無效等價(jià)類
是否構(gòu)成三角形
1.任意兩邊之和大于第三邊
4.兩邊之和小于第三邊
5.兩邊之和等于第三邊
6.存在一邊為0
7.存在兩邊為0
8.存在三邊為0
9.存在一邊不是整數(shù)
10.存在兩邊不是整數(shù)
11.存在三邊不是整數(shù)
是否等腰三角形
2.三邊中任意兩邊長度相等
12.任意兩邊不等
是否等邊三角形
3.三角形三邊長度都相等
13.三邊不等
表 3. 測試用例表
用例編號(hào)
測試數(shù)據(jù)
( A,B,C)
等價(jià)類覆蓋情況
輸出
1
3,2,5
覆蓋等價(jià)類5
2
3,2,7
覆蓋等價(jià)類4
3
0,2,3
覆蓋等價(jià)類6
4
0,0,3
覆蓋等價(jià)類7
5
0,0,0
覆蓋等價(jià)類8
6
1.5,2,3
覆蓋等價(jià)類9
7
1.5,2.5,3
覆蓋等價(jià)類10
8
1.5,2.5,2.8
覆蓋等價(jià)類11
9
3,4,5
覆蓋等價(jià)類1,12
10
3,3,5
覆蓋等價(jià)類1,2,13
11
3,3,3,
覆蓋等價(jià)類1,3
邊界值分析法
3、 代碼:
#include
#include
void main(){
int a,b,c;
printf("請(qǐng)輸入三個(gè)整數(shù):a,b,c:");
scanf("%d %d %d",&a,&b,&c);
if(((b+c)>a)&&((c+a)>b)&&((a+b)>c)){
if(a==b&&b==c){
printf("該三角形為等邊三角形\n");
}else if(a==b||b==c||c==a){
printf("該三角形為等腰三角形\n");
}else{
printf("該三角形為普通三角形\n");
}
}
else{
printf("該數(shù)值不能組成三角形\n");
}
printf("軟件1415班 朱偉 2014005960");
system("pause");
}
六、實(shí)驗(yàn)結(jié)果與分析
七、討論、心得
通過實(shí)驗(yàn),使我充分理解并且掌握了等價(jià)類劃分法和邊界值法,我們也應(yīng)該熟練掌握黑盒測試的方法。掌握并熟悉每一種測試方法,才能在測試中提高軟件的質(zhì)量,保證軟件能夠達(dá)到要求。
實(shí)驗(yàn)名稱
實(shí)驗(yàn)三 QTP 自動(dòng)化測試
實(shí)驗(yàn)地點(diǎn)
逸夫樓402
實(shí)驗(yàn)時(shí)間
2016.09.30
一、實(shí)驗(yàn)?zāi)康暮鸵?
⑴ 實(shí)驗(yàn)要求自帶筆記本,安裝 QTP 軟件(V9.2),獨(dú)立完成實(shí)驗(yàn)內(nèi)容,可以互相討論。
⑵ 實(shí)驗(yàn)?zāi)康牧私?QTP 軟件,熟悉 QTP 自動(dòng)化測試原理;掌握 QTP 軟件的腳本錄制;掌握 QTP 檢查點(diǎn)的插入,能夠利用QTP 軟件進(jìn)行功能測試(界面測試)和回歸測試。
二、實(shí)驗(yàn)內(nèi)容和原理
⑴ 實(shí)驗(yàn)原理
Qui4->5k T8st Pro98ssion1l 簡稱 QTP,是 M8r4->5ury Int8r14->5tiv8 公司開發(fā)一款自動(dòng)化測試軟件,該公司于 2006 年 11 月被 HP 公司收購。QTP 自動(dòng)化測試軟件主要側(cè)重于功能測試(界面測試)和回歸測試。
⑵ 實(shí)驗(yàn)內(nèi)容本實(shí)驗(yàn)以 QTP9.2 版本為例,首先對(duì) QTP 自帶實(shí)例“9li10ht R8s8v1tion10”(飛機(jī)訂票
系統(tǒng))進(jìn)行腳本錄制,然后插入檢查點(diǎn)進(jìn)行測試,最后分析和討論實(shí)驗(yàn)結(jié)果。
三、主要儀器設(shè)備
⑴ 筆記本電腦(win7ows 操作系統(tǒng))
⑵ QTP9.2
四、操作方法與實(shí)驗(yàn)步驟
1.安裝 QTP9.2,啟動(dòng)該軟件。先解壓文件,解壓后先查看“安裝重要說明”文件,根據(jù)該文件說明進(jìn)行安裝,安裝成功后需要重新啟動(dòng)電腦,根據(jù)軟件提示操作即可。安裝完成后啟動(dòng)“Qui4->5kT8st Pro98ssion1l”,進(jìn)入軟件主界面。
2.對(duì) (飛機(jī)訂票)系統(tǒng)進(jìn)行腳本錄制。
⑴ 啟動(dòng) QTP 軟件快捷方式,進(jìn)入 QTP 工作界面。
⑵ 點(diǎn)擊工具欄上的“record”圖標(biāo)進(jìn)行腳本錄制,如圖 3 所示:
圖3
⑶在彈出的“RecordandRunSettings”對(duì)話框中切換至“Windows Applications”標(biāo)簽,如圖4 所示:
圖4
⑷ 在彈出的對(duì)話框中,選擇“Application details:”中右邊的“+”標(biāo)簽,如圖 5
所示:
圖5
⑸ 在彈出的對(duì)話框中按照默認(rèn)選項(xiàng)選擇,然后點(diǎn)擊“ok”按鈕,如圖6 所示:
圖6
⑹ 在彈出的“Login”界面中輸入用戶名和密碼,如圖7 所示。注意:用戶名至 少是4 個(gè)字符,密碼是“mercury”。
圖7
⑺在彈出的“Flight Reservation”窗口中選擇訂票日期、出發(fā)地和目的地,然后 選擇“Flight”圖標(biāo)選擇航班,如圖8 所示。注意:日期格式“MM—DD--YY”,并 且必須是當(dāng)前日期之后。
圖8
⑻ 在彈出的“Flight Table”表中選擇一趟航班,點(diǎn)擊“ok”按鈕返回。
⑼ 在“Name”中填寫訂票人姓名,選擇訂票數(shù)目“Ticktets”和倉位“Class”,然后 點(diǎn)擊“Insert Order”按鈕,生成訂單,如圖9 所示。
圖9
⑽ 選擇工具欄“File”菜單中的“Exit”子菜單或者點(diǎn)擊關(guān)閉按鈕,關(guān)閉“Flight Reservation”窗口。點(diǎn)擊 QTP 主界面工具欄中的“Stop”按鈕,停止腳本錄制。至 此,訂票系統(tǒng)錄制完畢,如圖10 所示:
圖10
3.保存錄制腳本并對(duì)腳本進(jìn)行回放 首先點(diǎn)擊工具欄上的保存圖標(biāo),保存剛才錄制的腳本,然后點(diǎn)擊“Run”
按鈕,根據(jù)默認(rèn)選擇,對(duì)錄制的腳本進(jìn)行回放并生成測試結(jié)果表,如圖 11
和圖12 所示。
圖11
圖12
在測試結(jié)果表中,Result 結(jié)果為:Done,表明系統(tǒng)運(yùn)行完成,測試結(jié)果是否 滿足預(yù)期?需要加入“檢查點(diǎn)”進(jìn)行驗(yàn)證。
4.插入“檢查點(diǎn)”驗(yàn)證訂單是否生成
⑴ 在“keyword view”視圖中單擊“Insert Order”這一行,同時(shí)QTP 主界面右下 角“Active Screen”中會(huì)顯示這一步操作的界面,如圖13 所示。
圖13
⑵ 在“Action Screen”視圖中“Order No”標(biāo)簽對(duì)應(yīng)的文本框中點(diǎn)鼠標(biāo)右鍵,在 彈出的快捷菜單中選擇“Insert Standard Checkpoint”,如圖14 所示。
圖14
⑶ 在彈出的對(duì)話框中單擊“ok”按鈕打開“Checkpoint properties”對(duì)話框,在該 對(duì)話框中只選擇“text”屬性這一行,然后選擇“insert statement:”中的“After current step”選項(xiàng),單擊“Configure value”標(biāo)簽中“Constant”類型最右邊的圖標(biāo),如圖 15 所示:
圖15
⑷ 在彈出的對(duì)話框中先選中“Regular expression”標(biāo)簽,然后在 Value 中輸入 值:“[0-9]+”,(“[0-9]+”是一個(gè)正則表達(dá)式,該表達(dá)式的含義是判斷是否為數(shù)字), 最后點(diǎn)擊“ok”按鈕,如圖16 所示:
圖16
⑸ 返回“Checkpoint properties”對(duì)話框,單擊“ok”按鈕,至此,檢查點(diǎn)插入成 功,
⑹ 保存腳本,重新運(yùn)行腳本,生成如圖17 所示的測試結(jié)果表。測試結(jié)果表 明測試通過,訂單生成成功。
5.在圖 15 中的“constant”一欄中輸入一個(gè)常數(shù)值,重新運(yùn)行腳本,分析實(shí)驗(yàn)結(jié) 果
圖17
6. 重新錄制腳本。重復(fù)上述過程“2. 對(duì) Flight Resevationg(飛機(jī)訂票)系統(tǒng)進(jìn)行腳 本錄制”中的⑴-⑼,接著錄制以下步驟⑽和⑾。
⑽ 選擇工具欄“File”菜單中的“Fax Order”子菜單,打開“Fax Order No.xx”將機(jī) 票訂單傳真出去,在“Fax Order No.xx”窗口中填寫傳真號(hào)碼以及代理人簽名 “Agent signature”,其中 No.xx 表示生成的傳真訂單號(hào),具體號(hào)碼以實(shí)際為準(zhǔn), 然后點(diǎn)擊“Send”,如圖18 所示:
圖18
⑾ 發(fā)送成功后系統(tǒng)返回“Flight Reservation”,并顯示傳真發(fā)送狀態(tài), 如圖19
所示。
圖19
⑿ 關(guān)閉“Flight Reservation”窗口,停止錄制。 7.回放以上腳本,回放結(jié)果失敗,分析原因。
8.按以下步驟修改。
⒀ 切換到“Keyword View”視圖,鼠標(biāo)右擊“Fax Order No.xx”,在彈出快捷菜 單中選擇“Object Properties”,如圖20 所示。
圖20
⒁ 在彈出的“Object Properties”窗口中點(diǎn)擊text 的Value 值中的圖標(biāo)“<#>”,如 圖21 所示。
圖21
⒂ 在彈出的對(duì)話框中,選中“Regular expression”,把 constant 中的值改為如圖
22 所示的內(nèi)容。
圖22
⒃ 關(guān)閉窗口,重新回放腳本,查看腳本是否回放成功。
9.參照以上實(shí)驗(yàn),再添加一個(gè)驗(yàn)證“Login”界面中“Agent Name”的檢查點(diǎn) 提示:利用正則表達(dá)式對(duì) Agent Name 進(jìn)行校驗(yàn),即:對(duì)不少于4 個(gè)字符的
Agent Name 再加以限定,分別設(shè)計(jì)一個(gè)能夠通過校驗(yàn)的正則表達(dá)式和一個(gè)不能 通過校驗(yàn)的正則表達(dá)式。
五、實(shí)驗(yàn)數(shù)據(jù)記錄和處理(記錄“四、操作方法與實(shí)驗(yàn)步驟”中第9
步的實(shí)驗(yàn)記錄和處理)
6、 實(shí)驗(yàn)結(jié)果與分析(記錄并分析“四、操作方法與實(shí)驗(yàn)步驟”中第9 步的實(shí)驗(yàn)結(jié)果)
七、討論、心得
通過本次實(shí)驗(yàn)學(xué)會(huì)了使用測試軟件進(jìn)行自動(dòng)化測試,對(duì)qtp的使用更加熟練。理解測試工具的好處,給我們節(jié)省了很多不必要的麻煩,也給我們帶來了很多的方便。
鏈接地址:http://m.appdesigncorp.com/p-9298708.html