軟件工程-作業(yè)管理系統(tǒng)的測(cè)試方案的設(shè)計(jì)_第1頁
軟件工程-作業(yè)管理系統(tǒng)的測(cè)試方案的設(shè)計(jì)_第2頁
軟件工程-作業(yè)管理系統(tǒng)的測(cè)試方案的設(shè)計(jì)_第3頁
軟件工程-作業(yè)管理系統(tǒng)的測(cè)試方案的設(shè)計(jì)_第4頁
軟件工程-作業(yè)管理系統(tǒng)的測(cè)試方案的設(shè)計(jì)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

內(nèi)容摘要

作業(yè)管理系統(tǒng)的開發(fā),為了解決授課老師和學(xué)生能借助該系統(tǒng)管理學(xué)生四年以來的

作業(yè)代碼,并且能統(tǒng)計(jì)學(xué)生的代碼總行數(shù)。由于在開發(fā)作業(yè)管理系統(tǒng)不能缺少測(cè)試,本

課題對(duì)作業(yè)管理系統(tǒng)的測(cè)試方案的設(shè)計(jì),目的為了測(cè)試開發(fā)作業(yè)管理系統(tǒng),找到缺陷,

提高開發(fā)系統(tǒng)的質(zhì)量。

本課題的作業(yè)管理系統(tǒng)測(cè)試方案的設(shè)計(jì),首先做一個(gè)測(cè)試需求分析,了解本系統(tǒng)的

系統(tǒng)結(jié)構(gòu),計(jì)劃測(cè)試流程,最后得出一個(gè)測(cè)試需求報(bào)告。根據(jù)需求報(bào)告選擇測(cè)試方法和

工具,編寫和設(shè)計(jì)測(cè)試用例,最后整理缺陷。

為了維護(hù)在教師和學(xué)生與系統(tǒng)的交互上出現(xiàn)的可能錯(cuò)誤,驗(yàn)證系統(tǒng)是否實(shí)現(xiàn)功能需

求,通過測(cè)試作業(yè)管理系統(tǒng),驗(yàn)證了實(shí)現(xiàn)了需求說明書中的所有功能需求,并且在用戶

體驗(yàn)中比較注重。但是仍然在用戶體驗(yàn)的流程中仍然發(fā)現(xiàn)有少部分的缺陷,例如學(xué)生提

交作業(yè)后,回看作業(yè)中沒有存在下載作業(yè)文件的鏈接。但是這些缺陷在不太影響用戶的

使用。還有后臺(tái)管理的頁面中的管理員對(duì)課程、學(xué)生、教師、用戶的管理都需要用戶去

學(xué)習(xí),并不能直觀明白怎么去使用,用戶體驗(yàn)較差。所以通過現(xiàn)在發(fā)現(xiàn)的這些明顯缺陷,

得出作業(yè)管理系統(tǒng)的用戶體驗(yàn)上仍需要有地方要改進(jìn)一下。

關(guān)鍵詞:軟件測(cè)試,測(cè)試用例,需求分析

Abstract

Thedevelopmentofhomeworkmanagementsystem,inordertosolvetheproblem

thatteachersandstudentscanusethesystemtomanagestudents1homeworkcodefor

fouryears,andcancountthetotalnumberofstudents1codelines.Becausethereisno

lackoftestinginthedevelopmentofjobmanagementsystem,thepurposeofthis

projectistotestanddevelopjobmanagementsystem,finddefectsandimprovethe

qualityofdevelopmentsystem.

Thisprojectsjobmanagementsystemtestschemedesign,firstdoatest

requirementsanalysis,understandthesystemstructureofthesystem,planthetest

process,andfinallygetatestrequirementsreport.Selecttestmethodsandtools

accordingtorequirementreport,writeanddesigntestcases,andfinallysortout

defects.

Inordertomaintainthepossibleerrorsintheinteractionbetweenteachersand

studentsandthesystem,andverifywhetherthesystemrealizesthefunctional

requirements,allthefunctionalrequirementsintherequirementsspecificationare

verifiedthroughthetestjobmanagementsystem,andmoreattentionispaidtothe

userexperience.However,therearestillafewdefectsfoundintheprocessofuser

experience.Forexample,afterthestudentssubmitthehomework,thereisnolinkto

downloadthehomeworkfileinthehomework.However,thesedefectsdonotaffect

theuseofusers.Therearebackgroundmanagementofthepageoftheadministrator

ofthecourse,students,teachers,usersneedtolearnthemanagementofusers,and

cannotintuitivelyunderstandhowtouse,userexperienceispoor.Therefore,based

ontheobviousdefectsfoundnow,itcanbeconcludedthatthereisstillroomfor

improvementintheuserexperienceofjobmanagementsystem.

Keywords:softwaretest,testcase,requirementanalysis

目錄

第1章:緒論1

1.1選題的意義和目的1

1.2研究現(xiàn)狀1

1.3課題研究的內(nèi)容和目的2

1.4課題測(cè)試目標(biāo)2

1.5論文結(jié)構(gòu)2

第2章:作業(yè)管理系統(tǒng)的需求分析3

2.1系統(tǒng)背景3

2.2系統(tǒng)的結(jié)構(gòu)4

2.3測(cè)試流程4

2.4測(cè)試需求概述6

2.5測(cè)試需求報(bào)告6

第3章:作業(yè)管理系統(tǒng)測(cè)試方案的測(cè)試環(huán)境及工具7

3.1自動(dòng)化測(cè)試框架設(shè)計(jì)7

3.1.1測(cè)試環(huán)境搭建:7

3.1.2測(cè)試腳本錄制8

3.1.3自動(dòng)化測(cè)試之?dāng)?shù)據(jù)驅(qū)動(dòng),本框架設(shè)計(jì)與實(shí)現(xiàn)9

3.2選擇合適的工具10

3.3測(cè)試的相關(guān)技術(shù)介紹11

3.3.1白盒測(cè)試11

3.3.2黑盒測(cè)試13

第4章:作業(yè)管理系統(tǒng)的測(cè)試方案13

4.1功能測(cè)試13

4.2鏈接測(cè)試19

4.3界面測(cè)試21

4.4兼容性測(cè)試23

4.5性能測(cè)試24

第5章:系統(tǒng)測(cè)試的測(cè)試缺陷說明及結(jié)果33

5.1軟件缺陷的定義33

5.2作業(yè)管理系統(tǒng)存在的缺陷34

第8章:總結(jié)37

參考文獻(xiàn)38

致謝錯(cuò)誤!未定義書簽。

第1章:緒論

本章的主要作用是介紹本課題研究的意義和目的,測(cè)試作業(yè)管理系統(tǒng)的目標(biāo)

和大致的論文結(jié)構(gòu),讓讀者可以從第一章了解到本課題的內(nèi)容。

1.1選題的意義和目的

隨著科學(xué)技術(shù)的日益進(jìn)步,軟件行業(yè)也蓬勃發(fā)展,伴隨而來人們開發(fā)的軟件

越來越多,人們對(duì)于軟件的使用也越來越日?;?,所以在軟件質(zhì)量中,人們對(duì)此

也越來越重視,在此形勢(shì)之下,對(duì)于軟件產(chǎn)品的質(zhì)量的檢驗(yàn)和測(cè)試則成為人們關(guān)

注的重點(diǎn)問題,由此,軟件測(cè)試便應(yīng)運(yùn)而生。⑴

目前,隨著互聯(lián)網(wǎng)的發(fā)展,web應(yīng)用開發(fā)需求逐漸增大,但是當(dāng)一個(gè)web應(yīng)

用被開發(fā)后,隨著軟件競(jìng)爭(zhēng)的愈演愈激烈,軟件質(zhì)量已經(jīng)成為軟件的核心競(jìng)爭(zhēng)力

所在,可見軟件測(cè)試的重視程度越來越高。

所以測(cè)試web應(yīng)用,軟件測(cè)試在整個(gè)web應(yīng)用開發(fā)過程中,起著重要作用。

在web應(yīng)用開發(fā)過程中,項(xiàng)目質(zhì)量的提搞需要依靠代碼質(zhì)量的檢測(cè),對(duì)代碼

常見問題的排查,這樣可以避免開發(fā)后期問題過多,導(dǎo)致更加困難的情況發(fā)生。

通過制定測(cè)試計(jì)劃,有利于對(duì)作業(yè)管理系統(tǒng)的功能性、安全性、可用性進(jìn)行

多方面的測(cè)試,使項(xiàng)目質(zhì)量提高。

軟件測(cè)試工作可以在保證其功能完善的前提下,提高項(xiàng)目的開發(fā)質(zhì)量,將規(guī)

范且科學(xué)化的測(cè)試方法應(yīng)用到web開發(fā)中,有效提高web開發(fā)的效率。

1.2研究現(xiàn)狀

軟件測(cè)試技術(shù)是隨著軟件行業(yè)的產(chǎn)生,發(fā)展而出現(xiàn)的一種技術(shù)。早期的軟件,

由于其規(guī)模和復(fù)雜度都小,軟件的錯(cuò)誤都是由程序員調(diào)試解決。隨著軟件行業(yè)的

發(fā)展,軟件的規(guī)模越來越大,軟件的復(fù)雜度越來越高,就需要專門的軟件的測(cè)試

人員,使用專門的軟件測(cè)試技術(shù)對(duì)軟件進(jìn)行測(cè)試。除了傳統(tǒng)的手動(dòng)測(cè)試外,更多

的是借助專門的軟件測(cè)試工具進(jìn)行自動(dòng)化的軟件測(cè)試,越來越多的軟件測(cè)試工具

被應(yīng)用到軟件測(cè)試中。

1

軟件測(cè)試目的是為了保證軟件質(zhì)量,所以在質(zhì)量控制中,軟件的規(guī)范性不斷

提高,貫穿其中的測(cè)試活動(dòng)也越來越優(yōu)化,其中包括軟件設(shè)計(jì)文檔評(píng)估、測(cè)試規(guī)

劃、測(cè)試結(jié)果報(bào)告。所以在控制軟件測(cè)試過程在根據(jù)現(xiàn)狀的軟件測(cè)試難度,去控

制軟件測(cè)試的時(shí)間以及如何在開發(fā)過程下如何進(jìn)行。

1.3課題研究的內(nèi)容和目的

在本課題中,測(cè)試web應(yīng)用系統(tǒng)會(huì)通過自動(dòng)化工具和手動(dòng)測(cè)試的結(jié)合來完成

本課題的研究的內(nèi)容。所以在本課題中,我會(huì)通過自動(dòng)化測(cè)試,來測(cè)試web應(yīng)

用的功能測(cè)試、界面測(cè)試、鏈接測(cè)試……,和通過手動(dòng)測(cè)試,來測(cè)試部分不必要

用到自動(dòng)化測(cè)試的地方。

本課題目的,通過測(cè)試web應(yīng)用系統(tǒng),說明測(cè)試在開發(fā)過程中的執(zhí)行情況,

比較自動(dòng)化測(cè)試和手動(dòng)測(cè)試,說明測(cè)試過程中,人有人的優(yōu)勢(shì),機(jī)器有機(jī)器的優(yōu)

勢(shì),進(jìn)行項(xiàng)目測(cè)試需要辯證地思考根據(jù)該系統(tǒng)作出哪些地方適合自動(dòng)化測(cè)試做,

并根據(jù)其寫出適合的測(cè)試腳本,哪些地方適合手動(dòng)測(cè)試。

1.4課題測(cè)試目標(biāo)

測(cè)試目標(biāo)有以下幾點(diǎn):

1.確保該作業(yè)管理系統(tǒng)完成了它所有功能

2.確保作業(yè)管理系統(tǒng)滿足了功能需求中的性能的要求

3.確保該作業(yè)管理系統(tǒng)是健壯的和適應(yīng)用戶環(huán)境,例如適應(yīng)瀏覽器、分辨

率的適應(yīng)

4.為作業(yè)管理系統(tǒng)的質(zhì)量評(píng)估提供依據(jù),即從測(cè)試作業(yè)管理系統(tǒng)后得出的

測(cè)試報(bào)告,評(píng)估作業(yè)管理系統(tǒng)的質(zhì)量。

5.依據(jù)測(cè)試報(bào)告,為作業(yè)管理系統(tǒng)的質(zhì)量改進(jìn)和管理提供幫助

所以作業(yè)管理系統(tǒng)的測(cè)試最終目標(biāo)是確保系統(tǒng)的功能符合用戶的需求,軟件測(cè)試

的目標(biāo)是為了發(fā)現(xiàn)其中的缺陷,防止缺陷。

1.5論文結(jié)構(gòu)

在本論文中,介紹了測(cè)試過程中根據(jù)不同的測(cè)試用例中,思考如何設(shè)計(jì)測(cè)試

用例,使用什么方法測(cè)試。

2

其中介紹測(cè)試過程中使用的工具以及對(duì)工具的介紹,功能測(cè)試模塊用例的設(shè)

計(jì)與實(shí)現(xiàn),界面及易用性測(cè)試用例執(zhí)行,性能測(cè)試用例執(zhí)行。

最后是總結(jié)本論文,我的感想和心得。

第2章:作業(yè)管理系統(tǒng)的需求分析

本章的主要作用是介紹該系統(tǒng)的的背景,闡述測(cè)試需求概述,描述測(cè)試需求

分析過程

2.1系統(tǒng)背景

教育部發(fā)布的《計(jì)算機(jī)類教學(xué)質(zhì)量國家標(biāo)準(zhǔn)》指出,軟件工程專業(yè)要具有滿

足教學(xué)需要的完備實(shí)踐教學(xué)體系,主要包括實(shí)驗(yàn)課程、課程設(shè)計(jì)、實(shí)習(xí)、畢業(yè)設(shè)

計(jì)(論文),4年總的實(shí)驗(yàn)當(dāng)量不少于2萬行代碼?,F(xiàn)階段,學(xué)生實(shí)驗(yàn)產(chǎn)生的代

碼散步于在線判斷系統(tǒng)、實(shí)訓(xùn)平臺(tái)和學(xué)生提交的文檔中。授課老師沒有工具或平

臺(tái)能夠集成學(xué)生在大學(xué)四年完成的實(shí)驗(yàn)成果,統(tǒng)計(jì)所編成的代碼總行數(shù)。為了解

決這個(gè)問題,本系統(tǒng)將作業(yè)管理和代碼行數(shù)累計(jì)分析功能相結(jié)合。

本課題完成作業(yè)管理系統(tǒng)的測(cè)試方案的設(shè)計(jì)。主要功能包括:

1.賬號(hào)管理的功能測(cè)試

2.課程、項(xiàng)目管理的功能測(cè)試

3.代碼壓縮包解析功能的正確性測(cè)試

4.代碼行數(shù)累計(jì)功能的正確性測(cè)試

5.文檔/代碼壓縮包提交、導(dǎo)出功能的正確性測(cè)試

6.實(shí)驗(yàn)完成情況的功能測(cè)試

3

2.2系統(tǒng)的結(jié)構(gòu)

學(xué)生角色

?傅

ffl

C改

?L

用faf

產(chǎn)

2.3測(cè)試流程

H模型:

介入點(diǎn)

測(cè)試過程Q?

準(zhǔn)備過程”執(zhí)行過程

開發(fā)過程?

H模型圖

本測(cè)試過程參考采用H模型,這樣介入早,與開發(fā)并行,更早的發(fā)現(xiàn)問題,測(cè)試

過程獨(dú)立于開發(fā)過程,更客觀,更主動(dòng)。

具體測(cè)試流程,如下圖所示:

4

開始

5

2.4測(cè)試需求概述

本系統(tǒng)需要對(duì)一下的系統(tǒng)功能進(jìn)行測(cè)試:

1)驗(yàn)證后臺(tái)管理和用戶端的賬戶管理,驗(yàn)證管理員登陸后臺(tái)和用戶登錄用

戶端是否可以正常的登錄

2)系統(tǒng)管理員登錄后臺(tái)是否能進(jìn)行對(duì)課程、教師表、學(xué)生表管理

3)驗(yàn)證用戶上傳代碼文件能否行數(shù)累計(jì)成功和識(shí)別哪種編程語言

4)驗(yàn)證文檔/代碼壓縮包提交、導(dǎo)出功能的正確性

2.5測(cè)試需求報(bào)告

序號(hào)功能名稱功能需求標(biāo)識(shí)優(yōu)先級(jí)簡(jiǎn)要描述備注

1用戶登錄login中用戶在用戶端登錄系統(tǒng)測(cè)試

course中創(chuàng)建、刪除、查看和修改測(cè)試

2課程管理

課程

homework中發(fā)布、刪除、查看和修改測(cè)試

3作業(yè)管理

作業(yè)

hand-in中學(xué)生可以提交作業(yè)作文,測(cè)試

4作業(yè)操作

并且能被下載

course-select'1'學(xué)生可以加入公開課程測(cè)試

5加入課程

或退出課程

code-analysis中分析作業(yè)(單個(gè)文件或測(cè)試

6代碼量分析ZIP壓縮包)內(nèi)的全部代

碼文件包括,并記錄

index中系統(tǒng)用戶端界面操作導(dǎo)測(cè)試

7主頁導(dǎo)航欄

航欄

profile中用戶查看個(gè)人資料,修改測(cè)試

8個(gè)人中心

郵箱、密碼和自我描述

代碼量分析報(bào)code-analysis-vi低可視化展現(xiàn)學(xué)生全部代測(cè)試

9

告ew碼提交分析數(shù)據(jù)

6

course-student低老師將課程內(nèi)的學(xué)生分測(cè)試

10課程分組

homework-comment低老師和學(xué)生可以在發(fā)布測(cè)試

11作業(yè)討論

的作業(yè)下討論

homework-count低統(tǒng)計(jì)發(fā)布作業(yè)的提交情測(cè)試

12作業(yè)統(tǒng)計(jì)

email-send低系統(tǒng)生成隨機(jī)驗(yàn)證碼,并測(cè)試

13郵件發(fā)送記錄后發(fā)送到指定郵件

地址

forget-password-高

用戶通過郵箱驗(yàn)證碼找測(cè)試

14找回密碼change

回密碼

admin-login管理員在管理端登錄系測(cè)試

15管理員登錄

統(tǒng)

管理員創(chuàng)建賬admin-create-use高管理員可以創(chuàng)建單個(gè)或測(cè)試

16

號(hào)r批量賬號(hào)

admin-change-use高管理員可以修改用戶賬測(cè)試

17修改賬號(hào)

r號(hào)信息

18權(quán)限管理admin-privilege高超級(jí)管理員可以給用戶賦權(quán)測(cè)試

第3章:作業(yè)管理系統(tǒng)測(cè)試方案的測(cè)試環(huán)境及工具

本章的主要作用是介紹該系統(tǒng)使用的該web應(yīng)用系統(tǒng)測(cè)試的使用工具以及

對(duì)其的介紹。

3.1自動(dòng)化測(cè)試框架設(shè)計(jì)

3.1.1測(cè)試環(huán)境搭建:

1)下載安裝python3.8,并配置系統(tǒng)環(huán)境變量Path及下載pycharm軟件

7

2)安裝selenium,通過pip命令安裝或者直接下載selenium包進(jìn)行安裝

3)下載HTMLTestRunnerCN,用于生成HTML測(cè)試報(bào)告

3.1.2使用seleniumIDE錄制腳本

使用Selenium錄制。SeleniumIDE是基于FireFox瀏覽器的一個(gè)插件,為

用戶提供腳本錄制、回放以及編輯功能,能夠?qū)浿频哪_本導(dǎo)出生成相應(yīng)的帶單

元測(cè)試框架的自動(dòng)化腳本。但是在多條數(shù)據(jù)測(cè)試用例偏多的情況下,推擠手寫腳

本,不推薦使用seleniumIDEo

所在在這里我是先使用seleniumIDE錄制,走一次業(yè)務(wù)流程,然后回放,

看看那里容易出現(xiàn)問題。

以下介紹SeleniumIDE使用,主要使用這個(gè)分析頁面元素的原型,如果復(fù)制

的,還是比較依賴于框架。

一、seleniumIDE的安裝

1.在火狐瀏覽器安裝seleniumIDE

2.使用該插件錄制腳本,插件界面如下圖所示為:

8

3.1.3本框架設(shè)計(jì)與實(shí)現(xiàn)

設(shè)計(jì)思路

基于Selenium框架運(yùn)用python語言以及unittest單元測(cè)試框架,搭建的

web端UI自動(dòng)化框架,主要解決在該項(xiàng)目測(cè)試過程中,大量重復(fù)的步驟,使用

自動(dòng)化來實(shí)現(xiàn),如表單測(cè)試。

這里使用了基于頁面的PageObject設(shè)計(jì)模式,該設(shè)計(jì)模式是將每個(gè)測(cè)試頁

面抽象成一個(gè)頁面對(duì)象,把該頁面的元素定位、元素操作、業(yè)務(wù)流程等都封裝在

該類的方法中,編寫用例時(shí),直接以面向?qū)ο蟮乃枷胝{(diào)用該頁面類中方法。

在編寫測(cè)試用例的時(shí)候,使用數(shù)據(jù)驅(qū)動(dòng)測(cè)試模式⑴,編寫測(cè)試用例的時(shí)候,

首先在頭部導(dǎo)入ddt模塊,其次在測(cè)試類前聲明使用ddt,然后在測(cè)試方法前使

用@(1冊(cè).data。添加該測(cè)試方法需要的測(cè)試數(shù)據(jù),該函數(shù)接收一個(gè)可迭代的類型,

以此來判斷需要執(zhí)行的次數(shù),多組測(cè)試數(shù)據(jù)間以逗號(hào)隔開。

運(yùn)行測(cè)試用例后,使用第三方模塊HTMLTestRunner,生成html文件的測(cè)試

報(bào)告

一、自動(dòng)化測(cè)試框架的目錄:

▼?webtest-ProjectD:\weL

?EMbase

?tlbussiness

?Elcase

??config

?EMhandle

?ElHTMLTestReportCN

?■Image

?■page

??report

?Elutil

??venvibraryroot

目錄分層如下:

1.bese:放base,py和find_element.py文件,其中base,py放一些公用的

類,對(duì)查找元素、點(diǎn)擊元素、輸入元素、獲取文本信息、截圖……方法封裝;

find_element.py使用配置文件

2.bussiness:調(diào)用Base_Page.py文件來編寫頁面的操作層,將需要測(cè)試的

頁面,單獨(dú)封裝頁面的操作

3.case:調(diào)用操作層的對(duì)應(yīng)測(cè)試頁面操作文件,來編寫測(cè)試用例

9

4.util:放csv_util.py文件,封裝讀取csv文件的數(shù)據(jù)

5.Image:放一些每個(gè)測(cè)試功能模塊的截圖圖片的文件

6.page:將需要測(cè)試的頁面單獨(dú)封裝一個(gè)頁面類Base_page.py,里面包含測(cè)

試頁面內(nèi)元素的定位

7.report:放測(cè)試報(bào)告文件

8.venv:放虛擬環(huán)境和第三方模塊包的文件

9.config:所有項(xiàng)目相關(guān)的配置文件放在config文件夾里面,用python支

持較好的配置文件格式ini進(jìn)行配置。實(shí)現(xiàn)配置與代碼的分離

二、整個(gè)代碼執(zhí)行過程

首先,在base文件,編寫base,py放一些共用的類,編寫find_element.py

使用配置文件,目的為了修改元素的名字可以在配置文件上修改。

頁面操作層handle文件,編寫測(cè)試頁面操作的代碼

業(yè)務(wù)邏輯層bussiness文件,執(zhí)行測(cè)試頁面的操作的邏輯順序

編寫每個(gè)頁面的執(zhí)行用例的代碼文件,使用csv模塊,導(dǎo)入測(cè)試用例需要的

數(shù)據(jù)文件,通過unittest框架,找到匹配的測(cè)試用例(以test_開頭的類),由

HTMLTestRunnerCN,生成HTML測(cè)試報(bào)告,并將每次錯(cuò)誤進(jìn)行截圖,截圖文件放

在Image文件下

3.2使用測(cè)試作業(yè)管理系統(tǒng)的工具

測(cè)試輔助工說明

SeleniumSeleniumIDE(集成開發(fā)環(huán)境)是SeleniumSuite下的開源Web自動(dòng)化測(cè)試

IDE

工具,是一款非常優(yōu)秀的自動(dòng)化工具⑵。與SeleniumWebDriver和RC不同,

它不需要任何編程邏輯來編寫其測(cè)試腳本,而只需記錄與瀏覽器的交互以創(chuàng)

建測(cè)試用例。之后,可以使用播放選項(xiàng)重新運(yùn)行測(cè)試用例。

XenuLinkL從待測(cè)網(wǎng)站的根目錄開始搜索所有的網(wǎng)頁文件,對(duì)所有網(wǎng)頁文件中的

Sleuth

超鏈接、圖片文件、包含文件、css文件、頁面的內(nèi)部鏈接進(jìn)行讀取。

2.如果是網(wǎng)站內(nèi)文件不存在,指定文件鏈接不存在或者指定頁面不存在,

則將該鏈接和文件的具體位置記錄下來,一直到網(wǎng)站所以頁面中的所有鏈接

都測(cè)試后才結(jié)束測(cè)試,并輸出測(cè)試報(bào)告。

[11

JmeterApachejmeter可以用于對(duì)靜態(tài)的和動(dòng)態(tài)的資源(文件,Servlet,Perl腳

本,java對(duì)象,數(shù)據(jù)庫和查詢,F(xiàn)TP服務(wù)器等等)的性能進(jìn)行測(cè)試。它可以

用于對(duì)服務(wù)器、網(wǎng)絡(luò)或?qū)ο竽M繁重的負(fù)載來測(cè)試它們的強(qiáng)度或分析不同壓

10

力類型下的整體性能。你可以使用它做性能的圖形分析或在大并發(fā)負(fù)載測(cè)試

你的服務(wù)器/腳本/對(duì)象。

3.3使用的測(cè)試方法

3.3.1白盒測(cè)試

白盒測(cè)試是一種測(cè)試用例設(shè)計(jì)方法,盒子指的是被測(cè)試的軟件,白盒指

的是盒子是可視的,即清楚盒子內(nèi)部的東西以及里面是如何運(yùn)作的。"白盒''法全

面了解程序內(nèi)部邏輯結(jié)構(gòu)、對(duì)所有邏輯路徑進(jìn)行測(cè)試。⑸

以下舉例,使用了白盒測(cè)試的測(cè)試用例名稱為教師管理功能測(cè)試:

測(cè)

用例編試

PR0JECT1-ST-01白盒測(cè)試

號(hào)方

用例名

管理員新增教師信息、查看教師信息、修改教師信息、刪除教師信息

模塊名

教師管理

重要級(jí)

測(cè)試在管理員新增教師信息、查看教師信息、修改教師信息、刪除教師信息功能,是

用例概

否達(dá)到功能需求

測(cè)試環(huán)在CPU為酷睿i76700HQ的筆記本上的windowslO系統(tǒng)測(cè)試,網(wǎng)絡(luò)為百兆以太網(wǎng)

1.確保完成測(cè)試教師管理的功能

2.發(fā)現(xiàn)缺陷

測(cè)試目

3.為軟件的質(zhì)量評(píng)估提供依據(jù)

標(biāo)

4.確保軟件的功能符合用戶的需求

用戶需1.獲取教師信息

求2.查看用身份表信息

1.https://jicode.xyz/19691201/admin,連接這個(gè)網(wǎng)址

前置條2.使用超級(jí)管理員權(quán)限的賬號(hào)(賬號(hào)為:用戶名:yexin密碼:yexinl23)登錄該后

件臺(tái)系統(tǒng)

后置條無

11

特殊說無

用例的測(cè)試過程

開始

進(jìn)入教師表

點(diǎn)擊“增加”單擊要修改的勾選要修改的

按鈕教師用戶名教師用戶名

點(diǎn)擊“刪除”

填寫教師資料

基本執(zhí)點(diǎn)擊“保存”

行過程

步驟

T

顯示提示信

T息,刪除成功

顯示提示信顯示提示信

息,添加成功息,修改成功

1■

結(jié)束■

用例編

場(chǎng)景/條件教師信息預(yù)期結(jié)果

號(hào)

新增教師,填寫正確的教師信息,顯示

1添加該教師成功

添加成功的提示信息

新增教師,填寫錯(cuò)誤的教師信息,顯示

2添加該教師失敗

輸入錯(cuò)誤的提示信息

修改教師信息,填寫正確的教師信息。

3修改該教師成功

顯示修改成功的提示信息

12

修改教師信息,填寫錯(cuò)誤的教師信息,

4N修改該教師信息失敗

顯示輸入錯(cuò)誤的提示信息

刪除該教師信息,顯示刪除成功的提示

5空刪除該教師信息成功

信息

3.3.2黑盒測(cè)試

黑盒測(cè)試也稱功能測(cè)試,它是通過測(cè)試來檢測(cè)每個(gè)功能是否都能正常使

用。在測(cè)試中,把程序看作一個(gè)不能打開的黑盒子,在完全不考慮程序內(nèi)部結(jié)構(gòu)

和內(nèi)部特性的情況下,在程序接口進(jìn)行測(cè)試,它只檢查程序功能是否按照需求規(guī)

格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信

息。黑盒測(cè)試著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),主要針對(duì)軟件界面和

軟件功能進(jìn)行測(cè)試。⑹

第4章:作業(yè)管理系統(tǒng)的測(cè)試方案實(shí)施

本章的主要作用是介紹該系統(tǒng)使用的該web應(yīng)用系統(tǒng)測(cè)試的說明分析及實(shí)

4.1功能測(cè)試

4.1.1表單測(cè)試

測(cè)試范圍:測(cè)試用戶端登錄

測(cè)試方法:首先使用seleniumIDE確定用戶端頁面登錄測(cè)試的頁面元素原型,使

用已經(jīng)搭建好的自動(dòng)化測(cè)試框架,寫關(guān)于登錄測(cè)試的頁面層Base_page.py中的類

LoginPage,操作層為login_handle.py,執(zhí)行操作邏輯層為login_business.py,最

后編寫測(cè)試用例為login_ddt_case.py,進(jìn)行表單測(cè)試,然后使用html頁面輸出測(cè)

試報(bào)告。

以下為測(cè)試腳本如下:

頁面層Base_page.py中的類LoginPage:

classLoginPage(object):

def_init_(self,driver):

13

self.fd=FindElement(driver)

#獲取用戶名元素

defget_username_element(self):

returnself.fd.ge^elementf^sername')

ft獲取密碼

defget_password_element(self):

returnself.fd.ge^elementCpassword1)

#獲取錯(cuò)誤信息

defget_code_text_error_element(self):

returnself?fd.get_element('code_text_eiror')

#點(diǎn)擊按鈕事件

defget_button_element(self):

returnself?fd.get_element('login_buttorT)

操作層為login_handle.py:

#coding=utf-8

frompage.Base_pageimportLoginPage

classLoginHandle(object):

def_init_(self,driver):

self.login_p=LoginPage(driver)

#輸入用戶名

defsend_username(self,username):

self.login_p.get_username_element().send_keys(username)

#輸入密碼一一>一

defsend_password(self,password):

self.loginp.getpasswordelement().sendkeys(password)

ft獲取輸入函鋰信i一一

defget_login_text(selfjnfo,error_tips):

try:

ifinfo=="code_text_eiror”:

#

self.login_p.get_code_text_error_element().get_attribute(error_tips)

#print(error_tips)

text=self.login_p.get_code_text_error_element().text

except:

text=None

returntext

#點(diǎn)擊登錄按鈕

defclick_button(self):

14

self?login_p.get_button_element().dick()

執(zhí)行操作邏輯層為login__business.py:

fromhandle.login_handleimportLoginHandle

classLoginBusiness(object):

def_init_(self,driver):

self.login_h=LoginHandle(driver)

defuser_base(seltusername,password):

self.login_h.send_username(username)

self.login_h.send_password(password)

self.login_h.click_button()

#執(zhí)行操作

#登錄錯(cuò)誤

deflogin_error(self/username,password):

self.user-basetusername,password)

#根據(jù)Vxt輸出的來判斷登錄錯(cuò)誤

ifself.login_h.get」ogin_text('code_text_eiror'J用戶名或密碼錯(cuò)誤!’):

#如窠獲取到文季信息檢驗(yàn)常功市面判斷

#print(“用戶名或密碼,檢驗(yàn)不成功”)

#方便后面記錄

returnTrue

編寫測(cè)試用例為login__ddt__case.py:

#coding=utf-8

importddt

importunittest

frombussiness.login_businessimportLoginBusiness

fromseleniumimportwebdriver

fromutil.csv_utilimportCsvlltil

fromHTMLTestReportCN.HTMLTestReportCNimportHTMLTestRunner

frommon.keysimportKeys

ex二CsvUtil('.?/config/logindata.csv')

data=ex.getCsvData()

@ddt.ddt

classFirstDdtCase(unittest.TestCase):

defsetUp(self):

self.driver=webdriver.Firefox()

self.driver.get('https://jicode.xyz,)

self,login=LoginBusiness(self.driver)

deftearDown(self):

15

#time.sleep(3)

formethod_name,errorinself._outcome.errors:

iferror:

#case的名字

case_name=self._testMethodName

fp="../Image/loginPNG/"+case_name+n.png"

self.driver.save_screenshot(fp)

self.driver.close()

@ddt.data(*data)

deftest_login_username_error(self,data):

username,password=data

ifusername==Noneandpassword==None:

print("登錄不成功,用戶名和密碼均為空”)

returnTrue

#ifusername!=Noneandpassword!=Noneandself.driver.title=='登陸':

#print("登錄不成功,用戶名和密碼錯(cuò)誤”)

#returnTrue

iflen(str(username))<6:

print(''登錄不成功,用戶名長度低于6位“)

returnTrue

eliflen(str(password))==0:

print("登錄不成功,密碼為空”)

returnTrue

eliflen(str(password))<6:

print("登錄不成功,密碼太短”)

returnTrue

user_error=self.login.login_error(username/password)

ifself.assertTrue(user_eiror,"登錄成功,這條用例執(zhí)行不成功”):

returnTrue

else:

returnFalse

if_name_=='_main_

file_path=\./report/login^ase.html'

H

f=open(file_path,wb")

suite=unittest.TestLoader().loadTestsFromTestCase(FirstDdtCase)

#suite=unittest.TestSuite()

#suite.addTest(FirstDdtCase(,test_login_username_error,))

##stream指定測(cè)試報(bào)告文件title定義測(cè)試報(bào)告的標(biāo)題description定義測(cè)

試報(bào)告的副標(biāo)題

runner=HTMLTestRunner(stream=f,title="登錄模塊測(cè)試報(bào)告”)

runner.run(suite)

f.close()

使用了csv文件存儲(chǔ)測(cè)試數(shù)據(jù),根據(jù)測(cè)試用例編寫了測(cè)試數(shù)據(jù)

16

測(cè)試用例設(shè)計(jì)和結(jié)果如下:

測(cè)試完成

用例編測(cè)試預(yù)期

測(cè)試內(nèi)容操作描述測(cè)試輸入數(shù)據(jù)測(cè)試結(jié)果后功能描

號(hào)結(jié)果

錯(cuò)誤提

示:請(qǐng)輸

入一個(gè)正

輸入正確的用戶名:

用戶名和密碼不能成功確的用

不能登錄成用戶名和密YAN123

1大小寫是否敏登錄該系戶名和

功碼,但是不密碼:

感統(tǒng)后臺(tái)密碼.注

區(qū)分大小寫AA847644921

意他們都

是區(qū)分大

小寫的.

輸入已經(jīng)注冊(cè)輸入已經(jīng)注用戶名:成功登錄

的正確的用戶冊(cè)的正確的yanl23該系統(tǒng),

2登錄成功無

名和密碼,驗(yàn)用戶名和密密碼:跳轉(zhuǎn)到后

證是否能成功碼aa847644921臺(tái)主頁

錯(cuò)誤提示

不能成功為:請(qǐng)輸

輸入已經(jīng)注冊(cè)

登錄到該入一個(gè)正

的用戶名和錯(cuò)輸入已經(jīng)注用戶名:

系統(tǒng),跳確的用

誤的密碼,驗(yàn)不能登錄成冊(cè)的用戶名yanl23

3轉(zhuǎn)回該登戶名和

證是否失敗,功和錯(cuò)誤的密密碼:

錄頁面,密碼.注

并提示正確的碼12345678

錯(cuò)誤信息意他們都

信息

提示是區(qū)分大

小寫的.

錯(cuò)誤提示

不能成功為:請(qǐng)輸

輸入未注冊(cè)的

登錄到該入一個(gè)正

用戶名和任意輸入未注冊(cè)

用戶名:系統(tǒng),跳確的用

一個(gè)密碼,驗(yàn)不能登錄成的用戶名和

4yanl234轉(zhuǎn)回該登戶名和

證是否登錄失功任意一個(gè)密

密碼:789456錄頁面,密碼.注

敗,并提示正碼

出現(xiàn)錯(cuò)誤意他們都

確的信息

信息提示是區(qū)分大

小寫的.

用戶名和密碼

都為空的時(shí)錯(cuò)誤提

不輸入,直登錄頁面

候,驗(yàn)證是否不能登錄成用戶名和密碼示:請(qǐng)更

6接按登錄按刷新,有

登錄失敗,并功為空正下列錯(cuò)

鈕錯(cuò)誤提示

提示正確的信誤

用戶名和密碼用戶名:登錄頁面錯(cuò)誤提

不能登錄成輸入用戶名

7兩者有一個(gè)為yanl23刷新,有示:請(qǐng)修

功或密碼為空

空的時(shí)候,驗(yàn)密碼:錯(cuò)誤提示正下面的

17

證是否登錄失用戶名:錯(cuò)誤

敗,并提示正密碼:

確的信息aa847644921

測(cè)試數(shù)據(jù)如下:

用戶名,密碼

yanl23,aa847644921

yanl23,123

anl23,123

yanl23,

,aa847644921

YAN123,aa847644921

使用了第三方模塊HTMLTestReportCN輸出測(cè)試報(bào)告,如下圖所示為測(cè)試報(bào)告的

結(jié)果:

登錄模塊測(cè)試報(bào)告

測(cè)試人員;Yan

開始時(shí)間:2020-04-2511:02:08

合計(jì)耗時(shí):0:01:17.133605

測(cè)謊結(jié)果:共7,通過5,錯(cuò)誤2,通過率=71.43%

概要{71.43%}失敗{0}通過{5}所有{7}

用例集/測(cè)試用例總計(jì)通過失敗錯(cuò)誤詳細(xì)

FirstDdtCase7502

總計(jì)7502通過率:71.43%

4.1.2搜索功能測(cè)試

測(cè)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論