北京軟件開發(fā)公司軟件實(shí)驗(yàn)室自動(dòng)測(cè)試代技術(shù)的發(fā)展,以限制過度的測(cè)試工作,并加強(qiáng)對(duì)敏捷開發(fā)的效率 - 一個(gè)漸進(jìn)的方法來開發(fā)軟件,逐步增加了小規(guī)模的函數(shù),然后一個(gè)接一個(gè),讓他們使用。自動(dòng)測(cè)試代技術(shù)分析源代碼,并生成新的測(cè)試用例來測(cè)試詳盡的軟件。
然而,在一個(gè)敏捷開發(fā)方法,經(jīng)常,反復(fù)的修改的源代碼中有大量的結(jié)果測(cè)試用例和過度測(cè)試工作。實(shí)驗(yàn)室現(xiàn)在已經(jīng)開發(fā)了自動(dòng)測(cè)試生成技術(shù),可以有效地搜索源代碼中的變量的影響,其中添加了新的軟件功能的代碼段,并在本地修改,并在變量層面加入到測(cè)試的部分。在這種應(yīng)用這些技術(shù)的修訂版試用開源軟件有大約五千行源代碼,實(shí)驗(yàn)室證實(shí)它是可以大幅縮短測(cè)試代碼到以前的水平的1/24日的增加。這將通過自動(dòng)化測(cè)試,這是以前很難適用于敏捷開發(fā)能夠在開發(fā)效率。它也將大大減少所造成的短暫的期間反復(fù)增加的功能,從而縮短整體的開發(fā)時(shí)間的測(cè)試時(shí)間的增加。
開發(fā)背景
敏捷開發(fā)正在推進(jìn)作為軟件開發(fā)方法,可以通過添加到在要求的變化和規(guī)格迅速和靈活地應(yīng)對(duì),在很短的時(shí)間,小規(guī)模的函數(shù),然后使它們經(jīng)過另一個(gè)可用之一。實(shí)驗(yàn)室正在開創(chuàng)自動(dòng)測(cè)試生成技術(shù),敏捷開發(fā),它通過分析源代碼自動(dòng)測(cè)試詳盡軟件的開發(fā)。
問題
當(dāng)源代碼增強(qiáng)制成,與傳統(tǒng)的自動(dòng)測(cè)試代技術(shù),可能存在先前可用的測(cè)試情況下是不能用于測(cè)試增強(qiáng)的情況。在這種情況下,有必要產(chǎn)生并添加一個(gè)新的測(cè)試情況。這意味著,在敏捷開發(fā),這里的修改是頻繁,加入測(cè)試用例的數(shù)量變得過多,和任務(wù),如處理測(cè)試的情況下,檢查測(cè)試結(jié)果,以及測(cè)試用例維護(hù)成為問題(圖1)。
新開發(fā)的技術(shù)
現(xiàn)在,通過有效地分析輸入變量和源代碼的訂正部分之間的關(guān)??系,從而使測(cè)試代碼可以在輸入變量電平被重用,實(shí)驗(yàn)室已經(jīng)開發(fā)出自動(dòng)測(cè)試代技術(shù)限制在測(cè)試的數(shù)量的增加由于源代碼的修改情況。新開發(fā)的技術(shù),具有以下特點(diǎn):
1.技術(shù),在輸入變量級(jí)重用的測(cè)試代碼
通過修改只對(duì)相關(guān)的源代碼的改變的部分的輸入變量的測(cè)試代碼,實(shí)驗(yàn)室已經(jīng)開發(fā)測(cè)試碼再生技術(shù),可以限制在測(cè)試用例的增加(圖2)。與以前的技術(shù)中,響應(yīng)于源代碼修改,每個(gè)測(cè)試用例不得不重新用作是,本來要加入一個(gè)新的再生試驗(yàn)的情況下,或原已被替換,而所有這樣的選擇必須在要進(jìn)行測(cè)試案例的水平。用這種新開發(fā)的技術(shù),作為供試碼在單個(gè)輸入變量電平改寫,所以可以有效地再生測(cè)試用例。
2.技術(shù)來有效地找到有關(guān)線的源代碼的輸入變量
識(shí)別與源代碼訂正段輸入變量需要大量的存儲(chǔ)器(圖3)。實(shí)驗(yàn)室開發(fā)的技術(shù),可以找到相關(guān)的源代碼行,同時(shí)大大降低的存儲(chǔ)器使用量,通過表示相關(guān)的代碼行中的曲線路徑的輸入變量和部分地與其它線路共享這些路徑的輸入變量的源代碼。
在施加這種技術(shù)的大約5千行開源軟件修訂一個(gè)試驗(yàn)中,它被示出,以減少在測(cè)試代碼到以前的水平的1/24日的增加。有了這項(xiàng)技術(shù),就可以使用自動(dòng)測(cè)試 -generation技術(shù),敏捷開發(fā),縮短開發(fā)時(shí)間。