




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
11/11軟件測試課程學(xué)習(xí)指南一、引言本課程學(xué)習(xí)指南是該課程的主講教師針對學(xué)習(xí)者如何學(xué)好本課程而提出的一些建議與指導(dǎo)性說明的文本,旨在幫助學(xué)習(xí)者如何學(xué)習(xí)和怎樣掌握軟件測試的基本知識、基本技術(shù)和設(shè)計、規(guī)劃、實施測試工程的方法論,并能運用所學(xué)去分析和解決實際的軟件測試問題。能在軟件行業(yè)、企業(yè)的軟件測試領(lǐng)域,軟件質(zhì)量保障或軟件設(shè)計、開發(fā)等崗位從事專業(yè)技術(shù)性工作,同時也為學(xué)習(xí)者進一步學(xué)習(xí)測試知識和運用測試技能,提高測試技術(shù)水平和專業(yè)綜合素質(zhì),奠定較扎實的基礎(chǔ)。本文將以解說與漫談的方式問答“為什么要學(xué)習(xí)軟件測試、本課程要學(xué)習(xí)些什么內(nèi)容、怎樣進行有效的學(xué)習(xí)?”三個學(xué)習(xí)者普遍比較關(guān)注的問題。主講教師建議學(xué)習(xí)者在學(xué)習(xí)初始時即對該指南進行初閱,經(jīng)過一段時間的課程學(xué)習(xí)與實踐體會后,再回頭進行二次閱讀,可能會有一些新的認識和體會,并產(chǎn)生自己的學(xué)習(xí)方法和見解。本學(xué)習(xí)指南期望起到“拋磚引玉”的作用。因為,對于理論知識的認識與技術(shù)實踐能力的構(gòu)建,最終為每個個體的特性。二、為什么要學(xué)習(xí)和掌握軟件測試我們先來說說,為什么現(xiàn)在有必要強調(diào)學(xué)習(xí)軟件測試知識和掌握軟件測試技能?,F(xiàn)今世界上軟件發(fā)達國家,如,歐美、印度、愛爾蘭等國的軟件企業(yè)軟件開發(fā)(設(shè)計、編碼等)崗位職務(wù)人數(shù)與軟件測試與質(zhì)量保障崗位職務(wù)之比基本上都在1:1左右,一些優(yōu)秀知名的企業(yè),如IBM、微軟、塔塔等軟件測試與質(zhì)量保障職位人數(shù)甚至超過了開發(fā)人員數(shù)量;一個軟件產(chǎn)品(系統(tǒng))的研發(fā)過程中測試所用時間和耗費的資金都接近和超過了50%。這表明軟件測試的工作崗位和職業(yè)已不是可有可無、而在軟件產(chǎn)業(yè)中不可或缺,人類存在,軟件存在,軟件存在軟件測試就存在。是什么緣故,使得軟件的質(zhì)量以關(guān)系到人類社會生活的各方面,甚至是生命和財產(chǎn)的安危。這是因為在軍事領(lǐng)域、航空航天、核電工業(yè)、金融系統(tǒng)、以致與人們?nèi)粘I盥?lián)系密切的航空運輸、高速鐵路、醫(yī)療衛(wèi)生、電子商務(wù)、汽車電子等等產(chǎn)品中都深度嵌入了軟件系統(tǒng)或需要軟件來支撐其運行。因此,其產(chǎn)品(系統(tǒng))質(zhì)量的優(yōu)劣都關(guān)乎到人們的生命財產(chǎn)安全和社會各方面的正常運轉(zhuǎn)、社會效率的發(fā)揮。對軟件產(chǎn)品來說,質(zhì)量是一項極其重要的問題。我們常說‘質(zhì)量是產(chǎn)品的生命線’,這在軟件產(chǎn)品中的表現(xiàn)很突出,尤為一些重要的、關(guān)鍵性的軟件。我們不時的有所耳聞目睹,全世界不斷地曝光與揭露因為軟件質(zhì)量的問題而導(dǎo)致或發(fā)生的重大事故及災(zāi)難性的事件。首先,現(xiàn)在我們大家的工作、學(xué)習(xí)、生活幾乎都離不了計算機、網(wǎng)絡(luò)和各種軟件的運行和使用。但也常常遇到因軟件質(zhì)量問題所造成的各種影響和損失(僅更新版本、下載‘補丁’,消除‘病毒’預(yù)防和檢測系統(tǒng),所耗費的電力、時間與人力成本、機器損耗等,全球、全國加起來基本上都是‘天文數(shù)字’。更不要說因軟件質(zhì)量(存在的缺陷和故障)造成的毀滅性事件。這樣的例子比比皆是。舉個大家十分熟悉的例子,全球使用計算機,包括我們每人都離不開的手機等,時不時的要更新軟件(為排除故障、修正缺陷、消除‘病毒’、更新系統(tǒng)等等),大家有沒有想過,這要耗費多少時間和能源啊?還有蒙受到的各種損失……。其二,為什么軟件的質(zhì)量問題‘層出不群’?讓我們來體會差不多每一人每日使用的Windows軟件系統(tǒng)(操作系統(tǒng)、應(yīng)用系統(tǒng)等)從產(chǎn)品發(fā)布、投入運行到現(xiàn)在(在沒有宣布產(chǎn)品的終止使用前)今日發(fā)現(xiàn)一個‘漏洞’,明日出現(xiàn)一個‘故障’(Bug),…….沒完沒了。哪天是一個頭,才能終結(jié)。這是何原因?這是因為,軟件是人類邏輯思維的一種‘產(chǎn)品’,是一個看不見、摸不著的、與常規(guī)各種產(chǎn)品相比是有著‘特殊性’的智力表現(xiàn)與集成。而人的邏輯思維常常會犯錯,并且?guī)缀醪荒軓母旧隙沤^這種現(xiàn)象的發(fā)生。也就是說,只要是人類設(shè)計生產(chǎn)了軟件,就一定會存在著錯誤(這里指復(fù)雜或大型的軟件系統(tǒng))。惟一的辦法就是從軟件的需求開始,在軟件產(chǎn)品的各個環(huán)節(jié),直至軟件的生命周期結(jié)束(不再使用了),軟件的維護與更新工作就會永不停止。軟件存在、測試過程就會存在,相伴相隨。這如同,一個人從受孕、出生、成長到死亡,一生中總會去醫(yī)院,會和醫(yī)務(wù)人員‘打交道’。如果說,醫(yī)務(wù)人員生是人類生命的維護者,那么,軟件生命的維持者就是測試專業(yè)工作者。只要人類生存依賴著軟件,軟件測試的職業(yè)和工作就會存在下去。從這里的分析,你可以看出,為什么現(xiàn)在的軟件測試與質(zhì)量保障人員的數(shù)量會達到甚至超過開發(fā)人員。當(dāng)然,在目前中國的軟件企業(yè)中,測試崗位和人數(shù)還遠未達到國際先進軟件企業(yè)的常規(guī)水平。目前國內(nèi)企業(yè)軟件測試與軟件開發(fā)人員之比,近幾年的統(tǒng)計結(jié)果,大約為1:7-8左右。一些企業(yè)甚至還沒有專門的測試組織、機構(gòu)和配備專職的軟件測試人員。這對于中國軟件產(chǎn)業(yè)和企業(yè)都想盡快地提高國際競爭力的預(yù)期和發(fā)展都不匹配或極為不利。而我們大家都知道,軟件產(chǎn)業(yè)是最能體現(xiàn)國際化這一特征的。據(jù)國內(nèi)一些軟件專家分析,目前中國的軟件技術(shù)水平與歐美發(fā)達國家之間的差距約為10-15年之間,其中主要的因素之一,是軟件技術(shù)人員的專業(yè)知識、技能水平、應(yīng)用能力還相對的落后。舉例說,國內(nèi)的一些軟件企業(yè),這些年在積極推進和運用敏捷開發(fā)技術(shù),所遇到的最大問題之一是研發(fā)人員的素質(zhì)和能力不濟,具備敏捷開發(fā)能力是需要具備嫻熟和運用軟件測試技能的。國內(nèi),軟件測試的職業(yè)崗位和工作充滿了很大的機會和持久性。當(dāng)然,抓住這個機遇,設(shè)想未來在該領(lǐng)域里工作、職業(yè)成長,專業(yè)的、系統(tǒng)化的軟件測試理論學(xué)習(xí)和技能訓(xùn)練應(yīng)該是必不可少的。實際上,這些年來,社會一些培訓(xùn)機構(gòu)‘很火’,開辦了不少的軟件測試培訓(xùn)班和某種測試技能的速成班,來滿足軟件人才市場上測試人才的市場緊缺和需求,特別是受過系統(tǒng)化學(xué)習(xí)和專業(yè)訓(xùn)練的、富有經(jīng)驗的中、高端測試人才的價值在不斷地提升,出現(xiàn)了‘一將難求’的局面。其三,現(xiàn)在國際國內(nèi),軟件已經(jīng)與計算機科學(xué)與技術(shù)學(xué)科處在了同等的地位,已從從屬的二級學(xué)科上升為一級學(xué)科。從軟件工程角度看,軟件測試是其五個主要的組成部分。軟件測試近40年的發(fā)展已使其成為了獨立的研究學(xué)科與技術(shù)領(lǐng)域,并已產(chǎn)生和積累為復(fù)雜的系統(tǒng)的、豐富的知識體量與技術(shù)內(nèi)涵,形成了系列化的學(xué)科分類、技術(shù)規(guī)范與國際標準,并在技術(shù)應(yīng)用方面呈現(xiàn)出工程化的特征,這些都極大的豐富了軟件測試作為獨立課程的學(xué)習(xí)內(nèi)容。同時,作為一個現(xiàn)代的軟件技術(shù)專業(yè)人員,關(guān)于軟件測試與質(zhì)量保方面的知識與專業(yè)技能已不再是可有可無,而是其必備的專業(yè)人才素質(zhì)與知識內(nèi)涵組成。高等學(xué)校始終是軟件技術(shù)人才培養(yǎng)的主要途徑之一,國內(nèi)、外皆同。適時在高校開設(shè)軟件測試課程,進行軟件測試知識的傳授、學(xué)習(xí),培訓(xùn)測試專業(yè)技能,是軟件專業(yè)發(fā)展‘與時俱進’的必然,也是滿足軟件學(xué)科進步、產(chǎn)業(yè)發(fā)展、滿足對軟件測試專業(yè)人才社會需求的必須。三、本課程將要學(xué)習(xí)的主要內(nèi)容1.課程內(nèi)容構(gòu)建原則本課程涉及了比較系統(tǒng)的軟件測試知識域覆蓋,針對軟件工程師/測試工程師職業(yè),以職業(yè)素質(zhì)所要求的知識和能力為先導(dǎo),采用“逆向制定法”來設(shè)計課程。也就是說,先根據(jù)軟件測試專業(yè)(職業(yè))工作的內(nèi)涵,分析其對應(yīng)的知識、技能與職業(yè)素質(zhì)要求,來構(gòu)造課程體系及確定課程的層次,并使課程基本上實現(xiàn)模塊化,建立模塊相互之間的關(guān)聯(lián)邏輯和相對的獨立,確立模塊的知識與技能要求,選取相應(yīng)內(nèi)容,并能夠使之便于學(xué)習(xí)和掌握。當(dāng)然,實際的軟件測試實施中,這些知識與技術(shù),是需要綜合運用的。以知識為基礎(chǔ)才能開展工作,完成任務(wù),軟件測試是屬于這種典型的工程專業(yè)的。本課程建立以基礎(chǔ)知識、技術(shù)理論和工程應(yīng)用為主線的課程架構(gòu),實現(xiàn)知識傳授與技能培養(yǎng)并重,體現(xiàn)知識、能力、素質(zhì)培養(yǎng)的“三合一”特征。理論部分突出基本知識和基本概念的表述,知識域覆蓋范圍,著重把握理論知識的深度和要領(lǐng),為技術(shù)方法及工程運用提供全面的技術(shù)理論支撐。該課程知識涵蓋原則是“必須的不缺”,對技術(shù)原理(方法)分析試圖“舉一反三”,對工程實踐能力的訓(xùn)練采用“項目運作”的學(xué)習(xí)方法。軟件測試是一項技術(shù)性很強的工程,需要綜合運用很多測試的知識和技術(shù)方法,其過程規(guī)范的運用是以技術(shù)方式實施和展開。因此,本課程的構(gòu)建、組織是以技術(shù)與工程為主線,圍繞軟件工程項目的測試進程展開,體現(xiàn)工程特點與專有技術(shù)的特征。因此,該課程內(nèi)容及教學(xué)設(shè)計通過項目活動及過程呈現(xiàn)問題、運用相關(guān)理論知識解析問題,通過工程方法解決問題。技能訓(xùn)練也是本課程的重要組成。通過技能訓(xùn)練學(xué)習(xí)者掌握主流測試技術(shù)和實際運用過程,將理論知識與工程過程密切結(jié)合。在技能培養(yǎng)實現(xiàn)上,通過軟件測試全過程的解析和引導(dǎo),通過測試項目的運作,以“學(xué)中干、干中學(xué)”的方式形成專業(yè)能力。以理論知識、技術(shù)理論指導(dǎo)工程實踐的意義,是讓學(xué)習(xí)者明確某項活動為何要采取某個策略或技術(shù),而非其他。這里涉及了很多方面,如,任務(wù)目標要求、實施的有效性、工作效率、運行成本,等等。明確認識和把握針對不同目標應(yīng)采用相應(yīng)策略與技術(shù),明確運用技術(shù)方法的依據(jù)與預(yù)測結(jié)果。為達到這個教學(xué)目標,對實踐的內(nèi)容與教學(xué)形式設(shè)計為項目教學(xué)模式,盡可能的反映、接近實際。但教學(xué)(學(xué)習(xí))總會與實際工作(情況)存在差異,例如,工作經(jīng)驗的獲得,僅有課程的學(xué)習(xí),而缺乏了實際的體驗,是難以有深刻的認識和體會的。本課程共分為7個部分(章節(jié)),分別是:第一章軟件測試概述;第二章軟件生命周期的測試;第三章軟件測試的靜態(tài)技術(shù);第四章軟件測試的動態(tài)技術(shù);第五章軟件自動化測試技術(shù);第六章軟件測試管理;第七章軟件測試工程實踐。這些知識和內(nèi)容的選取和安排,應(yīng)該是一個專業(yè)測試人員的必備知識與能力構(gòu)成,是一個能跨入軟件測試領(lǐng)域(入職測試崗位)、從事軟件測試工作的堅實基礎(chǔ),也是一個能持續(xù)發(fā)展軟件測試專業(yè)能力以及職業(yè)生涯的基礎(chǔ)。2.課程基本內(nèi)容說明(1)軟件測試基本概念這里包含了軟件測試產(chǎn)生與發(fā)展的陳述與每個階段的特點分析,它體現(xiàn)了軟件測試概念的變遷、深入和一步一步邁向本質(zhì)問題的歷程,軟件測試技術(shù)的產(chǎn)生與方法手段,以及技術(shù)的進步和測試效率的提高。這對我們認識軟件測試的本質(zhì)問題建立概念,對所要學(xué)習(xí)和運用的技術(shù)會有清醒的認識和理解。軟件測試的本質(zhì):以各種策略與技術(shù)方法尋找軟件的缺陷(Bug),對軟件質(zhì)量進行度量。(2)軟件測試基本要素的構(gòu)成與測試基本原理的形成軟件測試的基本要素是確定測試對象、選擇測試策略、設(shè)計測試用例、執(zhí)行測試過程、分析測試結(jié)果。軟件測試的理論研究與長期實踐,學(xué)者和工程師總結(jié)出了7項基本原理。這是從理論分析與實踐總結(jié)的角度的集中的概括,對這些原理的深刻認識,需要在不斷學(xué)習(xí)的過程中去理解和體會,使其真正體現(xiàn)在對測試實際工作的思維和行為中,而不是僅僅‘記住’它。(3)軟件質(zhì)量體系與測試策略從軟件開發(fā)模式與測試的關(guān)系,導(dǎo)出軟件測試模型;從軟件質(zhì)量概念與質(zhì)量模型的概念,導(dǎo)出軟件質(zhì)量體系與測試策略。這里,我們介紹了軟件業(yè)界當(dāng)前所運用的一些主流的軟件開發(fā)與測試的模型、策略方法。這些策略與技術(shù)方法都關(guān)聯(lián)著如何預(yù)防、尋找軟件生產(chǎn)(產(chǎn)品)、運行過程中的故障,來保障軟件(生命周期)的質(zhì)量。(4)軟件生命周期的概念及測試層級。將軟件以生命周期的概念進行描述(V模型),反映出軟件測試在生命周期中的地位和作用。軟件測試的實施存在于軟件的需求分析、設(shè)計過程、投入使用、更新維護等階段與環(huán)節(jié)中,這反映了測試這一活動隨軟件生命周期的產(chǎn)生和完結(jié),即測試即可發(fā)生在防止軟件故障、缺陷出現(xiàn)的前期而實施,也可發(fā)生在軟件生成的過程中,也可進行在軟件運行、維護的階段。軟件的‘前期’、‘中期’和‘晚期’都會介入測試的活動。前期,我們可看作是‘預(yù)防Bug’的過程,中、晚期,可以看作是‘消除Bug’的行為。當(dāng)然,不同的階段,有不同的測試策略與方法。這有點如同我們對身體進行的體檢、保健、疾病治療的過程。軟件存在、測試就存在這是一個思維與行為的理念,也是一切測試活動的出發(fā)點,并從本質(zhì)上反映出測試是軟件質(zhì)量保證的根本性措施。(5)軟件測試的主要類型。主要有組件測試、集成測試、系統(tǒng)測試、確認測試與驗收測試四個層級。其中,每個階段的測試策略和內(nèi)容各異,針對的需解決問題存在邏輯關(guān)聯(lián)和階梯特性。(6)軟件測試的靜態(tài)測試技術(shù)(工程方法)。這方面包含靜態(tài)測試概念、靜態(tài)測試的常用方法,如數(shù)據(jù)流分析、控制流分析和程序復(fù)雜度計算等等。同時,靜態(tài)測試分析工具與其應(yīng)用也是需要學(xué)習(xí)和掌握的內(nèi)容。軟件評審的策略與方法常適用在軟件開發(fā)過程的早期階段,如需求分析階段、方案設(shè)計階段及代碼走查的過程。軟件(程序)的質(zhì)量度量也常常采用靜態(tài)分析的方法。(7)軟件測試動態(tài)測試技術(shù)。動態(tài)測試技術(shù)的分析方法:針對測試對象的不同側(cè)面,實施全方位測試?;谝?guī)格說明的動態(tài)測試(黑盒測試),它反映出從軟件(程序)外部考察軟件或程序的功能是否達到最初的用戶需求與預(yù)期。等價類劃分法、邊界值分析法、因果圖法與決策表法、狀態(tài)轉(zhuǎn)換法、正交實驗法(配對法)等等都是常用的、主流動態(tài)測試技術(shù),這些技術(shù)方法的學(xué)習(xí)提供的最終目標是能針對不同軟件類型和特征,采用相應(yīng)的策略與方法,最終能完成測試用例的設(shè)計。(8)基于程序結(jié)構(gòu)的動態(tài)測試(白盒測試)。這是從軟件(程序)內(nèi)部考查其質(zhì)量的度量,檢查缺陷和錯誤。這里要學(xué)習(xí)的是邏輯覆蓋(語句覆蓋、分支覆蓋、分支/條件覆蓋、MC/DC覆蓋)技術(shù),路徑測試(基本路徑測試、循環(huán)路徑的測試),針對這些覆蓋的準則要求,設(shè)計相應(yīng)的動態(tài)測試用例。黑盒測試與白盒測試,分別從兩個不同的側(cè)面去檢驗程序是否正確,有無缺陷和存在錯誤,保證其軟件質(zhì)量。這兩類方法都基于這樣的前提:軟件(程序)具有比較規(guī)范的、與可依據(jù)的文檔及源代碼等。若達不到這些條件時,或文檔不足以提供測試用例的設(shè)計依據(jù)時,上述測試方法均無法實施。由此問題就而產(chǎn)生了基于經(jīng)驗的測試方法。鑒于該課程是為初學(xué)軟件測試的對象而開設(shè),針對基于經(jīng)驗的測試方法,這方面的內(nèi)容并沒有過多涉及。顯而易見,掌握這種測試技術(shù)需要具有實際測試的經(jīng)驗的作為基礎(chǔ)。靜態(tài)測試技術(shù)和動態(tài)測試技術(shù)是本課程要學(xué)習(xí)和掌握的重點。(9)軟件自動化測試。這也是本課程學(xué)習(xí)和掌握內(nèi)容,包含:軟件自動化測試的概念、軟件自動化測試的方法學(xué),軟件自動化測試系統(tǒng)的構(gòu)建,自動化測試用例與腳本的知識,自動化測試工具及運用,以及軟件系統(tǒng)的自動化測試應(yīng)用。自動化測試現(xiàn)在是測試的發(fā)展趨勢,實際測試過程比較完善的軟件企業(yè)與機構(gòu),都在采用自動化測試的策略,與手工測試結(jié)合,完成測試工作。自動化測試有一定的優(yōu)勢,如測試的工作效率提高,解決某些人工無法完成的測試任務(wù),如性能測試的壓力、負載測試等。本課程介紹自動化測試的一些基本方法與策略。鑒于課程課時和教學(xué)方式條件的限制,并沒有過多和大量的內(nèi)容,對測試平臺或工具種類的介紹和學(xué)習(xí)使用也無法實現(xiàn)全面、深入的說明、討論。這一章節(jié)的測試工具以介紹性、測試原理與實現(xiàn)機制上為主,示范的作用更強一些,實際學(xué)習(xí)時,可以做相應(yīng)的變通。這是基于自動化測試的原理是一致的。(10)軟件測試管理。作為一門包含工程性質(zhì)和內(nèi)容的課程,自然缺不了關(guān)于測試管理的內(nèi)容。本課程從測試管理概念,軟件測試管理的框架、軟件測試組織的管理、軟件測試計劃的管理、軟件測試過程的管理、軟件測試事件(缺陷、用例)的管理,以及軟件測試的配置管理(配置和文檔)做了測試管理較全面的說明和介紹。實際的企業(yè)測試過程,管理為必不可缺,雖然實施的程度和具體作法有所不同,但其中的測試管理的基本內(nèi)容基本上都涵蓋于此。(11)作為工程方法的學(xué)習(xí)。本課程以實踐教學(xué)的方式引入,雖然提供的教學(xué)形式仍主要是課堂講授,但這是必要的。工程方法的學(xué)習(xí)從兩個方面入手,首先是方法的介紹和說明,其次是學(xué)習(xí)這些方法理論后,進行項目測試的實踐,學(xué)習(xí)者需要通過“學(xué)中做”去領(lǐng)會與體驗方法。從而獲得對工程的理解、認識和把握,培養(yǎng)與形成能力。本課程軟件測試工程的實踐內(nèi)容,主要設(shè)計了組件測試、功能測試和性能測試。掌握了這些學(xué)習(xí)內(nèi)容和完成了項目的體驗過程?;旧峡蛇_到從事實際測試工作的進入‘門檻’。軟件組件測試:組件測試的步驟及過程,典型的組件測試工具與應(yīng)用介紹,測試工具的測試原理及實現(xiàn)機制,組件測試項目及實踐。軟件系統(tǒng)功能測試:功能測試概要、功能測試的需求分析、功能測試計劃的制定、功能測試測試用例的設(shè)計、正交實驗法設(shè)計功能測試用例、用PICT測試工具生成測試用例的方法工程,發(fā)現(xiàn)并報告缺陷,軟件項目功能測試的實施(以項目教學(xué)形式實施)。軟件系統(tǒng)性能測試:性能測試概要知識、性能測試的需求分析、性能測試的設(shè)計開發(fā)、性能測試(RPT)測試平臺的功能介紹與應(yīng)用分析,性能測試項目實施(項目教學(xué)形式實施)。本課程并未包含所有的軟件測試學(xué)科知識與技術(shù)方法,而是選取設(shè)計了基本的理論知識和技術(shù)方法,以及工程應(yīng)用。這里的學(xué)習(xí)及內(nèi)容應(yīng)是一個較高的起點和建立扎實的基礎(chǔ),就工程問題,也還有一些問題沒有涉及到,如軟件測試風(fēng)險的分析技術(shù)與防范策略,性能測試為深入和全面的性能測試(如、數(shù)據(jù)庫系統(tǒng)、服務(wù)器的硬件和支持軟件運行的性能狀況及變化、關(guān)于軟件安全性方面的測試等等),都不是一門課程的容量和有限課時所能貫徹和解決。這已超出本課程的目標與任務(wù),也為學(xué)習(xí)者留有進一步深入研究、學(xué)習(xí)和實踐的空間。四、課程怎樣學(xué)與學(xué)得好首先,學(xué)習(xí)軟件測試課程需要具備在軟件技術(shù)領(lǐng)域方面的一些基本的知識和基本技能(實踐能力),也就是說,最好能在學(xué)習(xí)該課程前學(xué)習(xí)過下列內(nèi)容:計算機系統(tǒng)及組成的知識、操作系統(tǒng)方面的和必要知識和實際的應(yīng)用能力、數(shù)據(jù)結(jié)構(gòu)方面的知識、數(shù)據(jù)庫系統(tǒng)知識、計算機網(wǎng)絡(luò)等方面的知識,還有,比較重要的程序設(shè)計與編程方面的知識和一定的實踐體驗。特別需要強調(diào)的是,軟件測試是一項比較有創(chuàng)造性的工作,不單純體現(xiàn)為更多的重復(fù)性高(過程可能規(guī)范,但內(nèi)容卻多為不同)的工作,所面對的測試問題是各種各樣的,未來實際工作中所遇到的各種問題也不盡相同,比如,你未來從事的測試領(lǐng)域是嵌入式軟件、移動互聯(lián)軟件、游戲軟件等等方面,可能在這樣一門短期課程內(nèi)(約需花費100多個小時)并沒有能面面俱到和深入地研究。重要的是,我們需要掌握真正的針對軟件測試實際工作、實際問題的分析問題和解決問題的能力,去面對這些‘新問題’。這需要的是扎實的知識基礎(chǔ)與技術(shù)能力。即,需要把課程學(xué)足、知識學(xué)牢、能力用活。軟件技術(shù)領(lǐng)域所有的專業(yè)知識與技術(shù)掌握都需要有良好的邏輯思維能力,軟件測試也不例外。這在課程學(xué)習(xí)的后期及未來的工作成長中顯得尤為重要。如該課程的學(xué)習(xí)者達到前述學(xué)習(xí)、授課的要求,將可能獲得較好的學(xué)習(xí)成效。舉個例子,你要完成對某個C/C++或JAVA程序的走查評審或單元測試的白盒測試工作,若你對這類程序設(shè)計和編程沒有多少實際的訓(xùn)練、數(shù)據(jù)結(jié)構(gòu)課程的內(nèi)容學(xué)習(xí)掌握的也不夠好,則可能很難找出程序的問題在哪里?甚至別人告知了程序的缺陷和問題在哪里,也不能很好的理解和體會。又如,性能測試時軟件產(chǎn)品系統(tǒng)性測試中涉及其他計算機系統(tǒng)、軟件專業(yè)知識領(lǐng)域最多的一項測試工作。如,Web應(yīng)用系統(tǒng)(如一個電子商務(wù)網(wǎng)站)的性能測試的過程將涉及計算機網(wǎng)絡(luò)系統(tǒng)的帶寬和傳輸方面的知識、服務(wù)器系統(tǒng)的硬件性能指標(CPU、內(nèi)存、存儲)了解,操作系統(tǒng)方面的一些性能指標(通過計數(shù)器或其他的測試方法獲得),數(shù)據(jù)庫方面的知識,Web系統(tǒng)或其他的C/S系統(tǒng)方面的協(xié)議知識,當(dāng)然也少不了對應(yīng)用系統(tǒng)領(lǐng)域業(yè)務(wù)背景的正確認識和理解,以及數(shù)理統(tǒng)計方面的基本知識(如平均值、方差等)等等。性能測試所做的針對是服務(wù)器端、網(wǎng)絡(luò)傳輸過程和網(wǎng)絡(luò)終端的三方面的時間響應(yīng)因素和用戶的并發(fā)訪問最大容量和極限值等,這需要發(fā)現(xiàn)是在哪個環(huán)節(jié)上影響了系統(tǒng)的性能,可認為是‘瓶頸’的問題。通過測試后,大量的統(tǒng)計分析數(shù)據(jù)你需要結(jié)合上述領(lǐng)域的知識才能夠較好的分析、理解,發(fā)現(xiàn)關(guān)于時間問題的‘故障’。學(xué)會和掌握這些,需要打好或具備上述所說的相關(guān)的知識的基礎(chǔ)。有些人會說,現(xiàn)在軟件測試都是自動化測試工具在運行,我會使用操作就可以了。這實際上是很幼稚、并不真切了解軟件測試本質(zhì)的不正確想法。自動化測試工具的運用是需要由人來操控運行的,而這類軟件的運用于測試問題(對象)、測試概念、測試知識、與基本的測試技術(shù)息息相關(guān),與程序的識別、分析和設(shè)計編寫,測試用例設(shè)計(測試場景設(shè)計)密切關(guān)聯(lián)。一個自動化測試系統(tǒng)真正掌握用好了,不少一件容易的事。軟件測試的實質(zhì)是采用各種技術(shù)措施和方法對軟件中存在的錯誤、缺陷進行探測與尋找的過程,同時對軟件的質(zhì)量特性進行度量的行為。面對幾前、幾萬、幾十萬、幾百萬、甚至上千萬行程序組成的軟件系統(tǒng),要找出各種存在問題(軟件測試原理已證明這是一定的),絕非易事。測試的這個原理與醫(yī)生給病人診斷,發(fā)現(xiàn)和尋求病情很相似,而度量類似人的體檢一樣,通過各種技術(shù)手段、方法對預(yù)定的檢查項目一項項的檢測,最終得出綜合的體檢報告,指出哪些方面存在病癥或體癥。體檢不僅需要醫(yī)療檢測儀器,更需要的醫(yī)學(xué)的專業(yè)知識,你看醫(yī)生操作這些儀器并不復(fù)雜,但要從檢測結(jié)果中發(fā)現(xiàn)問題就那么簡單了。測試也同樣需要測試工具或平臺,僅僅會用工具是遠遠不夠的,掌握基本的使用還解決不了什么實際的問題。所以,先認真學(xué)習(xí)和理解基本的概念和知識完全是必須的、必要的。學(xué)習(xí)測試專業(yè)技術(shù),不僅要‘知其然’,而要‘知其所以然’。也就是說,要理解概念和技術(shù)的原理。軟件測試,從名稱就能顧名思義,它是一門重視實踐的學(xué)科,測試是一項過程(活動),現(xiàn)在這項活動已跟體現(xiàn)為工程特征。也就是說,學(xué)習(xí)本課程,要按照工程的方法論去考慮問題和著手實際上的過程。所以這門課程有大量的關(guān)于測試工程的內(nèi)容,有工程的技術(shù)規(guī)范和標準,有工程需求問題、工程設(shè)計問題、工程實施的問題、工程成本的問題等諸多的影響工程的因素。因此,學(xué)習(xí)需要實踐和體會,反復(fù)琢磨,掌握工程方法,并要反復(fù)深刻理解和認識測試理論知識和技術(shù)原理,從而為能夠解決實際測試問題而建立基礎(chǔ)和自覺思維到測試的加護規(guī)范和工程標準。本課程的最終目標使你真正認識和形成對軟件測試的概念、基本技術(shù)方法掌握、并能以工程的方法形成思路,能夠參與和解決實際的測試任務(wù)與工作問題。同時,也對你今后的深入研究專門的測試學(xué)科和測試技術(shù)奠定基礎(chǔ)。達到這個目標,需要兩方面的基礎(chǔ):理論的和實踐的。該課程的學(xué)習(xí)者應(yīng)該充分明確,課程所介紹的各個實例(案例或項目),基本上都是學(xué)習(xí)活動與工程體驗過程的教學(xué)載體,并不是最終掌握的唯一目標。我們的學(xué)習(xí)所追求的目標是“舉一反三”的能力
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 IEC 61188-6-3:2024 EN-FR Circuit boards and circuit board assemblies - Design and use - Part 6-3: Land pattern design - Description of land pattern for through hole componen
- 2025-2030年中國飲用水行業(yè)現(xiàn)狀分析及投資十三五規(guī)劃研究報告
- 2025-2030年中國陸上貨物運輸保險市場運行狀況及發(fā)展風(fēng)險評估報告
- 2025湖南省建筑安全員-B證考試題庫及答案
- 2025-2030年中國鋁合金型材市場十三五規(guī)劃及發(fā)展建議分析報告
- 2025-2030年中國營林及木竹采伐機械制造產(chǎn)業(yè)需求分析及發(fā)展狀況預(yù)測報告
- 2025-2030年中國航模行業(yè)競爭格局及投資戰(zhàn)略研究報告
- 2025-2030年中國羅漢果茶市場發(fā)展現(xiàn)狀及前景規(guī)劃研究報告
- 2025-2030年中國紅薯淀粉市場運營狀況及前景預(yù)測分析報告
- 2025-2030年中國端氨基聚醚行業(yè)風(fēng)險評估及發(fā)展策略研究報告
- 2025春季開學(xué)前學(xué)校安全隱患排查工作實施方案:5大安全排查一個都不能少
- 威圖電柜空調(diào)SK3304500使用說書
- 人教版小學(xué)三年級道德與法治下冊全冊教案(精品)
- 雅馬哈貼片機_修機_調(diào)機的經(jīng)驗之談1
- 全自動咖啡機基本結(jié)構(gòu)及原理教程課件
- 金屬風(fēng)管支架重量計算表
- 正負零以下基礎(chǔ)施工方案(44頁)
- 簡愛人物形象分析(課堂PPT)
- 義務(wù)教育《勞動》課程標準(2022年版)
- 從業(yè)務(wù)骨干到管理者(課堂PPT)
- 2018年黑龍江統(tǒng)招專升本公共英語真題
評論
0/150
提交評論