軟件開發(fā)與軟件測試有什么區(qū)別呢?軟件測試和軟件開發(fā)是軟件工程中的兩個部分
一個軟件要先按需要的功能編程序,制作出來,制作出來的軟件是一定有錯誤的,要通過測試工作將錯誤的幾率降低到很小。并且還要通過一些測試方法測試軟件的性能是否完整,穩(wěn)定,測試工作會持續(xù)軟件的整個生命周期。簡單通俗的講軟件開發(fā)就是很累人的編程,而軟件測試就是通過各種測試渠道測試軟件的性能及找出錯誤。不是很費腦子因為測試方法都是自動的,只需要分析一下測試路徑。工作量相對少
軟件開發(fā)是根據(jù)用戶要求建造出軟件系統(tǒng)或者系統(tǒng)中的軟件部分的過程。軟件開發(fā)是一項包括需求捕捉,需求分析,設(shè)計,實現(xiàn)和測試的系統(tǒng)工程。軟件一般是用某種程序設(shè)計語言來實現(xiàn)的。通常采用軟件開發(fā)工具可以進行開發(fā)。軟件分為系統(tǒng)軟件和應(yīng)用軟件。 軟件并不只是包括可以在計算機上運行的程序,與這些程序相關(guān)的文件一般也被認為是軟件的一部分。 軟件設(shè)計思路和方法的一般過程,包括設(shè)計軟件的功能和實現(xiàn)的算法和方法、軟件的總體結(jié)構(gòu)設(shè)計和模塊設(shè)計、編程和調(diào)試、程序聯(lián)調(diào)和測試以及編寫、提交程序。
軟件開發(fā)一般分為五個階段:
1.問題的定義及規(guī)劃
此階段是軟件開發(fā)與需求放共同討論,主要確定軟件的開發(fā)目標及其可行性。
2.需求分析
在確定軟件開發(fā)可行性的情況下,對軟件需要實現(xiàn)的各個功能進行詳細需求分析。需求分析階段是一個很重要的階段,這一階段做的好,將為整個軟件項目的開發(fā)打下良好的基礎(chǔ)。“唯一不變的是變化本身”,同樣軟件需求也是在軟件愛你開發(fā)過程中不斷變化和深入的,因此,我們必須定制需求變更計劃來應(yīng)付這種變化,以保護整個項目的正常進行。
3.軟件設(shè)計
此階段中偶要根據(jù)需求分析的結(jié)果,對整個軟件系統(tǒng)進行設(shè)計,如系統(tǒng)框架設(shè)計、數(shù)據(jù)庫設(shè)計等。軟件設(shè)計一般分為總體設(shè)計和詳細設(shè)計。還的軟件設(shè)計將為軟件程序編寫打下良好的基礎(chǔ)。
4.程序編碼
此階段是將軟件設(shè)計的結(jié)果轉(zhuǎn)化為計算機可運行的程序代碼。在程序編碼中必定要制定統(tǒng)一、符合標準的編寫規(guī)范。以保證程序的可讀性、易維護性。提高程序的運行效率。
5.軟件測試
在軟件設(shè)計完成之后要進行嚴密的測試,一發(fā)現(xiàn)軟件在整個軟件設(shè)計過程中存在的問題并加以糾正。整個測試階段分為單元測試、組裝測試、系統(tǒng)測試三個階段進行。測試方法主要有白盒測試和黑盒測試。
由于軟件缺陷的特征
一、 “看不到”:軟件的特殊性決定了缺陷不易看到
二、“看到但是抓不到”發(fā)現(xiàn)了缺陷,但不易找到問題發(fā)生的原因所在
所以軟件測試變誕生了(英語:software testing),描述一種用來促進鑒定軟件的正確性、完整性、安全性和質(zhì)量的過程。軟件測試的定義是根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計的一批測試用例,并利用這些測試用例運行程序以及發(fā)現(xiàn)錯誤的過程,即執(zhí)行測試步驟。
測試流程依次如下:
1.需求:閱讀需求,理解需求,與客戶、開發(fā)、架構(gòu)多方交流,深入了解需求。--testing team
2.測試計劃: 根據(jù)需求估算測試所需資源(人力、設(shè)備等)、所需時間、功能點劃分、如何合理分配安排資源等。---testing leader or testing manager
3.用例設(shè)計:根據(jù)測試計劃、任務(wù)分配、功能點劃分,設(shè)計合理的測試用例。---testing leader, senior tester
4.執(zhí)行測試:根據(jù)測試用例的詳細步驟,執(zhí)行測試用例。--every tester(主要是初級測試人員)
------分隔線----------------------------