qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          功能測試中遇到不可重現(xiàn)軟件缺陷的解決策略

            在測試人 員提交軟件缺陷報告后,最不希望看到的這些缺陷被開發(fā)人員忽略,盡管你堅信這一定是軟件缺陷,而罪魁禍?zhǔn)拙褪沁@些缺陷不可重現(xiàn)!一旦出現(xiàn)這樣的情況,測試 人員會很被動,開發(fā)人員也會對測試人員有意見。這就使得關(guān)系本來就不怎么融洽的測試人員和開發(fā)人員之間的關(guān)系更加緊張;對于整個時間緊湊的項(xiàng)目來說,無異 于是火上澆油。為了減少這種尷尬情況的出現(xiàn),非常有必要分析一下軟件缺陷不能重現(xiàn)的原因。

            1. 測試環(huán)境不一致

            從廣義上來說,保證或影響軟件的任何因素都是環(huán)境,例如,系統(tǒng)的構(gòu)造版本、應(yīng)用服務(wù)器的類型和版本、瀏覽器的語音和版本等。

            以下就是我們會遇見的錯誤:某個B/S(Web應(yīng)用)架構(gòu)的系統(tǒng)軟件運(yùn)行于IE8上,出現(xiàn)了JS(Java Script)腳本錯誤導(dǎo)致頁面瀏覽異常的軟件缺陷,把IE8降級到IE6或7后,此軟件缺陷就自動消失了。

            2. 測試配置不一致

            程序運(yùn)行都是基于一定的配置條件下進(jìn)行的,包括被測系統(tǒng)參數(shù)設(shè)置、基礎(chǔ)數(shù)據(jù)完整性、業(yè)務(wù)流程完整性等,比如,我們曾經(jīng)在某數(shù)據(jù)庫產(chǎn)品測試過程中,由于在安裝界面中選擇了非默認(rèn)路徑進(jìn)行安裝,結(jié)果導(dǎo)致該數(shù)據(jù)庫物理備份會恢復(fù)功能出錯,而對方在核對缺陷時按照默認(rèn)路徑進(jìn)行了安裝,因此缺陷總是無法重現(xiàn)。

            3. 內(nèi)存泄露

            某些系統(tǒng)長期運(yùn)行后出現(xiàn)速度慢的原因是開發(fā)人員未養(yǎng)成回收內(nèi)存的習(xí)慣。這類錯誤在短期內(nèi)不會出現(xiàn),但當(dāng)系統(tǒng)長期運(yùn)行時就會出現(xiàn),并且由此會引發(fā)一系列的問題。

            4. 數(shù)據(jù)接口不匹配

            一般只有在查看源代碼后才能發(fā)現(xiàn)。某些類型的數(shù)據(jù)會被系統(tǒng)自動轉(zhuǎn)換,有些數(shù)據(jù)被截斷或被強(qiáng)制轉(zhuǎn)換成另外一種數(shù)據(jù)類型時,會出現(xiàn)一些潛在的錯誤。

            基于以上測試過程中出現(xiàn)的軟件缺陷不能重現(xiàn)的原因,我們提出如下一些解決策略,以更好地從源頭上減少不可重現(xiàn)軟件缺陷的出現(xiàn)。

            1. 測試環(huán)境配置充分細(xì)致

            測試人員在測試前,嚴(yán)格核對系統(tǒng)的運(yùn)行環(huán)境配置要求,并充分考慮系統(tǒng)在線運(yùn)行后的環(huán)境變化,做好測試環(huán)境配置的全面規(guī)劃,注意細(xì)節(jié)。另外可以使用Ghost對硬件或某個分區(qū)進(jìn)行鏡像備份。

            2. 捕獲系統(tǒng)日志,分析異常信息

            測試人員應(yīng)養(yǎng)成記錄系統(tǒng)錯誤日志的習(xí)慣,保留系統(tǒng)在出錯時的真實(shí)狀態(tài)。比如將IE瀏覽器高級選項(xiàng)設(shè)置為“顯示每個腳本錯誤的通知”。

            3. 監(jiān)測系統(tǒng)狀態(tài),異常及時告警

            在實(shí)施系統(tǒng)測試過程中,我們必須充分關(guān)注系統(tǒng)運(yùn)行狀態(tài)的變化,一旦系統(tǒng)運(yùn)行狀態(tài)發(fā)生較大的波動,勢必會對后期的業(yè)務(wù)執(zhí)行帶來較大的影響。因此,系統(tǒng)運(yùn)行監(jiān)測的一個重要內(nèi)容是需要及時反饋系統(tǒng)運(yùn)行異常,并提供異常報告。

            4. 測試數(shù)據(jù)翔實(shí),易于追溯

            測試數(shù)據(jù)是軟件測試的 核心,很多情況下,測試人員為了縮短測試周期,在實(shí)際測試前并沒有充分編寫足夠的測試數(shù)據(jù),也沒有記錄這些測試數(shù)據(jù)的執(zhí)行順序和運(yùn)行軌跡,一旦程序在某個 節(jié)點(diǎn)出現(xiàn)問題,我們無法判斷其產(chǎn)生的過程和引起這個缺陷的具體測試數(shù)據(jù),對我們進(jìn)一步分析軟件缺陷產(chǎn)生的原因會造成一些不必要的障礙。

            正是基于此我們強(qiáng)調(diào)在軟件測試開始前,我們必須制定完整的測試用例,輔以詳細(xì)的測試數(shù)據(jù),并明確測試數(shù)據(jù)的操作步驟和每一步的預(yù)期結(jié)果,這樣,一旦軟件出現(xiàn)問題,我們可以很快進(jìn)行重現(xiàn)和定位。

          附錄1:常用正交表

          (1)L4(23

          列號
          1
          2
          3
          試驗(yàn)號
          1
          1
          1
          1
          2
          1
          2
          2
          3
          2
          1
          2
          4
          2
          2
          1

          (2)L8(27)

          列號
          1
          2
          3
          4
          5
          6
          7
          試驗(yàn)號
          1
          1
          1
          1
          1
          1
          1
          1
          2
          1
          1
          1
          2
          2
          2
          2
          3
          1
          2
          2
          1
          1
          2
          2
          4
          1
          2
          2
          2
          2
          1
          1
          5
          2
          1
          2
          1
          2
          1
          2
          6
          2
          1
          2
          2
          1
          2
          1
          7
          2
          2
          1
          1
          2
          2
          1
          8
          2
          2
          1
          2
          1
          1
          2

          (3)L12(211)

          列號
          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          試驗(yàn)號
          1
          1
          1
          1
          1
          1
          1
          1
          1
          1
          1
          1
          2
          1
          1
          1
          1
          1
          2
          2
          2
          2
          2
          2
          3
          1
          1
          2
          2
          2
          1
          1
          1
          2
          2
          2
          4
          1
          2
          1
          2
          2
          1
          2
          2
          1
          1
          2
          5
          1
          2
          2
          1
          2
          2
          1
          2
          1
          2
          1
          6
          1
          2
          2
          2
          1
          2
          2
          1
          2
          1
          1
          7
          2
          1
          2
          2
          1
          1
          2
          2
          1
          2
          1
          8
          2
          1
          2
          1
          2
          2
          2
          1
          1
          1
          2
          9
          2
          1
          1
          2
          2
          2
          1
          2
          2
          1
          1
          10
          2
          2
          2
          1
          1
          1
          1
          2
          2
          1
          2
          11
          2
          2
          1
          2
          1
          2
          1
          1
          1
          2
          2
          12
          2
          2
          1
          1
          2
          1
          2
          1
          2
          2
          1

           

          (4)L9(34

          列號
          1
          2
          3
          4
          試驗(yàn)號
          1
          1
          1
          1
          1
          2
          1
          2
          2
          2
          3
          1
          3
          3
          3
          4
          2
          1
          2
          3
          5
          2
          2
          3
          1
          6
          2
          3
          1
          2
          7
          3
          1
          3
          2
          8
          3
          2
          1
          3
          9
          3
          3
          2
          1

          (5)L16(45

          列號
          1
          2
          3
          4
          5
          試驗(yàn)號
          1
          1
          1
          1
          1
          1
          2
          1
          2
          2
          2
          2
          3
          1
          3
          3
          3
          3
          4
          1
          4
          4
          4
          4
          5
          2
          1
          2
          3
          4
          6
          2
          2
          1
          4
          3
          7
          2
          3
          4
          1
          2
          8
          2
          4
          3
          2
          1
          9
          3
          1
          3
          4
          2
          10
          3
          2
          4
          3
          1
          11
          3
          3
          1
          2
          4
          12
          3
          4
          2
          1
          3
          13
          4
          1
          4
          2
          3
          14
          4
          2
          3
          1
          4
          15
          4
          3
          2
          4
          1
          16
          4
          4
          1
          3
          2

          (6)L25(56

          列號
          1
          2
          3
          4
          5
          6
          試驗(yàn)號
          1
          1
          1
          1
          1
          1
          1
          2
          1
          2
          2
          2
          2
          2
          3
          1
          3
          3
          3
          3
          3
          4
          1
          4
          4
          4
          4
          4
          5
          1
          5
          5
          5
          5
          5
          6
          2
          1
          2
          3
          4
          5
          7
          2
          2
          3
          4
          5
          1
          8
          2
          3
          4
          5
          1
          2
          9
          2
          4
          5
          1
          2
          3
          10
          2
          5
          1
          2
          3
          4
          11
          3
          1
          3
          5
          2
          4
          12
          3
          2
          4
          1
          3
          5
          13
          3
          3
          5
          2
          4
          1
          14
          3
          4
          1
          3
          5
          2
          15
          3
          5
          2
          4
          1
          3
          16
          4
          1
          4
          2
          5
          3
          17
          4
          2
          5
          3
          1
          4
          18
          4
          3
          1
          4
          2
          5
          19
          4
          4
          2
          5
          3
          1
          20
          4
          5
          3
          1
          4
          2
          21
          5
          1
          5
          4
          3
          2
          22
          5
          2
          1
          5
          4
          3
          23
          5
          3
          2
          1
          5
          4
          24
          5
          4
          3
          2
          1
          5
          25
          5
          5
          4
          3
          2
          1

          (7)L8(4×24

          列號
          1
          2
          3
          4
          5
          實(shí)驗(yàn)號
          1
          1
          1
          1
          1
          1
          2
          1
          2
          2
          2
          2
          3
          2
          1
          1
          2
          2
          4
          2
          2
          2
          1
          1
          5
          3
          1
          2
          1
          2
          6
          3
          2
          1
          2
          1
          7
          4
          1
          2
          2
          1
          8
          4
          2
          1
          1
          2

          (8)L12(3×24

          列號
          1
          2
          3
          4
          5
          試驗(yàn)號
          1
          1
          1
          1
          1
          1
          2
          1
          1
          1
          2
          2
          3
          1
          2
          2
          1
          2
          4
          1
          2
          2
          2
          1
          5
          2
          1
          2
          1
          1
          6
          2
          1
          2
          2
          2
          7
          2
          2
          1
          2
          2
          8
          2
          2
          1
          2
          2
          9
          3
          1
          2
          1
          2
          10
          3
          1
          1
          2
          1
          11
          3
          2
          1
          1
          2
          12
          3
          2
          2
          2
          1

          (9)L16(44×23

          列號
          1
          2
          3
          4
          5
          6
          7
          試驗(yàn)號
          1
          1
          1
          1
          1
          1
          1
          1
          2
          1
          2
          2
          2
          1
          2
          2
          3
          1
          3
          3
          3
          2
          1
          2
          4
          1
          4
          4
          4
          2
          2
          1
          5
          2
          1
          2
          3
          2
          2
          1
          6
          2
          2
          1
          4
          2
          1
          2
          7
          2
          3
          4
          1
          1
          2
          2
          8
          2
          4
          3
          2
          1
          1
          1
          9
          3
          1
          3
          4
          1
          2
          2
          10
          3
          2
          4
          3
          1
          1
          1
          11
          3
          3
          1
          2
          2
          2
          1
          12
          3
          4
          2
          1
          2
          1
          2
          13
          4
          1
          4
          2
          2
          1
          2
          14
          4
          2
          3
          1
          2
          2
          1
          15
          4
          3
          2
          4
          1
          1
          1
          16
          4
          4
          1
          3
          1
          2
          2

           


          posted on 2011-10-13 17:19 順其自然EVO 閱讀(198) 評論(0)  編輯  收藏 所屬分類: 測試學(xué)習(xí)專欄

          <2011年10月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宜丰县| 称多县| 伊吾县| 启东市| 尚义县| 米脂县| 黄梅县| 朝阳县| 哈密市| 丰台区| 湘潭市| 樟树市| 乌拉特前旗| 金寨县| 南岸区| 二连浩特市| 利川市| 宜城市| 博白县| 观塘区| 石林| 东乡县| 内乡县| 乐安县| 高阳县| 修武县| 长武县| 盖州市| 含山县| 北宁市| 讷河市| 旬阳县| 安义县| 福清市| 博湖县| 乐安县| 邵阳县| 格尔木市| 望奎县| 镇安县| 策勒县|