陳鴻男
摘要:隨著軟件行業(yè)的發(fā)展,軟件測試行業(yè)也隨之而來。歷史上有很多次因為軟件的故障而造成重大損失的案例。比如2000年時最典型“千年蟲”案例,全球損失金額超過5000億。究其原因僅僅就是因為當(dāng)初設(shè)計軟件時沒有考慮到時間的位數(shù)。軟件質(zhì)量固然是非常重要的,軟件測試是軟件質(zhì)量的重中之重。軟件測試并不僅僅是測試軟件本身。而是在整個軟件的研發(fā)周期內(nèi)都是存在的。
關(guān)鍵詞:計算機(jī);軟件測試;軟件編程
一、軟件測試的現(xiàn)狀
目前現(xiàn)在軟件系統(tǒng)越來越復(fù)雜,一個軟件不能夠由單獨的軟件工程師單獨編寫,而是由團(tuán)隊進(jìn)行配合,每個人可能只負(fù)責(zé)一個模塊,對于全局沒有過多的了解,這時如果運(yùn)行軟件就會容易產(chǎn)生很多的錯誤。在行業(yè)內(nèi)將這些錯誤叫做BUG。并且每一個軟件工程師都會有思維的死角,自己不容易發(fā)現(xiàn)自己編寫出來的錯誤。所以這個時候就需要專門的軟件測試工程師用專業(yè)的測試方式來檢查軟件。檢查該軟件是否符合客戶要求的產(chǎn)品設(shè)計,是否能夠符合大多數(shù)用戶的使用習(xí)慣,如果發(fā)現(xiàn)異常狀態(tài)及時進(jìn)行處理。目前軟件市場雖然遠(yuǎn)遠(yuǎn)沒有達(dá)到飽和但是各種各樣功能的軟件也層出不窮競爭激烈,對軟件開發(fā)的質(zhì)量要求也是日益增高。
所以軟件測試是由于軟件開發(fā)編程行業(yè)高度成熟后所形成的產(chǎn)物。從行業(yè)的整體成熟度來講,軟件開發(fā)行業(yè)的整體成熟度更高,人們對軟件開發(fā)的理解也更為全面深入。故此通常將軟件測試和軟件開發(fā)放在一起做比較。縱然二者都屬于產(chǎn)品研發(fā)但通常人們的關(guān)注點有所傾斜。所以經(jīng)常用軟件開發(fā)設(shè)計工程師的要求來評價軟件測試工程師,僅看到軟件測試和軟件開發(fā)相比的弱勢卻看不到優(yōu)勢。
二、軟件測試與軟件開發(fā)相比的優(yōu)勢與劣勢
軟件測試本身擁有眾多的優(yōu)勢。首先與軟件開發(fā)相比軟件測試的入門門檻相對更容易些。這對于給一些想要從事這個行業(yè)但又沒有過多編程經(jīng)驗的人來說,無疑提供了很多的方便,能讓這些人以軟件測試工程師的身份了解整個行業(yè)。另一方面,擁有跨行業(yè)經(jīng)驗的人,做軟件測試有著極大的優(yōu)勢,很多企業(yè)在招聘的時候都會聘請一些對其他行業(yè)有經(jīng)驗的軟件測試工程師。比如要開發(fā)一款財務(wù)管理軟件,就需要找一些懂得金融、財會專業(yè)的人來從事軟件測試,因為他們能夠從需求的角度去分析軟件的利弊。所以軟件測試工程師是整個產(chǎn)品研發(fā)環(huán)節(jié)中最能夠理解產(chǎn)品全貌并且能夠了解客戶需求的人。軟件測試工程師關(guān)注的不僅僅是功能,還要滿足用戶心理的需求。
其次軟件測試工程師一般都具有一定的溝通能力,不僅僅是當(dāng)發(fā)現(xiàn)問題時跟開發(fā)團(tuán)隊進(jìn)行溝通,并且軟件測試工程師都會作為公司與用戶之間的橋梁,經(jīng)常與用戶進(jìn)行溝通互動去發(fā)現(xiàn)問題。所以這些額外鍛煉的能力,讓軟件測試工程師未來的發(fā)展多了一些可塑性。通過不斷的學(xué)習(xí)和進(jìn)行黑白盒測試,大量的審閱代碼,編程技能會更加的精通。與此同時,軟件測試工程師還能夠鍛煉自己的溝通協(xié)調(diào)、挖掘需求、風(fēng)險意識等能力。
軟件測試雖然有很多的優(yōu)勢,但同時也會有很多的劣勢。就職的門檻雖然很低,但與此同時也代表了技術(shù)含量低,自身價值較低,相比軟件開發(fā)工資待遇與職能地位都無法相提并論。所以這也導(dǎo)致了軟件測試人員為了追求自身價值和收入待遇,會讓自己向技術(shù)開發(fā)轉(zhuǎn)型,讓自己成為一個復(fù)合型的開發(fā)測試人才。
三、軟件測試未來發(fā)展趨勢
未來單純只是作為軟件測試的人員會越來越少,未來會將軟件測試工程師的職能轉(zhuǎn)移到軟件開發(fā)工程師身上,由項目經(jīng)理做引導(dǎo),使兩個開發(fā)團(tuán)隊去測試對方團(tuán)隊開發(fā)的軟件。這樣就能夠有效的避免思維的誤區(qū)。同時也能增強(qiáng)軟件開發(fā)工程師的溝通協(xié)調(diào)、風(fēng)險意識、挖掘需求、分析總結(jié)等能力。并且未來自動化的測試比重將會明顯增加,一些簡單的極限操作測試將會由接口程序來完成,比如測試軟件圖片從重復(fù)加載多少次會造成軟件卡頓、游戲軟件里撞墻多少次竟然能夠穿墻,這些簡單無聊的測試目前會占用測試人員大量的時間,并且可能也無法測試到真正問題,而用接口程序來解決,就可以大量的節(jié)省測試的時間以及測試的全面性,這對于人工來說是完全無法達(dá)到的。所以未來一些低端的測試人員的需求都將不復(fù)存在。但軟件的性能測試需求測試等方面,對軟件測試的需求仍然無比巨大,因為這些需要主觀分析總結(jié),用經(jīng)驗和邏輯分析得出的問題,是算法無法實現(xiàn)無法取代的,所以未來軟件測試將會成為軟件開發(fā)工程師的必備技能,軟件開發(fā)工程師將自己打造成復(fù)合型人才,具備綜合技能與專精技能,才會成為行業(yè)中的精英。
結(jié)語
所以軟件測試工程師這個職業(yè)即是一個行業(yè)高度發(fā)達(dá)后的產(chǎn)物,同時也是一個過渡的職業(yè),未來這個單純的職業(yè)將會消失,取而代之的是軟件開發(fā)工程師的層級區(qū)分,最高級的軟件開發(fā)工程師會兼顧從事軟件測試的職能。但無論如何軟件測試對于軟件整體開發(fā)環(huán)節(jié)來說都是必不可少的。作為新時代的高中生既然已經(jīng)選定了目標(biāo),立志要成為一名出色的軟件工程師,那兼顧學(xué)習(xí)軟件測試就會讓自己的綜合能力得到提升,在未來開發(fā)產(chǎn)品時能夠更好的向市場用戶需求靠攏,從而開發(fā)出更加能夠獲得認(rèn)可的軟件。
參考文獻(xiàn):
[1]朱曉敏.軟件測試的相關(guān)技術(shù)應(yīng)用研究[J].電子測試,2017 (1):122-123.
[2]王云飛,張幫亮.計算機(jī)軟件測試方法的研究[J].數(shù)字化用戶,2017,23 (45).