什么是自動化測試
自動化測試的概念:
軟件自動化測試就是通過測試工具或者其他手段,
按照測試人員的預定計劃對軟件產品進行自動化
測試,他是軟件測試的一個重要組成部分,能夠
完成許多手工測試無法完成或者難以實現的測試
工作,正確合理的實施自動化測試,能夠快速,
全面的對軟件進行測試,從而提高軟件質量,節
省經費,縮短軟件的發布周期。
自動化測試的歷史:
1.自動化測試就是任何利用工具來輔助的測試,幾乎在計算機工業產生的第一天,這種測試就出現了。
2.歷史上從來沒有出現過“測試自動化取代測試工程師工作”這種事情發生,除非你完全忽略測試人員們的真正工作。
3.測試自動化意味著使用測試工具。自動化測試是個古老的理念
1.自動化測試的好處:
1)縮短測試周期
計算機行業更新迭代快速,大量頻繁的回歸測試消耗時間,自動化測試能夠將重復的實行交給計算機去做,加快測試速度。
2)避免人為出錯
測試人員不可能持續高度集中,并且人類易受外界影響(頭疼腦熱,精神不振),可能會造成人為錯誤
3)測試信息存儲
自動化測試將測試信息和數據儲存在文件中,思路清晰明確,交接方便
計算機行業更新迭代快速,大量頻繁的回歸測試消耗時間,自動化測試能夠將重復的實行交給計算機去做,加快測試速度。
2)避免人為出錯
測試人員不可能持續高度集中,并且人類易受外界影響(頭疼腦熱,精神不振),可能會造成人為錯誤
3)測試信息存儲
自動化測試將測試信息和數據儲存在文件中,思路清晰明確,交接方便
4)輕易獲取覆蓋率
自動化測試能夠解放測試人員,使測試人員能夠有更多的精力做那些非重復性的工作。
5)其他
自動化測試可以是實現自動或者定時執行
自動化測試能夠解放測試人員,使測試人員能夠有更多的精力做那些非重復性的工作。
5)其他
自動化測試可以是實現自動或者定時執行
自動化測試的方向是對的,而且趨勢也是如此,但是有些自動化實現不了的還是會手動測一把
自動化測試的分類
1.整體分類:
1)自動化功能測試
1)自動化功能測試
2)自動化性能測試
2.自動化功能測試的分類:
Form span
3)通過屬性
4)通過父子關系
a p p
1)單元測試
程序員搞定
程序員搞定
2)功能測試
3)接口測試
大中型項目或長期項目可以采用自動化測試
3)接口測試
大中型項目或長期項目可以采用自動化測試
3.性能測試主要是使用測試工具
Loadrunner、Jmeter等,對軟件進行壓力測試、負載測試等等,因為這些無法用手工進行代替,所以必須自動化。
為了測試一個web站點的服務能力,需要模擬上千上萬的請求(比如打開瀏覽器訪問站點),人的速度是遠遠達不到這樣的操作的
web自動化條件和使用范圍
1.使用自動化的前提條件
? 1)手動測試已經完成,后期再不影響進度的前提下逐漸實現自動化
? 2)項目周期長,重復性的工作都交給機器去實現
? 3)需求穩定,項目變動不大
4)自動化測試腳本復雜度比較低
5)可重復利用
? 2)項目周期長,重復性的工作都交給機器去實現
? 3)需求穩定,項目變動不大
4)自動化測試腳本復雜度比較低
5)可重復利用
2.使用自動化測試的場景
? 1)頻繁的回歸測試
2)冒煙測試
3)傳統行業需求變化不大,應用頻繁
? 4)性能測試
2)冒煙測試
3)傳統行業需求變化不大,應用頻繁
? 4)性能測試
web自動化常用的工具
1.常見的自動化web測試工具:
1)QTP(收費)?
QTP是Mercury公司的Quick Test Professional的簡稱,是一種自動測試工具。
QTP是Mercury公司的Quick Test Professional的簡稱,是一種自動測試工具。
? 2)Selenium(開源)
ThroughtWorks一個強大的基于瀏覽器的開源自動化測試工具,通常用來編寫web應用的自動化測試
ThroughtWorks一個強大的基于瀏覽器的開源自動化測試工具,通常用來編寫web應用的自動化測試
3)RFT(收費)
? IBM Rational Test Professional的簡稱,是一款先進的自動化的功能和回歸測試工具,使用與測試人員和GUI開發人員,基礎是針對Java,.NET的對象計數和基于web應用程序的錄制,回放功能。
? IBM Rational Test Professional的簡稱,是一款先進的自動化的功能和回歸測試工具,使用與測試人員和GUI開發人員,基礎是針對Java,.NET的對象計數和基于web應用程序的錄制,回放功能。
元素的定位
xpath
XML與HTML

節點的概念:每個XML/HTML的標簽我們都稱之為節點


XPath 使用路徑表達式來選取 XML 文檔中的節點或者節點集。這些路徑表達式和我們在常規的電腦文件系統中看到的表達式非常相似。

例如:/ 從根節點選取

// 從匹配選樣的當前節點選擇文檔中的節點,而不考慮他們的位置

查找某個特定的節點或者包含某個指定的值的節點

例如://link[1]

//link[last()]

//link[last()-1]

//link[position()<3]

//link[@rel]

//link[@rel='icon']

選擇未知節點

如圖:
*

//@*

//node()

/html/body/*

//*

//link[@*]

選取若干路徑
例如
//head | //body
//*[text()=“x’x’x”] 全部//title/text() 文本內容是xxx的元素
//*[starts-with(@attribute,’xxx’)] 屬性以xxx開頭的元素
//*[contains(@attribute,’xxxxx’)] 屬性中含有xxx的元素
css選擇器
CSS 中,選擇器是一種模式,用于選擇需要添加樣式的元素。計算機能夠通過css選擇器定位到相應元素,我們在編寫自動化測試腳本的時候很多時候是在不斷地找到css選擇器。
css選擇器語法
1)通過偽類名、id、標簽名定位

2)通過元素之前嵌套關系
Form span
3)通過屬性
3)通過屬性
4)通過父子關系
a p p

浙公網安備 33010602011771號