馮越鑫 趙獻陽 王陽
摘 要:軟件開發(fā)和測試技術(shù)的飛速發(fā)展,在當今社會眾多領(lǐng)域中發(fā)揮重要作用。計算機軟件,對拓展智能終端的功能、方便人們生產(chǎn)生活有諸多現(xiàn)實意義。文章將對計算機軟件測試技術(shù)與開發(fā)應(yīng)用進行闡述和討論。
關(guān)鍵詞:計算機軟件;測試技術(shù);開發(fā)應(yīng)用
引言
軟件是實現(xiàn)計算機硬件與用戶之間聯(lián)系的紐帶,軟件的架構(gòu)是設(shè)計的重要依據(jù)。計算機軟件的優(yōu)化、提升、完善,提高軟硬件交互的匹配度和適應(yīng)性,從而更加有效地滿足用戶的需要,達到用戶的期望。通過科學(xué)、有效的測試技術(shù)對軟件進行測試,是確保計算機軟件安全、高效運行的重要前提。
1測試相關(guān)概述
1.1計算機軟件測試的意義
軟件測試是軟件正確性、完整性、追溯性的有效保證。軟件設(shè)計和實現(xiàn)過程中,會不可避免地產(chǎn)生一些錯誤,輕則無法實現(xiàn)軟件的功能、性能需求,重則造成軟件的異常中斷、停止和崩潰,無法實現(xiàn)用戶的期望,產(chǎn)生無法挽回的損失。軟件測試可以把軟件設(shè)計、實現(xiàn)過程中遇到的問題發(fā)現(xiàn)并加以監(jiān)督糾正,同時,又可有效測試運行情況和性能優(yōu)劣,確保軟件運行的質(zhì)量和效果。
1.2計算機軟件測試的目的
軟件測試旨在發(fā)現(xiàn)軟件存在的漏洞和缺陷,用最少的人力物力時間, 找出軟件中存在的問題,修正問題,規(guī)避商業(yè)風(fēng)險,在有限的規(guī)定條件下,使用人工和自動手段來運行程序,從而發(fā)現(xiàn)問題、驗證需求,對軟件質(zhì)量進行評估的過程。
1.3計算機軟件測試的方法
軟件測試執(zhí)行的過程中,最常用的是黑盒測試以及白盒測試方法。黑盒測試的主要內(nèi)容就是對軟件各個方面的功能點進行符合性測試,以檢驗它的功能是否可用,是否滿足軟件需求規(guī)格說明規(guī)定的情況,給出需求規(guī)格說明的正確反饋。在測試期間,將被測軟件當做不能打開的黑盒子,測試員不需要測量他們內(nèi)部的結(jié)構(gòu)邏輯和具體的代碼,集中精力測試被測軟件的每一特定情況是否可用。其中,推測錯誤法、邊界值、因果判定、場景描述等方法均是黑盒測試常用的方法,也是用例設(shè)計的有效方式。白盒測試技術(shù)常用于單元測試、集成測試,側(cè)重于對代碼邏輯、語句覆蓋等情況的測試。白盒測試同黑盒測試相反,需要驗證被測軟件的代碼,把被測軟件當做打開的盒子,進行代碼的分析和檢查。
2計算機軟件測試技術(shù)
2.1單元測試
單元測試主要是測試軟件設(shè)計中的最小單位,也就是模塊。測試人員需要提前設(shè)計好驅(qū)動程序及存根程序來進行軟件測試,在接收數(shù)據(jù)和調(diào)用模塊組件的同時,做好數(shù)據(jù)填充,提前進行樁代碼設(shè)計。單元測試的優(yōu)點在于,將開發(fā)與測試結(jié)合,便于開發(fā)人員進行軟件調(diào)優(yōu)和完善,將缺陷問題發(fā)現(xiàn)在最初的階段,控制軟件產(chǎn)生的損失,更便于后期的軟件設(shè)計實現(xiàn)。
2.2集成測試
這一測試技術(shù)主要包括兩種方式,即漸增測試和非漸增測試。漸增測試主要是將待測模塊與已測模塊相連接,等到測試完成后再行下一步檢測。在測試過程中,測試的模塊越來越多,需要根據(jù)實際情況來選擇合適的集成方式,確保模塊能夠真正連接到軟件程序之中。非漸增測試主要是對模塊的結(jié)構(gòu)圖進行連接,然后參照相應(yīng)標準從整體上進行測試。
2.3配置項測試
配置項測試側(cè)重于驗證與軟件需求規(guī)格說明的一致性。軟件配置項內(nèi)容包括:功能測試、性能測試、外部接口測試、余量測試和邊界測試,必要時,應(yīng)包括人機交互界面測試、強度測試、可靠性測試、安全性測試、恢復(fù)性測試、安裝性測試、互操作性測試、敏感性測試等內(nèi)容。
2.4系統(tǒng)測試
系統(tǒng)測試要遵循嚴格的測試標準,多選用黑盒測試的方法。在系統(tǒng)測試時,要將軟件編程系統(tǒng)與客戶的實際需求進行詳細的對比,從中找出不足,進一步滿足客戶的基本需求。系統(tǒng)測試與配置項測試的不同之處在于,系統(tǒng)測試常常以項目總體單位牽頭組織,設(shè)計單位參與執(zhí)行,而配置項測試往往設(shè)計單位組織執(zhí)行。
2.5用戶驗收測試技術(shù)
用戶驗收測試主要是針對軟件的可用性及功能進行的,目的在于驗證軟件的運行程序是否符合業(yè)務(wù)要求。用戶驗收測試可分為α測試和Beta測試。α測試過程中,需要在開發(fā)環(huán)境下進行測試。Beta測試是在進行功能及系統(tǒng)測試之后進行的,是技術(shù)測試的最后階段。因此,在進行Beta測試時,要明確用戶場景,通過對測試記錄的分析,將計算機軟件中的潛在問題反饋給開發(fā)者。
3測試驅(qū)動開發(fā)技術(shù)
測試驅(qū)動開發(fā)(TDD)是一種軟件工程實踐,應(yīng)在驗證的代碼之前編寫單元測試。它在進行簡單的概要設(shè)計后, 首先進行的是測試用例的編寫, 然后執(zhí)行測試用例進行測試。測試失敗, 則進行編碼驅(qū)使測試通過, 這就是所謂的測試驅(qū)動。最終, 測試得到通過,再對代碼進行重構(gòu),優(yōu)化代碼結(jié)構(gòu)和性能。而傳統(tǒng)流程則先進行概要設(shè)計, 然后在概要設(shè)計基礎(chǔ)上進行詳細設(shè)計,在詳細設(shè)計階段盡可能設(shè)想到全部問題和需求的解決方法, 然后才開始編碼實現(xiàn)詳細設(shè)計。
在互聯(lián)網(wǎng)發(fā)展迅速的當下,敏捷開發(fā)的模式驅(qū)動了TDD 的加速發(fā)展, 而這也是測試和開發(fā)互相影響的作用結(jié)果,同時測試驅(qū)動開發(fā)也對測試和開發(fā)人員均提出了更高的要求。
4軟件測試的相關(guān)建議
計算機軟件測試中存在的問題主要是由于開發(fā)測試技術(shù)不足與行業(yè)生態(tài)環(huán)境的水平差異,針對這一問題,可以通過加強技術(shù)培訓(xùn),提升軟件開發(fā)測試的生態(tài)環(huán)境解決。第一,針對計算機軟件測試行業(yè)的技術(shù)薄弱環(huán)節(jié),行業(yè)可以加大資金投入,積極引進軟件測試行業(yè)的專業(yè)型人才,以提升行業(yè)的整體技術(shù)水平;還應(yīng)定期對在崗的軟件測試人員進行培訓(xùn),如設(shè)立技術(shù)講座、組織技術(shù)競賽等,以提升在崗人員的技術(shù)水平,從而提升行業(yè)的整體水準;除此之外,還應(yīng)培養(yǎng)行業(yè)的創(chuàng)新意識,提升創(chuàng)新能力,關(guān)注國內(nèi)外專業(yè)的軟件測試社區(qū),鼓勵行業(yè)人才多接觸軟件測試方面的新知識,提出新理論并運用于實踐中,以檢測其可行性,從而提升軟件測試的工作效率。第二,應(yīng)逐步改善計算機軟件開發(fā)測試的生態(tài)環(huán)境,制定相關(guān)的規(guī)章制度,以標準化、系統(tǒng)化的理念對行業(yè)進行規(guī)范;還應(yīng)在國內(nèi)建立軟件測試的信息交流平臺,以保障各類優(yōu)秀的計算機軟件可以在平臺上得到流動,使各軟件開發(fā)團隊都可以及時獲取新興的開發(fā)理念與手段,消除地區(qū)差異所帶來的信息不對等現(xiàn)象,全面提升計算機軟件開發(fā)行業(yè)的整體實力,為我國的計算機軟件測試技術(shù)與開發(fā)應(yīng)用提供動力。
結(jié)束語:綜合以上敘述,對于計算機軟件測試技術(shù)的應(yīng)用以及開發(fā)而言,在實踐的過程中,需要根據(jù)設(shè)計目標的要求對測試技術(shù)的應(yīng)用以及開發(fā)效果進行明確,從而保證后續(xù)工作的有效開展,在上面分析中對計算機軟件測試技術(shù)以及開發(fā)應(yīng)用的要點進行了探討,目的能夠給相關(guān)人員提供一些幫助。
參考文獻:
[1]趙秀梅.基于配置項的計算機軟件測試技術(shù)分析[J].技術(shù)與市場,2020, 27(8):66-67.
[2]毛子晏.對計算機軟件測試技術(shù)的幾點探討[J].電腦知識與技術(shù),2020,16(18):77-79.
[3]梁利亭. 云計算的計算機軟件測試技術(shù)分析[J]. 現(xiàn)代信息科技,2020, 3(23):69-70,73.
[4]施瑩超.計算機軟件測試技術(shù)與開發(fā)應(yīng)用探討[J].信息與電腦(理論版), 2019,31(21):88-89,92.
[5]CSDN:https://blog.csdn.net/kexinxin1/article/details/93012204.