黑盒測試的挑戰
過程:多猜測,不穩定,難控制
效果:個人素質
管理:成本高,難度大
白盒測試
門檻高,單兵作戰,目標單一(高覆蓋率),分析之殤(對使用者的影響)
網際網路基本不做,迭代測試不允許
一.精準化測試思想
用非常精準和智慧型的軟體來解決軟體測試的問題,並從根本上引領軟體測試從經驗型方法向技術性方法的轉型。
精準:測試用例到**邏輯的精準記錄的雙向追溯
函式呼叫關係計算
測試用例-----------------------**邏輯
**染色
精準的**級的缺陷定位和奔潰分析
精準的測試充分度分析---測試效果問題
智慧型
回歸用例自動篩選
自動化用例篩選與執行
持續整合
引入精準化測試的原因
最初的
(1)篩選測試用例
版本提測-->diff結果解析(變更函式,函式呼叫關係)-->測試用例(測試用例,sanity用例)
(2)函式呼叫關係計算
例如:開發未了實現功能1,同事修改了函式a和函式c,其中函式之間呼叫關係如下。
功能1:c-》a
功能2:b-》a
在做sanity測試時,如何能夠篩選出功能2的測試用例。
語言:j**a
工具:j**acg
目的:通過對class檔案的解析,計算函式之間的呼叫關係。
(3)diff結果解析:
解析diff結果檔案,計算變更檔名和變更**段位置。
掃瞄原始檔,計算出變更的函式。
結合函式呼叫關係圈定受影響的函式範圍。
(4)函式與測試用例的對映:
人工錄入 code diff
**注釋抽取
**染色(執行黑盒用例->收集覆蓋率->解析覆蓋結果->**染色->函式呼叫關係)
2層呼叫,3層呼叫
(5)篩選用例流程
(6)執行測試用例
黑盒測試實時檢視覆蓋率
j**a覆蓋率
js覆蓋率
(7)js覆蓋率
**插樁
資料上報
檔案對映
生成報告
通過捕獲事件進行覆蓋率實時上報
(8)es6標準如何做覆蓋率(.vue, .js)
原始碼(易讀,不可執行)-----》編譯後(較易讀,可執行)-----》壓縮混淆後(不易讀,可執行)
所以選擇編譯後檔案
自學精準測試
精準測分系統 1.差異化 破全面回歸.主要解決的事改什麼,測什麼的問題,要旨 通過差異化的測試分析得到測試範圍的集合 2.技術治理 破耦合,耦合影響內容不能漏測,也不能多測.能夠快速準確的分析出耦合影響,為了搞清楚改什麼,影響什麼 要旨 快速準確分析耦合影響 難點 3.測試精準度 即 覆蓋率.ope...
什麼是精準測試
1.1背景 最近,看到某技術群裡面在討論精準測試,沒有弄明白到底什麼是精準測試,聽起來有點新鮮,作為測試難免有點好奇心,查了於些資料,看到一篇文章寫得不錯,也留下自己的心得體會 當我們測試時候,我們在想什麼?相同的系統,不同的測試人員針對相同的乙個功能,a測試人員會寫10個測試用例去測,b測試人員會...
本地化 精準化 定製化 個性化
聽過我的課的朋友知道,在講 3g業務時,我有一張 ppt,內容也就是題目的這 12個字。我相信隨著 3g業務的發展,隨著市場的競爭與完善,市場競爭一定會呈現出這樣的特質。曾經的全面投入,粗放投放,轟炸戰術一定會成為過去。其實,不僅是 3g,發展了十多年的網際網路,更是需要 本地化 精準化 定製化 個...