趙亞清
天津環(huán)投數(shù)字科技有限公司 天津 300452
軟件測(cè)試是驗(yàn)證交付的軟件能夠達(dá)到預(yù)期的功能需求,或者檢測(cè)軟件的實(shí)際輸出功能與預(yù)期的功能之間是否存在差異,以及軟件在安全性、功能性、容錯(cuò)性、穩(wěn)定性方面是否滿足要求。軟件測(cè)試最終目標(biāo)是發(fā)現(xiàn)開發(fā)的軟件是否存在錯(cuò)誤。一般來說,是從用戶使用的視角出發(fā),通過測(cè)試發(fā)現(xiàn)軟件中存在不符合預(yù)期的功能、隱藏的錯(cuò)誤與缺陷。從開發(fā)者的視角出發(fā)分析,希望開發(fā)的軟件不存在錯(cuò)誤、具有容錯(cuò)異常處理能力,是一個(gè)成熟可靠,具有高質(zhì)量的“藝術(shù)品”,以保證開發(fā)的軟件能夠滿足客戶的要求,對(duì)用戶是友好易操作的,以此來提高用戶對(duì)軟件使用的信心[1]。
隨著軟件開發(fā)領(lǐng)域的需求日益增加,軟件測(cè)試已經(jīng)是其開發(fā)過程中重要的一部分,國家也越來越注重對(duì)軟件測(cè)試人員的培養(yǎng)。軟件測(cè)試是發(fā)現(xiàn)軟件程序中隱藏的錯(cuò)誤而施行的操作過程,換而言之軟件測(cè)試就是為軟件可靠性而生的,只有軟件通過測(cè)試系統(tǒng)才能擁有高可靠性。如果一個(gè)沒有通過測(cè)試的軟件就給用戶使用,那就不能保證在使用過程中是否會(huì)出現(xiàn)的各種錯(cuò)誤,甚至?xí)绊懻麄€(gè)計(jì)算機(jī)系統(tǒng)的運(yùn)行,這樣用戶體驗(yàn)極差,同時(shí)用戶的信賴度也隨之下降。怎么樣才能保證軟件的質(zhì)量,我們需要通過軟件測(cè)試來得到保證,而且要保證測(cè)試用例一定是合理與適當(dāng)?shù)模⑶乙欢ㄒ凑哲浖_發(fā)的生命周期來進(jìn)行:首先是需求分析、依次是系統(tǒng)設(shè)計(jì)、再次編碼實(shí)現(xiàn)、然后是軟件測(cè)試、最后是運(yùn)行維護(hù)。軟件測(cè)試在整個(gè)軟件開發(fā)過程中充當(dāng)?shù)氖切r?yàn)者,有了這個(gè)校驗(yàn)者工作才不會(huì)出差錯(cuò),做出來的成品質(zhì)量也是有保證的[2]。
單元測(cè)試法是軟件測(cè)試方法中的一種,它先對(duì)軟件測(cè)試進(jìn)行分塊,然后針對(duì)不同的單元設(shè)計(jì)相應(yīng)的測(cè)試方式。這種方法可以實(shí)現(xiàn)對(duì)計(jì)算機(jī)軟件的詳細(xì)檢查,使得軟件運(yùn)行的質(zhì)效得到有效保障。值得注意的是,采用該方法需要具備良好的計(jì)算機(jī)和軟件技術(shù)基礎(chǔ),這是因?yàn)閱卧獪y(cè)試法需要對(duì)軟件運(yùn)行的每一個(gè)細(xì)節(jié)都進(jìn)行檢查,盡可能發(fā)現(xiàn)細(xì)微處的漏洞。如果對(duì)計(jì)算機(jī)系統(tǒng)和軟件各個(gè)模塊的功能以及原理不能準(zhǔn)確掌握,那么在劃分測(cè)試單元和設(shè)計(jì)單元測(cè)試方式時(shí)就難免存在疏漏,進(jìn)而會(huì)影響到測(cè)試結(jié)果的可靠性[3]。
集成測(cè)試法主要是指在單元測(cè)試結(jié)束后,對(duì)軟件整體進(jìn)行測(cè)試時(shí)用到的一種方法。它主要是對(duì)相關(guān)的接口進(jìn)行檢測(cè),因?yàn)榻涌诔鲥e(cuò)會(huì)影響到軟件的正常運(yùn)行,此方法一般需要通過大面積的元件檢測(cè)來實(shí)現(xiàn)。通過集成測(cè)試,可以發(fā)現(xiàn)軟件運(yùn)行中的一些不足之處,然后再對(duì)其進(jìn)行進(jìn)一步的探究,使得軟件的運(yùn)行漸趨完善。集成測(cè)試時(shí)需要按照一定的次序開展,這可以使對(duì)軟件的檢測(cè)更加細(xì)致,很多細(xì)節(jié)問題尤其是接口問題也更易于被發(fā)現(xiàn)。
所謂邏輯驅(qū)動(dòng)測(cè)試法,也就是常說的白盒測(cè)試法,它主要是對(duì)軟件的程序進(jìn)行測(cè)試。在實(shí)踐應(yīng)用中,邏輯驅(qū)動(dòng)測(cè)試就是對(duì)程序的運(yùn)行路徑進(jìn)行測(cè)試,并在此基礎(chǔ)上對(duì)軟件進(jìn)行系統(tǒng)性分析。采用該方法前,應(yīng)該對(duì)軟件的整體結(jié)構(gòu)和運(yùn)行功能進(jìn)行系統(tǒng)的調(diào)研分析,然后再開展測(cè)試。
測(cè)試過程中主要是對(duì)軟件程序的執(zhí)行速率和相關(guān)路徑信息進(jìn)行獲取,然后在這些獲取信息數(shù)據(jù)的基礎(chǔ)上對(duì)其進(jìn)行系統(tǒng)性的整理和分析。值得注意的一點(diǎn)是,該方法主要是對(duì)軟件代碼的執(zhí)行路徑和速率進(jìn)行測(cè)試,對(duì)軟件程序的功能實(shí)現(xiàn)缺乏有效關(guān)注,所以在實(shí)踐應(yīng)用中還存在一些不足之處。比如軟件程序如果不完整,那么采用邏輯驅(qū)動(dòng)測(cè)試法一般難以找到原因;又比如軟件數(shù)據(jù)出錯(cuò),該方法也難以發(fā)現(xiàn)軟件中存在的問題。因此,在采用該方法時(shí),要求測(cè)試人員應(yīng)該對(duì)軟件程序的要求進(jìn)行明確掌握,并在應(yīng)用中輔助采用一些相關(guān)的技術(shù)手段,這樣才能最大限度地確保軟件測(cè)試結(jié)果的有效性。
一是標(biāo)準(zhǔn)化軟件測(cè)試規(guī)范及體系。明確規(guī)定軟件測(cè)試工作流程、團(tuán)隊(duì)建設(shè)模式、軟件測(cè)試不同階段工作內(nèi)容以及預(yù)期取得的成果,統(tǒng)一化軟件測(cè)試工作文檔格式及內(nèi)容,對(duì)軟件測(cè)試工作的不同階段內(nèi)容制定可行性較高的標(biāo)準(zhǔn)體系。二是構(gòu)建軟件測(cè)試案例庫。持續(xù)完善軟件測(cè)試案例庫,有助于提升軟件測(cè)試案例的利用率,能夠盡早確定系統(tǒng)問題的來源,縮短問題分析及問題解決方案制定所需要的時(shí)間,避免此類問題再次發(fā)生,真正提升軟件測(cè)試效率,保障軟件質(zhì)量。
可以從兩方面入手:一是加強(qiáng)溝通交流。就調(diào)查發(fā)現(xiàn),很多軟件項(xiàng)目的測(cè)試工作介入時(shí)間相對(duì)較晚,并且開發(fā)人員和測(cè)試人員基本不存在溝通交流,為了避免上述問題,就要加強(qiáng)溝通交流,這樣可以讓測(cè)試人員更快了解測(cè)試內(nèi)容,快速找到軟件存在的問題點(diǎn),與同事分享發(fā)現(xiàn)的問題,將所有的問題歸類處理,錄入案例庫,設(shè)計(jì)人員在受到測(cè)試報(bào)告以后,可以與測(cè)試人員溝通交流,共同討論出一個(gè)科學(xué)的解決方案,這樣可以加快開發(fā)進(jìn)度,提高軟件質(zhì)量。二是加強(qiáng)測(cè)試團(tuán)隊(duì)的建設(shè)。軟件測(cè)試面臨的最大的問題就是“重開發(fā)輕測(cè)試”,甚至出現(xiàn)測(cè)試資金不足的現(xiàn)象,為此要摒棄這種不合理的思想,加強(qiáng)對(duì)測(cè)試人員的合理培訓(xùn),引進(jìn)一些先進(jìn)的測(cè)試技術(shù)及方法,不斷提高測(cè)試人員綜合素養(yǎng),掌握更多的專業(yè)測(cè)試技能。
計(jì)算機(jī)軟件在各行各業(yè)的應(yīng)用,使得生產(chǎn)的效率得以大大提高,人們的生活質(zhì)量也有了顯著提升。與此同時(shí),我們也要清醒地認(rèn)識(shí)到,當(dāng)前計(jì)算機(jī)軟件的普及應(yīng)用,人們的生活和工作已經(jīng)對(duì)其形成了較強(qiáng)的依賴,一旦出現(xiàn)故障或設(shè)計(jì)缺陷,造成的影響將十分巨大,所以有必要對(duì)計(jì)算機(jī)軟件開展測(cè)試工作,以確保其投入運(yùn)用后的運(yùn)行可靠性。