第一篇:軟件測(cè)試的重要性
軟件測(cè)試的重要性
“在發(fā)布新產(chǎn)品之前做好測(cè)試,提高軟件產(chǎn)品質(zhì)量,減少漏洞,是預(yù)防遭受木馬攻擊的根本途徑?!?北京康賽普特信息技術(shù)有限公司高級(jí)測(cè)試總監(jiān)王亞智指出,零缺陷的軟件是不存在的。但通過(guò)必要的測(cè)試,軟件缺陷可減少75%,降低軟件使用風(fēng)險(xiǎn)。
有關(guān)機(jī)構(gòu)研究表明,國(guó)外軟件開發(fā)廠商約40%的工作量要花在測(cè)試上,對(duì)一些可靠性、安全性要求較高的軟件更是不惜人力物力。以微軟為例,早在1999年發(fā)布Windows 2000操作系統(tǒng)時(shí),微軟就投入了250多個(gè)項(xiàng)目經(jīng)理、1700多個(gè)開發(fā)人員,內(nèi)部測(cè)試人員則達(dá)到3200人,比前兩者的之和還要多。而這對(duì)非科班出身的Google來(lái)說(shuō),遠(yuǎn)不能及。
相比之下,國(guó)內(nèi)IT產(chǎn)業(yè)還在軟件測(cè)試人才稀缺這一基礎(chǔ)難題上掙扎。由于人才供需失衡,國(guó)內(nèi)120萬(wàn)軟件從業(yè)人員中,真正能擔(dān)當(dāng)軟件測(cè)試職位的不超過(guò)5萬(wàn)人,3年以上資深的軟件測(cè)試工程師不足1萬(wàn)人,大多數(shù)軟件廠商測(cè)試人員的數(shù)量不足開發(fā)人員數(shù)量的五分之一,遠(yuǎn)落后于國(guó)外先進(jìn)水平。人才短缺使企業(yè)測(cè)試能力不足,限制了產(chǎn)品開發(fā)和行業(yè)發(fā)展。專家分析指出,導(dǎo)致我國(guó)測(cè)試人才稀缺的主要原因是人才培養(yǎng)途徑不健全。目前,高等教育體系還沒有開設(shè)軟件測(cè)試的相關(guān)專業(yè),僅有幾家知名職業(yè)培訓(xùn)機(jī)構(gòu)開設(shè)了相關(guān)課程,但每年培養(yǎng)的人才相對(duì)市場(chǎng)的巨大缺口無(wú)異于杯水車薪,造成現(xiàn)階段我國(guó)軟件測(cè)試人才供需嚴(yán)重不平衡,人才培養(yǎng)迫在眉睫。
從消費(fèi)者追求安全可靠的心態(tài)作為衡量軟件產(chǎn)品是否合格的標(biāo)準(zhǔn)來(lái)看,軟件測(cè)試就不僅僅應(yīng)是檢驗(yàn)質(zhì)量的工具,更應(yīng)成為驗(yàn)證軟件產(chǎn)品是否符合用戶需求的保障。對(duì)軟件廠商來(lái)說(shuō),只有擁有足夠的軟件測(cè)試人才才能對(duì)產(chǎn)品進(jìn)行全面的安全測(cè)試,業(yè)務(wù)才有可能進(jìn)一步擴(kuò)展。否則,軟件產(chǎn)品的安全問(wèn)題終將成為高懸在企業(yè)頭上的達(dá)摩克利斯之劍。
測(cè)試是什么?測(cè)試就是對(duì)項(xiàng)目開發(fā)過(guò)程的產(chǎn)品(編碼、文檔等)進(jìn)行差錯(cuò)審查,保證其質(zhì)量的一種過(guò)程。
軟件業(yè)的迅猛發(fā)展也就是近幾十年的過(guò)程,時(shí)間雖短,但許多誤解似乎已根深蒂固,對(duì)測(cè)試的偏見也是如此。&ldquo軟件的重點(diǎn)在于需求、在于分析、在于設(shè)計(jì)、在于開發(fā),而測(cè)試,容易,沒什么技術(shù)含量,找一些用戶,對(duì)照需求盡力去測(cè)就行了;有時(shí)間多測(cè)點(diǎn),沒時(shí)間就少測(cè)點(diǎn)。&rdquo這種看法在許多項(xiàng)目經(jīng)理、軟件負(fù)責(zé)人的心中固守著,難以改變。
這種觀念的結(jié)果有目共睹,是什么?很簡(jiǎn)單,是大量軟件BUG、缺陷的&ldquo流失&rdquo,從測(cè)試人員手中悄然而過(guò),流失到用戶手中,流失進(jìn)項(xiàng)目維護(hù)階段。隨之而來(lái)的,便是用戶無(wú)休止的抱怨、維護(hù)人員無(wú)休止的&ldquo救火&rdquo、維護(hù)成本無(wú)休止的增加。這是軟件人員的夢(mèng)魘!
惡夢(mèng)總有醒來(lái)時(shí),經(jīng)過(guò)無(wú)數(shù)教訓(xùn)的重?fù)?,在不堪回首而不得回首的?jīng)歷中,軟件業(yè)的管理者發(fā)現(xiàn):是他們錯(cuò)了,軟件測(cè)試是不可忽視的。
&ldquo所有這些問(wèn)題,假如在項(xiàng)目中測(cè)試到的話,便不會(huì)有造成不可收拾的結(jié)果了。&rdquo――人們終于意識(shí)到測(cè)試簡(jiǎn)單而純真的真諦。
軟件測(cè)試
軟件測(cè)試從直觀上來(lái)講是對(duì)測(cè)試對(duì)象進(jìn)行檢查、驗(yàn)證,似乎很簡(jiǎn)單,但實(shí)際不然,它是由許多處理環(huán)節(jié)構(gòu)成的。根據(jù)測(cè)試目標(biāo)、質(zhì)量控制的要求,它被劃分為以下各類環(huán)節(jié)(如下圖),并被設(shè)置了不同的準(zhǔn)入、準(zhǔn)出標(biāo)準(zhǔn)。
[2008-12-18]
什么是軟件外包?
軟件外包就是企業(yè)為了專注核心競(jìng)爭(zhēng)力業(yè)務(wù)和降低軟件項(xiàng)目成本,將軟件項(xiàng)目中的全部或部分工作發(fā)包給提供外包服務(wù)的企業(yè)完成的軟件需求活動(dòng)?,F(xiàn)在業(yè)務(wù)流程外包(BPO)已經(jīng)成為外包服務(wù)新的發(fā)展趨勢(shì),在未來(lái)幾年內(nèi)將成為外包的主要內(nèi)容。BPO包括人力資源、采購(gòu)、財(cái)會(huì)、客戶中心、后勤、研發(fā)、營(yíng)銷、工廠運(yùn)作、培訓(xùn),這些大類還可以進(jìn)一步細(xì)分。不僅IT行業(yè)需要BPO,而且BPO的每項(xiàng)業(yè)務(wù)都離不開IT業(yè)務(wù)的支持,從而產(chǎn)生IT外包機(jī)會(huì)。
一個(gè)軟件開發(fā)項(xiàng)目通常要經(jīng)歷需求分析、設(shè)計(jì)、編程、測(cè)試等幾個(gè)大的階段。其中設(shè)計(jì)又包括整體設(shè)計(jì)、系統(tǒng)設(shè)計(jì)(把整體架構(gòu)變成一塊塊系統(tǒng))、詳細(xì)設(shè)計(jì)幾個(gè)環(huán)節(jié)。詳細(xì)設(shè)計(jì)之后軟件就變成了一塊塊模塊,這以后才進(jìn)入編程。到了編程階段時(shí),最后就剩下軟件藍(lán)領(lǐng)為模塊的Coding工作,在印度通常由受過(guò)一兩年訓(xùn)練的高職畢業(yè)生擔(dān)任。
軟件最后的測(cè)試又是一個(gè)復(fù)雜過(guò)程——有單元測(cè)試(小模塊測(cè)試)、系統(tǒng)測(cè)試(塊與塊的聯(lián)系整合)、總體功能測(cè)試。期間由測(cè)試編程工程師編寫測(cè)試工具,制定測(cè)試規(guī)則,其難度不亞于系統(tǒng)框架的制定。最后才由測(cè)試工程師完成測(cè)試的任務(wù)。
外包軟件測(cè)試有望成為小作坊軟件業(yè)業(yè)務(wù)增長(zhǎng)點(diǎn)
企業(yè)若想把承接國(guó)際軟件外包的業(yè)務(wù)做強(qiáng)做大,必須與國(guó)際軟件市場(chǎng)接軌——包括英語(yǔ)的理解與溝通能力,技術(shù)接軌、管理接軌、做事方法接軌、知識(shí)產(chǎn)權(quán)接軌。還有質(zhì)量保障、信譽(yù)度保障、風(fēng)險(xiǎn)控制能力以及知識(shí)產(chǎn)權(quán)保障等方面。以上條件顯然國(guó)內(nèi)大多數(shù)小作坊式軟件企業(yè)還做不到。但這也未必表示小作坊軟件企業(yè)就沒有機(jī)會(huì)承接軟件外包服務(wù)。因?yàn)檐浖獍?xiàng)目中,軟件測(cè)試項(xiàng)目最適合中國(guó)現(xiàn)階段小作坊軟件企業(yè)的行業(yè)特色。
軟件測(cè)試是保證軟件質(zhì)量的最重要的手段
使用低質(zhì)量的軟件,在運(yùn)行過(guò)程中可能會(huì)產(chǎn)生這樣那樣的問(wèn)題,可能為使用單位帶來(lái)造成延誤工作或者造成生命財(cái)產(chǎn)的損失。而軟件測(cè)試是為保證軟件用戶免于遭受損失的最重要的手段。
什么是軟件測(cè)試?1983年IEEE定義為:使用人工或自動(dòng)手段來(lái)運(yùn)行或測(cè)定某個(gè)系統(tǒng)的過(guò)程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果
與實(shí)際結(jié)果之間的差別。
現(xiàn)代的軟件開發(fā)工程是將整個(gè)軟件開發(fā)過(guò)程明確的劃分為幾個(gè)階段(參見下圖),將復(fù)雜問(wèn)題具體按階段加以解決。這樣,在軟件的整個(gè)開發(fā)過(guò)程中,可以對(duì)每一階段提出若干明確的監(jiān)控點(diǎn),作為各階段目標(biāo)實(shí)現(xiàn)的檢驗(yàn)標(biāo)準(zhǔn),從而提高開發(fā)過(guò)程的可見度和保證開發(fā)過(guò)程的正確性。
經(jīng)驗(yàn)證明,軟件的質(zhì)量不僅是體現(xiàn)在程序的正確性上,它和開始編碼以前所做的系統(tǒng)需求分析,軟件設(shè)計(jì)密切相關(guān)。許多軟件使用中出現(xiàn)的錯(cuò)誤,未必是編程人員在編碼階段造成的,反而在程序設(shè)計(jì),甚致在需求分析時(shí)就埋下了禍因。這時(shí),對(duì)軟件工程的錯(cuò)誤糾正,就必須追溯到軟件開發(fā)的最初階段。如果是這樣又增大了軟件的開發(fā)費(fèi)用。
為了保證軟件的質(zhì)量,專案管理就應(yīng)該著眼于整個(gè)軟件生存期,特別是在開發(fā)階段的系統(tǒng)分析。所以軟件測(cè)試的概念和實(shí)施范圍必須包括在整個(gè)開發(fā)各階段的復(fù)查、評(píng)估和檢測(cè)。
第二篇:軟件測(cè)試 心得體會(huì)
蘭州直方科技有限公司
心得體會(huì)
如果要進(jìn)步,那么就要嘗試新的技術(shù),新的思維,大膽的使用,在用的過(guò)程中肯定會(huì)學(xué)到新的東西。
加強(qiáng)團(tuán)隊(duì)內(nèi)部的溝通,是解決團(tuán)隊(duì)內(nèi)部分散的最好辦法,如果一個(gè)團(tuán)隊(duì)沒有很好溝通,那么這個(gè)團(tuán)隊(duì)就像是沒有肥力的沙漠就沒有競(jìng)爭(zhēng)力,它的存在價(jià)值值得懷疑。但是加強(qiáng)團(tuán)隊(duì)建設(shè)是一件很不容易做到的事情,加入團(tuán)隊(duì)中有某一個(gè)成員技術(shù)很牛,就是搞獨(dú)立,不按照游戲的規(guī)則,那么,作為項(xiàng)目小組的負(fù)責(zé)人,該如何去解決這個(gè)問(wèn)題。我想在肯定他技術(shù)很牛的同時(shí)也應(yīng)該讓他明白如果只是將自己所做的模塊做好,整個(gè)項(xiàng)目卻是一般般,那么自己做好的那個(gè)模塊就起不到任何的作用了。溝通,再溝通,直到他能很好的配合團(tuán)隊(duì)的工作,這樣我相信我們的團(tuán)隊(duì)是一個(gè)有凝聚力、競(jìng)爭(zhēng)力的團(tuán)隊(duì),我們才能按時(shí)高質(zhì)量的完成項(xiàng)目。
在這次的項(xiàng)目中,我們學(xué)到了很多。尤為深刻的體會(huì)是一個(gè)團(tuán)隊(duì)如果不能團(tuán)結(jié)在一起,那么它就沒有競(jìng)爭(zhēng)。項(xiàng)目組之間要多交流一邊更好的理解別人的思維、項(xiàng)目的進(jìn)程來(lái)及時(shí)解決存在的問(wèn)題以及計(jì)劃的改進(jìn)。要對(duì)自己準(zhǔn)確定位知道自己能勝任什庅樣的工作以及在那一方面最擅長(zhǎng)可以做得很好。
很榮幸,在本次項(xiàng)目開發(fā)中,我個(gè)人承擔(dān)項(xiàng)目小組長(zhǎng)的角色,在項(xiàng)目進(jìn)展過(guò)程中,非常感謝項(xiàng)目小組成員對(duì)我工作的支持,項(xiàng)目經(jīng)理對(duì)我的信任。感謝在項(xiàng)目開發(fā)中,各位領(lǐng)導(dǎo)對(duì)項(xiàng)目進(jìn)度的關(guān)注!謝謝!
蘭州直方科技有限公司
第三篇:軟件測(cè)試心得體會(huì)
心得體會(huì)
六天的培訓(xùn)結(jié)束了,感覺過(guò)得好快啊。雖然是因?yàn)閰⒓印澳M招聘”獲得這次機(jī)會(huì)的,不像其他同學(xué)一樣是交錢的,但是我也是抱著要學(xué)東西的心態(tài)參加的。
第一天老師就給了個(gè)下馬威——教材全是全是英文版的。對(duì)于雖然大三的我來(lái)說(shuō),英語(yǔ)四級(jí)剛過(guò),六級(jí)成績(jī)還沒出來(lái)的情況下,想看懂全文是不太現(xiàn)實(shí)的。在老師講解過(guò)程中利用在線翻譯才勉強(qiáng)能看懂句子。不過(guò)培訓(xùn)過(guò)程中最難忘的不是來(lái)自教材,而是來(lái)自老師的那雙犀利的眼神。無(wú)論何時(shí),只要你打開了與課堂無(wú)關(guān)的網(wǎng)頁(yè),她總會(huì)第一時(shí)間或叫號(hào)碼,或叫名字,或站到你旁邊。說(shuō)實(shí)話,大學(xué)上課已經(jīng)很久沒有這種高中被管的感覺了。雖然不爽,但是卻有種回到高中的快感(說(shuō)的是實(shí)話)。
頭幾天還蠻不錯(cuò)的,食堂開門的,超市沒關(guān)??珊髱滋?,當(dāng)校門口已無(wú)人煙,就剩我們這幾個(gè)的時(shí)候就真覺得寢室樓好靜啊,還不如在機(jī)房呆著。對(duì)于老師我想說(shuō)的是,前幾天笑容總是掛在臉上,可兩天后明顯笑的少了,不知道是不是因?yàn)楹痛蠹沂炝?,沒有剛見面的客氣了(我喜歡看人笑,本身也喜歡笑,老師的這種變化,我很敏銳的察覺了)。
這次培訓(xùn)雖然感覺學(xué)到的沒有很多,但是我了解了一個(gè)企業(yè),起碼是軟件測(cè)試這一行業(yè)大致的運(yùn)作模式,讓我對(duì)我將來(lái)要不要從事這個(gè)行業(yè)有了認(rèn)識(shí)。貌似軟件測(cè)試女生為主,男生比較適合從開發(fā)做起,這是我這幾天得到的最大體會(huì)。還有對(duì)于課堂結(jié)束的演講,是個(gè)鍛煉
自己的好機(jī)會(huì),我并不否認(rèn)這點(diǎn),不過(guò)貌似每個(gè)人都只有一次機(jī)會(huì),我是個(gè)表現(xiàn)欲很強(qiáng)的人,讓我講了一次有點(diǎn)不過(guò)癮。
開始我是因?yàn)椴幌肜速M(fèi)免費(fèi)來(lái)上課的就會(huì),來(lái)到后我覺得確實(shí)很多時(shí)候是需要多接觸下這些社會(huì)上的公司、企業(yè)等,畢竟還有一年就畢業(yè)了,到底何去何從自己是真的要好好做個(gè)打算了。期待下一期的網(wǎng)新的培訓(xùn)??
第四篇:軟件測(cè)試心得
《軟件測(cè)試心得體會(huì)》
軟件測(cè)試在整個(gè)軟件周期中的重要性。它存在于整個(gè)項(xiàng)目周期,在項(xiàng)目開始
下面簡(jiǎn)單談?wù)勎业膸c(diǎn)體會(huì):
體會(huì)一:
體會(huì)一:軟件測(cè)試在整個(gè)軟件周期中的重要性。
它存在于整個(gè)項(xiàng)目周期,在項(xiàng)目開始之初需求調(diào)研的時(shí)候就開始了,在形成需求規(guī)格說(shuō)明書的時(shí)候就需要針對(duì)文檔進(jìn)行測(cè)試。這個(gè)環(huán)節(jié)在后續(xù)整個(gè)項(xiàng)目中占了很大的比重,能主導(dǎo)整個(gè)項(xiàng)目的走向,成敗與否全在于開始階段的決策。
體會(huì)二:軟件測(cè)試的真正意義在于發(fā)現(xiàn)錯(cuò)誤,而不在于驗(yàn)證軟件是正確的。
再嚴(yán)密的測(cè)試也不能完全發(fā)現(xiàn)軟件當(dāng)中所有的錯(cuò)誤,但是測(cè)試還是能發(fā)現(xiàn)大部分的錯(cuò)誤,能確保軟件基本是可用的,所以在后續(xù)使用的過(guò)程中還需要加強(qiáng)快速響應(yīng)的環(huán)節(jié)。結(jié)合軟件測(cè)試的理論,故障暴露在最終客戶端之前及時(shí)主動(dòng)的去發(fā)現(xiàn)并解決。這一點(diǎn)就需要加強(qiáng)研發(fā)隊(duì)伍的建設(shè)。
體會(huì)三:在系統(tǒng)性能測(cè)試方面需要重視。
經(jīng)過(guò)這次培訓(xùn)中多個(gè)案例的講解,讓我了解到系統(tǒng)在上線之后會(huì)有很多不能預(yù)知的性能問(wèn)題,需要在上線之前實(shí)現(xiàn)進(jìn)行模擬,以規(guī)避風(fēng)險(xiǎn),包括大數(shù)據(jù)量訪問(wèn),高并發(fā)數(shù)等等。當(dāng)然也有很多應(yīng)對(duì)手段,沒有哪種手段可稱為最完美,只有最合適的,需要靈活掌握,綜合運(yùn)用以達(dá)到最優(yōu)程度,這是個(gè)很值得研究的領(lǐng)域。
下面是我的幾點(diǎn)想法:
想法一:加強(qiáng)系統(tǒng)上線前的性能測(cè)試。
目前我們?cè)陧?xiàng)目建設(shè)過(guò)程中對(duì)性能壓力測(cè)試的重視程度還不太高,廠家也很少有雇傭第三方的測(cè)試機(jī)構(gòu)。而是在現(xiàn)網(wǎng)進(jìn)行試用,遇到問(wèn)題再解決,可能會(huì)產(chǎn)生滯后問(wèn)題,影響客戶使用。希望以后能在性能測(cè)試方面提高重視程度,加大人力投入,以保證系統(tǒng)上線后能夠穩(wěn)定運(yùn)行。
想法二:適當(dāng)介入相關(guān)項(xiàng)目研發(fā)
對(duì)于快速響應(yīng)這塊,我們不能一味依賴廠家,而希望自己就能快速響應(yīng),及時(shí)將問(wèn)題解決。這也是一個(gè)比較長(zhǎng)遠(yuǎn)的問(wèn)題,需要加強(qiáng)研發(fā)力量的投入。
我個(gè)人是做開發(fā)出身,有此類經(jīng)驗(yàn),當(dāng)時(shí)是在客戶現(xiàn)場(chǎng),因?yàn)榱私庀到y(tǒng)內(nèi)部結(jié)構(gòu),能夠在第一時(shí)間排查解決客戶所反饋問(wèn)題。
現(xiàn)在系統(tǒng)完全由廠家開發(fā),很難了解內(nèi)部結(jié)構(gòu),或許會(huì)造成后期維護(hù)困難。所以,是否應(yīng)該針對(duì)某些項(xiàng)目介入廠家研發(fā)工作,比如請(qǐng)廠家提供源代碼等相關(guān)要素,以增進(jìn)維護(hù)人員對(duì)系統(tǒng)的了解。
最后再次感謝公司提供的平臺(tái),感謝領(lǐng)導(dǎo)的信任,讓我有機(jī)會(huì)得到更深層次的學(xué)習(xí)以及展示自己能力的機(jī)會(huì),我也會(huì)盡我所能來(lái)完善工作的系統(tǒng),提高整體工作效率,為南方電網(wǎng)的發(fā)展建設(shè)提供更堅(jiān)實(shí),優(yōu)秀的支撐服務(wù)平臺(tái)。
第五篇:軟件測(cè)試總結(jié)
面向?qū)ο蟪绦虻能浖y(cè)試方法
在軟件生命周期過(guò)程中,軟件測(cè)試是保證軟件質(zhì)量的關(guān)鍵環(huán)節(jié)之一。面向?qū)ο蠓椒▽W(xué)在軟件工程中的引入極大地方便了軟件的設(shè)計(jì)、開發(fā)和維護(hù),為創(chuàng)建高可靠性的軟件系統(tǒng)提供了重要保證。但面向?qū)ο蟪绦虻姆庋b、繼承、多態(tài)和異常處理機(jī)制等新特性卻給測(cè)試帶來(lái)新的挑戰(zhàn)。一方面需要調(diào)整、改進(jìn)傳統(tǒng)的測(cè)試策略和方法;另一方面探索出適應(yīng)面向?qū)ο蟪绦蛱卣鞯臏y(cè)試?yán)碚撆c技術(shù)也尤為必要。
面向?qū)ο?Object Oriented,OO)是當(dāng)前計(jì)算機(jī)界關(guān)心的重點(diǎn),它是90年代軟件開發(fā)方法的主流。面向?qū)ο蟮母拍詈蛻?yīng)用已超越了程序設(shè)計(jì)和軟件開發(fā),擴(kuò)展到很寬的范圍。如數(shù)據(jù)庫(kù)系統(tǒng)、交互式界面、應(yīng)用結(jié)構(gòu)、應(yīng)用平臺(tái)、分布式系統(tǒng)、網(wǎng)絡(luò)管理結(jié)構(gòu)、CAD技術(shù)、人工智能等領(lǐng)域。
面向?qū)ο蟮亩x或說(shuō)明對(duì)象的定義的非常少。其初,“面向?qū)ο蟆笔菍V冈诔绦蛟O(shè)計(jì)中采用封裝、繼承、抽象等設(shè)計(jì)方法。可是,這個(gè)定義顯然不能再適合現(xiàn)在情況。面向?qū)ο蟮乃枷胍呀?jīng)涉及到軟件開發(fā)的各個(gè)方面。如,面向?qū)ο蟮姆治觯∣OA,Object Oriented Analysis),面向?qū)ο蟮脑O(shè)計(jì)(OOD,Object Oriented Design)、以及我們經(jīng)常說(shuō)的面向?qū)ο蟮木幊虒?shí)現(xiàn)(OOP,Object Oriented Programming)。許多有關(guān)面向?qū)ο蟮奈恼露贾皇侵v述在面向?qū)ο蟮拈_發(fā)中所需要注意的問(wèn)題或所采用的比較好的設(shè)計(jì)方法??催@些文章只有真正懂得什么是對(duì)象,什么是面向?qū)ο螅拍茏畲蟪潭鹊貙?duì)自己有所裨益。這一點(diǎn),恐怕對(duì)初學(xué)者甚至是從事相關(guān)工作多年的人員也會(huì)對(duì)它們的概念模糊不清。
1、面向?qū)ο蟮幕靖拍?/p>
(1)對(duì)象。
對(duì)象是人們要進(jìn)行研究的任何事物,從最簡(jiǎn)單的整數(shù)到復(fù)雜的飛機(jī)等均可看作對(duì)象,它不僅能表示具體的事物,還能表示抽象的規(guī)則、計(jì)劃或事件。
(2)對(duì)象的狀態(tài)和行為。
對(duì)象具有狀態(tài),一個(gè)對(duì)象用數(shù)據(jù)值來(lái)描述它的狀態(tài)。
對(duì)象還有操作,用于改變對(duì)象的狀態(tài),對(duì)象及其操作就是對(duì)象的行為。
對(duì)象實(shí)現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作封裝于對(duì)象的統(tǒng)一體中
(3)類。具有相同或相似性質(zhì)的對(duì)象的抽象就是類。因此,對(duì)象的抽象是類,類的具體化就是對(duì)象,也可以說(shuō)類的實(shí)例是對(duì)象。
類具有屬性,它是對(duì)象的狀態(tài)的抽象,用數(shù)據(jù)結(jié)構(gòu)來(lái)描述類的屬性。
類具有操作,它是對(duì)象的行為的抽象,用操作名和實(shí)現(xiàn)該操作的方法來(lái)描述。
(4)類的結(jié)構(gòu)。
在客觀世界中有若干類,這些類之間有一定的結(jié)構(gòu)關(guān)系。通常有兩種主要的結(jié)構(gòu)關(guān)系,即一般--具體結(jié)構(gòu)關(guān)系,整體--部分結(jié)構(gòu)關(guān)系。
①一般——具體結(jié)構(gòu)稱為分類結(jié)構(gòu),也可以說(shuō)是“或”關(guān)系,或者是“is a”關(guān)系。
②整體——部分結(jié)構(gòu)稱為組裝結(jié)構(gòu),它們之間的關(guān)系是一種“與”關(guān)系,或者是“has a”關(guān)系。
(5)消息和方法。
對(duì)象之間進(jìn)行通信的結(jié)構(gòu)叫做消息。在對(duì)象的操作中,當(dāng)一個(gè)消息發(fā)送給某個(gè)對(duì)象時(shí),消息包含接收對(duì)象去執(zhí)行某種操作的信息。發(fā)送一條消息至少要包括說(shuō)明接受消息的對(duì)象名、發(fā)送給該對(duì)象的消息名(即對(duì)象名、方法名)。一般還要對(duì)參數(shù)加以說(shuō)明,參數(shù)可以是認(rèn)識(shí)該消息的對(duì)象所知道的變量名,或者是所有對(duì)象都知道的全局變量名。
類中操作的實(shí)現(xiàn)過(guò)程叫做方法,一個(gè)方法有方法名、參數(shù)、方法體。消
2、面向?qū)ο蟮奶卣?/p>
(1)對(duì)象唯一性。
每個(gè)對(duì)象都有自身唯一的標(biāo)識(shí),通過(guò)這種標(biāo)識(shí),可找到相應(yīng)的對(duì)象。在對(duì)象的整個(gè)生命期中,它的標(biāo)識(shí)都不改變,不同的對(duì)象不能有相同的標(biāo)識(shí)。
(2)分類性。
分類性是指將具有一致的數(shù)據(jù)結(jié)構(gòu)(屬性)和行為(操作)的對(duì)象抽象成類。一個(gè)類就是這樣一種抽象,它反映了與應(yīng)用有關(guān)的重要性質(zhì),而忽略其他一些無(wú)關(guān)內(nèi)容。任何類的劃分都是主觀的,但必須與具體的應(yīng)用有關(guān)。
(3)繼承性。
繼承性是子類自動(dòng)共享父類數(shù)據(jù)結(jié)構(gòu)和方法的機(jī)制,這是類之間的一種關(guān)系。在定義和實(shí)現(xiàn)一個(gè)類的時(shí)候,可以在一個(gè)已經(jīng)存在的類的基礎(chǔ)之上來(lái)進(jìn)行,把這個(gè)已經(jīng)存在的類所定義的內(nèi)容作為自己的內(nèi)容,并加入若干新的內(nèi)容。繼承性是面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言不同于其它語(yǔ)言的最重要的特點(diǎn),是其他語(yǔ)言所沒有的。
在類層次中,子類只繼承一個(gè)父類的數(shù)據(jù)結(jié)構(gòu)和方法,則稱為單重繼承。
在類層次中,子類繼承了多個(gè)父類的數(shù)據(jù)結(jié)構(gòu)和方法,則稱為多重繼承。
在軟件開發(fā)中,類的繼承性使所建立的軟件具有開放性、可擴(kuò)充性,這是信息組織與分類的行之有效的方法,它簡(jiǎn)化了對(duì)象、類的創(chuàng)建工作量,增加了代碼的可重性。
采用繼承性,提供了類的規(guī)范的等級(jí)結(jié)構(gòu)。通過(guò)類的繼承關(guān)系,使公共的特性能夠共享,提高了軟件的重用性。
(4)多態(tài)性(多形性)多態(tài)性使指相同的操作或函數(shù)、過(guò)程可作用于多種類型的對(duì)象上并獲得不同的結(jié)果。不同的對(duì)象,收到同一消息可以產(chǎn)生不同的結(jié)果,這種現(xiàn)象稱為多態(tài)性。
多態(tài)性允許每個(gè)對(duì)象以適合自身的方式去響應(yīng)共同的消息。
多態(tài)性增強(qiáng)了軟件的靈活性和重用性。
面向?qū)ο蠓椒ǖ幕舅枷胧且唬好嫦驅(qū)ο蠓椒ㄊ且环N運(yùn)用對(duì)象、類、封裝、繼承、多態(tài)和消息等概念來(lái)構(gòu)造、測(cè)試、重構(gòu)軟件的方法。
二: 面向?qū)ο蠓椒ㄊ且哉J(rèn)識(shí)論為基礎(chǔ),用對(duì)象來(lái)理解和分析問(wèn)題空間,并設(shè)計(jì)和開發(fā)出由對(duì)象構(gòu)成的軟件系統(tǒng)(解空間)的方法。由于問(wèn)題空間和解空間都是由對(duì)象組成的,這樣可以消除由于問(wèn)題空間和求解空間結(jié)構(gòu)上的不一致帶來(lái)的問(wèn)題。簡(jiǎn)言之,面向?qū)ο缶褪敲嫦蚴虑楸旧?,面向?qū)ο蟮姆治鲞^(guò)程就是認(rèn)識(shí)客觀世界的過(guò)程。
面向?qū)ο蠓椒◤膶?duì)象出發(fā),發(fā)展出對(duì)象,類,消息,繼承等概念。
面向?qū)ο蠓椒ǖ闹饕獌?yōu)點(diǎn)是:符合人們通常的思維方式;從分析到設(shè)計(jì)再到編碼采用一致的模型表示具有高度連續(xù)性;軟件重用性好。
面向?qū)ο筌浖y(cè)試的特點(diǎn)是: 1.掌握代碼檢查、走查與評(píng)審的基本方法和技術(shù); 2.掌握白盒測(cè)試和黑盒測(cè)試的測(cè)試用例的設(shè)計(jì)原則和方法; 3.掌握單元測(cè)試和集成測(cè)試的基本策略和方法;
4.了解系統(tǒng)測(cè)試、性能測(cè)試和可靠性測(cè)試的基本概念和方法; 5.了解面向?qū)ο筌浖蚖EB應(yīng)用軟件測(cè)試的基本概念和方法; 6.掌握軟件測(cè)試過(guò)程管理的基本知識(shí)和管理方法; 7.熟悉軟件測(cè)試的標(biāo)準(zhǔn)和文檔;
8.掌握QESuite軟件測(cè)試過(guò)程管理平臺(tái)和QESat/C++軟件分析和工具的使用方法。