探索式測試介紹_第1頁
探索式測試介紹_第2頁
探索式測試介紹_第3頁
探索式測試介紹_第4頁
探索式測試介紹_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1,探索性測試的定義2,為什么要學習和研究探索性測試3,探索性測試的典型技術與工具4,探索性測試與項目的結合和實踐舉例主要內容:1、探索性測試的定義,什么是探索式測試?探索式測試是一種自由的軟件測試風格,強調測試人員同時開展測試內容學習、測試設計、測試執(zhí)行和測試結果評估等活動,以持續(xù)優(yōu)化測試工作的推進與評估探索式測試的核心實踐是學習的過程:探索式測試的核心實踐是“學習”,即獲取信息與反饋的持續(xù)過程。在此過程中我們不但更加深入地理解產(chǎn)品需求,用戶場景,異常邏輯,也更深刻地理解我們的測試分析,測試設計過程。不循規(guī)蹈矩,在測試執(zhí)行中探索并利用新發(fā)現(xiàn)去嘗試發(fā)現(xiàn)新的問題再優(yōu)化補充設計我們的案例,從發(fā)散的思維去獲得測試思路和想法,但目標只有一個就是發(fā)現(xiàn)更多的隱藏功能缺陷或者不滿足的場景。

2、探索性測試的問與答問:探索性測試的“探索”應該如何理解?答:探索是一種有目的的漫游,即帶著使命在某個空間中漫游,但沒有預先預設好的路線。問:探索性測試與即興的發(fā)散測試的區(qū)別?答:即興的發(fā)散測試往往利用經(jīng)驗,猜測,典型的風險和常見的問題快速性試探測試,可以在短時間內發(fā)現(xiàn)很多bug,但即興的發(fā)散測試往往不考慮測試的系統(tǒng)性和完整性,測試遺漏的風險依然存在。也難以發(fā)現(xiàn)一些深入的問題,探索性測試通過測試來透徹的理解被測產(chǎn)品,從而拓展測試的廣度和深度,持續(xù)優(yōu)化測試的價值。2、探索性測試的問與答問:探索性測試的核心優(yōu)勢是什么?答:探索性測試的優(yōu)勢是有助于“學習”,并借助一些探索性測試方法把獲取到的信息持續(xù)運用到測試的過程。學習的過程,比如:1,行業(yè)知識,競爭友商對手2,目標用戶,目標用戶是誰,他們有什么使用特點,用戶對產(chǎn)品有什么期望,3,軟件產(chǎn)品是一種解決方案,但這個解決方案是否能夠解決行業(yè)與用戶所面臨的需求和問題。4,開發(fā)技能,測試工具,測試技術。。。探索性測試方法,后面詳解探索性測試鼓勵測試人員去獨立的探索,學習和持續(xù)測試。2、探索性測試的問與答問:探索性測試是否只適用于功能測試?答:探索性測試可以應用到各類型的測試。安全性測試,性能壓力測試,場景測試等。例如:以安全測試為例,模擬一下黑客是如何攻破我們的軟件系統(tǒng)的,他們的基本方法是以“猜測”,通過分析已知的安全缺陷,抽象出可利用的缺陷模型,然后開發(fā)出相應的缺陷挖據(jù)工具或腳本,程序,可以通過黑盒或者百盒的方式,持續(xù)輸入嘗試的攻擊來發(fā)現(xiàn)疑似的漏洞,一旦發(fā)現(xiàn)問題后便深入分析探索,黑客攻擊的過程就是一種探索性測試。2、探索性測試的問與答問:為什么需要探索測試,前面測試設計分析已經(jīng)通過各方法做了測試點的細分,還不夠嗎?它和前面測試分析的過程由什么區(qū)別。為什么這些探索的方法,不能直接在前面的測試設計過程中用?答:1、探索性軟件測試與測試分析設計的關系:探索性測試分析的階段一般在基本功能穩(wěn)定,或者集成測試完成,或者已經(jīng)進行了一輪測試(包含2級別bug已經(jīng)修復)的時候進行,通過“漫游”的一些思路進行測試分析和測試執(zhí)行。2、探索性測試與測試分析的區(qū)別,探索性測試也有測試分析,只是探索性測試分析的方法論是特有的漫游式的(后面篇章會詳解),并沒有既定的可以繼承的經(jīng)驗庫和設計方法。探索性測試可以快速試錯,快速設計后就可以驗證自己的想法。3、探索性測試的方法是可以運用到前期的測試分析設計過程中去,可以把探索性測試的漫游分析方法運用,但探索性的測試過程需要在特定的階段進行不同的探索方法進行測試。2、探索性測試與傳統(tǒng)測試的比較傳統(tǒng)測試探索性測試探索性測試的優(yōu)點需求學習需求學習設計學習設計學習漫游測試設計工作量少測試需求分析無編寫基本驗證用例探索性測試設計思維導圖案例評審無執(zhí)行測試案例執(zhí)行漫游測試有利于減少漏測模塊用戶場景執(zhí)行探索性場景降低部分測試成本整體用戶場景無2、探索性測試與傳統(tǒng)測試的比較3、探索性測試的典型技術與工具業(yè)界通用的探索式測試方法分類(JamesA.Whittaker)3、探索性測試典型技術-商業(yè)區(qū)測試商業(yè)區(qū)是一個城市的經(jīng)濟核心,相比軟件,商業(yè)區(qū)就是軟件中最主要的功能。1,指南測試法要求測試人員通過閱讀用戶手冊并嚴格按照手冊的建議執(zhí)行。如果手冊描述了摸個特性以及如何使用該特性時,測試人員要特別留心那些指令。其目的是盡量忠實地執(zhí)行用戶手冊中描述的每個場景。2,賣點測試法在一個城市中都有這個城市的亮點,我們也通常叫做賣點,比如北京天安門,王府井。香港的購物街。拉斯維加斯的賭城。在軟件測試中,我們的賣點往往就是我們廣告上面說的最多的那個功能那么測試人員可以在這些軟件的賣點上面去測試。測試人員找出本產(chǎn)品中最吸引用戶的功能或特性,然后按照產(chǎn)品演示步驟來測試特性測試人員人員專注與核心用戶場景,將測試資源投入到用戶最常用的功能和操作上。3,地標測試法我們去一個第一個往往首先會看地圖,然后再看指南針。在軟件測試中,我們可以把主要的功能標注出來,這就是“地標”,然后按照前后順序,依次運行。3、探索性測試典型技術-商業(yè)區(qū)測試商業(yè)區(qū)是一個城市的經(jīng)濟核心,相比軟件,商業(yè)區(qū)就是軟件中最主要的功能。4,快遞測試法在商業(yè)去中數(shù)據(jù)的信息量往往占了很大的比例。軟件測試中,我們可以把一個輸入數(shù)據(jù)作為快遞,標記,跟著這個數(shù)據(jù),直到整個生命周期。查看是否符合要求。5,深夜測試法我們往往在白天和網(wǎng)上會看到商業(yè)區(qū)的繁華,但是在凌晨以及深夜,那么這個繁華區(qū)往往會有另一番風趣。軟件測試中,就是在深夜運行這個程序,然后查看軟件在深夜運行的記錄。3、探索性測試典型技術-旅游區(qū)測試旅游區(qū)測試類型:對應產(chǎn)品的新特性,能夠去更好的吸引新的用戶。收藏家測試法測試人員應該確保每一個輸出的結果,編輯一個表格來表示的他,然后從中找出破綻長路徑測試法我們在軟件中假如一個功能到另外一個功能中間要進行很多操作,也許在操作的過程中就能發(fā)現(xiàn)bug。

超模測試法這個測試法要求測試人員能夠關注UI的每一個細節(jié),輸出顯示字符的大小,按鈕的大小,字符的長短。

測一送一測試法很簡單,我們再運行程序的時候,同時運行一個拷貝,那么我們再兩個程序同時去爭搶一個內存的時候,或者時候運行導入,兩個程序就會爭奪一個導入文件,那么這個時候程序往往就會出錯3、探索性測試典型技術-娛樂區(qū)測試娛樂區(qū):對應軟件的輔助特性和功能,可以做完補充測試1、配角測試法我們在關注某一個產(chǎn)品的時候往往關注了這個產(chǎn)品的主要功能,而忽略的次要功能,例如:我們再測一個數(shù)據(jù)頁面顯示的功能,當我們輸入相應的數(shù)據(jù),頁面很好的顯示出來的,那么我們再其頁面的右下方發(fā)現(xiàn)了一個打印按鈕,這就是我們此方法的用武之地了。2、深巷測試法我們再旅游的時候,有些地方總有一些游客特別想去,但是有些地方游客很是不愿意光顧,比如,垃圾回收站,廢品處理站,在軟件里面我們也可以這樣做,假如:我們再跟蹤一個數(shù)據(jù)的時候,我們往往關注的是這個數(shù)據(jù)能不能很好的讀取或者被運算,我們都忽略一個很大的誤區(qū),好的設計者會很好的運用變量的生命周期耳朵,即:當這個數(shù)據(jù)不再使用的時候,那么就應該銷毀,不這么的做的后果就是,數(shù)據(jù)沒有被及時回收,內存不能釋放,造成內存泄露。嚴重的時候甚至影響系統(tǒng)運行。3、通宵測試法人假如幾天幾夜不合眼的話,那么工作效率就會變差。軟件也是如此,雖然是沒有生命的,但是他的每個變量和元素都是有生命周期,讓軟件長時間工作,同時記錄其運行日志。一旦發(fā)生崩潰或者異常,我們就能很快的鎖定3、探索性測試典型技術-旅館區(qū)測試旅館區(qū):對應軟件內部的一些交互,不一定是由用戶來觸發(fā)的。取消測試法有些程序在軟件運行的過程中是不讓被取消的,那么我們可以做,雖然有點搶人所愛,我們可以在運行的過程中,單機關閉,直接斷掉計算機電源,在進程中殺掉這個進程。測試人員啟動某些功能操作后在停止運行,對所有提供取消,停止功能或者需要較長時間才能完成的操作執(zhí)行取消或停止操作以檢驗程序的取消處理能力懶漢測試法在有一些軟件中,我們往往會碰到系統(tǒng)默認值,測試人員盡量做較少的輸入和操作流程,如接受所有默認值,保持某些功能字段為空,不點擊某些操作按鈕,以檢驗程序處理默認值的能力。3、探索性測試典型技術-歷史區(qū)測試歷史區(qū):上一個版本遺留下來的代碼、問題或則曾經(jīng)出現(xiàn)多次bug的功能或者特性。1、惡鄰測試法在我們旅游的城市,我們往往會根據(jù)導游的提示,有目的的去訪問那里,但是,那些往往我們不去訪問的地方往往是骯臟的。那么在我們的軟件里面,我們根據(jù)軟件說明書,按照編輯給我們設置的路徑去操作,那么這個時候我們假如打破邏輯,就會找出很多未知的缺陷。測試人員找到那些權限數(shù)目比較多的功能特性,并對臨近的功能特性進行重點測試,由于權限通常集中出現(xiàn),因此缺陷多的地方值得反復測試,另外測試人員還對臨近功能進行了重點測試,有助于提高軟件的整體穩(wěn)定性。2、博物館測試法博物館是戰(zhàn)士古董的地方,在軟件里面,我們把一些老的代碼比作這些代碼,一些程序員在引入這些代碼的過程中,往往沒有修改就運行了,我們的測試目的是在這些老代碼的基礎上,看能不能在新的功能上正確的實現(xiàn)。

3、上一版測試法這點類似于回歸測試,對先前版本的更新,運行上一個版本所有的分支和測試用例。確保老的功能還能正常使用3、探索性測試典型技術-破舊區(qū)測試破舊區(qū):對應軟件的歷史穩(wěn)定的代碼,一般很少人去接觸1、逆向測試法比如在一個打印程序中,系統(tǒng)會讓用戶選擇打印那一頁,我們輸入字母,觀察系統(tǒng)是不是有這方面的處理能力。測試人員選擇與上下文環(huán)境無關的輸入值,或輸入完全錯誤荒謬的輸入值。2、歹徒測試法,運用非法輸入,基本思想是輸入一些不應該出現(xiàn)的數(shù)據(jù)。

3、錯序輸入法比如時間格式,我們不按照提示輸入會怎樣?測試人員以錯誤的順序做事情,選擇一組合法的行為,講它們混合在一起,造成前后順序不合法。4、強迫癥輸入法我們一遍又一遍的輸入數(shù)據(jù),強迫軟件運行,患有“強迫癥”的測試人員一遍又一遍的輸入相同的數(shù)據(jù),反反復復做同樣的操作。4、探索性測試方法的在項目中的運用與改進探索性實踐活動在整個測試分析過程中的位置4、探索性測試方法的在項目中的運用與改進探索性整體分析方法建議:1,盡可能不按常規(guī)思路2,從一個不同的產(chǎn)品形態(tài)開始測試3,優(yōu)先執(zhí)行復雜且有約束條件的操作4,從系統(tǒng)模型的變化中產(chǎn)出測試思路5,質疑的眼光看待我們的產(chǎn)品功能6,更加關注功能的每個細節(jié)4、探索性測試方法的在項目中的運用與改進從認為用戶非常見的操作角度測試:我們在測試功能模塊的時候,一般根據(jù)開發(fā)設計或需求說明,按照已經(jīng)給我們設置的路徑去測試,那么這個時候我們假如打破邏輯,就會找出很多未知的缺陷:1,合法操作和非法操作2,異常操作3,常規(guī)輸入和非常規(guī)輸入4,我們在關注某一個產(chǎn)品的時候往往關注了這個產(chǎn)品的主要功能,而忽略的次要功能,我們vs更關注后臺的功能測試,前臺一些地方容易忽略(配角測試法)4、探索性測試方法的在項目中的運用與改進長路徑測試法:我們在軟件中假如一個功能到另外一個功能中間要進行很多操作,把測試當做一件有趣的事情,充分想象用戶的操作過程,而編寫一個復雜有趣味的劇本,把各種場景聯(lián)系起來。1,有意加強多個操作,把一些無關場景關聯(lián)起來增加整個操作場景的路徑2,多個不同功能的操作場景放在一起進行測試。4、探索性測試方法的在項目中的運用與改進針對場景的探索測試的操作模型:基于已經(jīng)存在的基礎場景,通過改變這些基礎場景的步驟和前置條件,來給場景注入變化,從而得到一個新的衍生場景,測試人員還可以繼續(xù)對衍生場景進行操作修改,已生成新的測試場景。在進行場景測試時,可以在任何一個步驟停下來,注入某種變化已創(chuàng)建新的場景。針對場景的探索測試的操作模型:1,插入步驟:a,測試人員在執(zhí)行基礎場景的時候,比基礎場景選擇或增加更多的操作。b,測試人員在執(zhí)行基礎場景的時候,關注試圖增加一些額外的輸入值c,測試人員在執(zhí)行基礎場景的時候,關注能夠訪問與基礎場景有關的其他界面(比如正在環(huán)境檢測的時候強制點擊切換到虛擬機界面等)2,刪除步驟:a,測試人員在執(zhí)行基礎場景的時候,去掉基礎場景中的可選場景,使場景步驟更少。3,替換步驟:測試人員在執(zhí)行基礎場景的時候,可以替換某個操作場景,使用新的操作步驟進行場景測試,替換步驟法要求測試人員研究熟悉替代方法來執(zhí)行場景中的每個步驟或動作,有助于提高功能對于不同選項支持的有效性針對場景的探索測試的操作模型:4,重復步驟:測試人員在執(zhí)行基礎場景的時候,可以通過重復單個步驟或一組步驟來改變場景,通過重復測試,可以測試到新的代碼路徑,發(fā)現(xiàn)與初始化相關的產(chǎn)品缺陷,重復操作也屬于一種場景的客戶操作。5,替換路徑/數(shù)據(jù):測試人員在執(zhí)行基礎場景的時候,可以修改或替換產(chǎn)品使用的數(shù)據(jù)源來改變場景條件6,替換環(huán)境:測試人員在執(zhí)行基礎場景的時候,可以考慮在不同的硬件平臺,ssd/hdd類型,操作系統(tǒng),瀏覽器等運行4、探索性測試方法的在項目中的運用與改進1、角色轉換測試法1.市場嘗試講解,此方法是鼓勵測試人員觀看銷售給客戶演示的Demo,理解銷售的角度哪些功能對客戶來說是最大的賣點,他們未必就是核心功能,但值得測試人員把它們當核心功能來對待。同時,也許刁鉆的客戶會提出各種質疑,這些質疑和稀奇古怪的問題也可以納入測試人員的設計中。2.傻瓜用戶,可以理解為第一次接觸使用產(chǎn)品的使用者,他對我們的產(chǎn)品原理是一點不懂的,只能依靠幫助文檔,用戶手冊,指引提示操作3.極端用戶專家用戶:進行極限測試法,對產(chǎn)品提出一些偏門提問攻擊者:使用專業(yè)技術進行攻擊,進入故障注入4、探索性測試方法的在項目中的運用與改進1、交互邊界測試法1.動作邊界:單次,多次,重復提交相同數(shù)據(jù),重復進行相同操作2.字符邊界:數(shù)量,類型,特殊字符,平臺特殊字符3.容量邊界【極限測試法】:數(shù)據(jù)量是0或者數(shù)據(jù)量滿;4.狀態(tài)邊界:中斷,掛起,睡眠;可以考慮正在進行某個功能時,功能被取消被中斷。出現(xiàn)外界異常中斷,內部異常中斷,正常用戶中斷,功能切換導致中斷等,【取消測試法】5.文件邊界:考慮文件大小,類型;6.可見區(qū)域次序邊界:設計動作執(zhí)行的先后順序,找到操作各個功能的各種順序,按照不同的順序操作各個功能,關注功能的交互操作?!究爝f測試法,地標測試法】7.時間邊界在進行測試時,需要考慮時間對于功能的影響,特別是通信時間差,另外也需要考慮時間的邊界值的影響4、探索性測試方法的在項目中的運用與改進破壞測試法測試人員嘗試利用每個可能的機會暗中破壞產(chǎn)品,認為的創(chuàng)建惡劣的運行環(huán)境((內存少,無權限,斷電,斷網(wǎng),重啟設備/程序,拔盤,故障注入)針對vs產(chǎn)品可以從以下方面參考1.cpu繁忙2.內存少3.網(wǎng)絡異常:斷網(wǎng),掉包,延遲4.系統(tǒng)日志滿5.存儲空間滿6.斷電異常7.磁盤故障:拔盤,壞道等8.故障注入4、探索性測試方法的在項目中的運用與改進主次測試法

測試與主要賣點特性共同組合出現(xiàn)的輔助特性。如在完成了特性功能初始化操作之后,會出現(xiàn)一些不是主要功能,我們可以繼續(xù)去使用這些功能。舉例:比如測試PCIE—SSD的時候除了關注PCIE-SSD性能,功能,還需要關注存儲頁面關于SSD/磁盤類型,速率等顯示的UI方面功能。4、探索性測試方法的在項目中的運用與改進-舉例把測試當做一件有趣的事情,充分想象用戶的操作過程,而編寫一個復雜有趣味的劇本,把各種場景聯(lián)系起來。1,有意加強多個操作,把一些無關場景關聯(lián)起來增加整個操作場景的路徑2,多個不同功能的操作場景放在一起進行測試。主機自己替換自己----》新增主機之后,不進行配置私網(wǎng)-----》嘗試進行其它界面操作,如遷移,如擴容-----》再修改ip,并且修改成沖突ip--------》進行環(huán)境檢測----------》進行修改私網(wǎng)ip-----》私網(wǎng)配置異常,點擊進行下一步-------》重復進行前置檢測----------》進行主機替換--------》替換后進行又環(huán)境檢測-----》替換進行新建虛擬機-----》替換之后出現(xiàn)私網(wǎng)異常*【vs2.6】【探索】【一鍵檢測】:主機自己替換自己之后,進行一鍵檢測,出現(xiàn)”鏈路聚合連通性檢測“出現(xiàn)誤判問題--0224fix舉例1、長路徑測試

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論