web自動化測試html
目錄java
1、 自動化測試基本介紹 2web
2、 Web自動化工具 3瀏覽器
3、 Selenium介紹 4服務器
4、 Selenium WebDriver經常使用API 4cookie
5、 TestNG 6session
6、 環境搭建 8多線程
1 自動化測試概述:併發
什麼是自動化測試?通常說來全部能替代人工測試的方式都屬於自動化測試,即經過工具和腳原本模擬人執行用例的過程。框架
2 自動化測試的做用
3 自動化測試的主要應用:
4 web自動化實現的目標:
(一)原則:
(二)實施策略(持續集成):
1 web自動化工具的選擇:
市場上自動化工具分爲開源和和商用付費兩種,下面提供兩種類型主流的selenium和QTP對比
最終選擇:selenium+IDEA(java+maven+testng)+jenkins
(一)selenium 測試原理:
(二)selenium 工具套件簡單介紹
(一)selenium WebDriver經常使用基礎API
(一) 瀏覽器操做
driver = new FirefoxDriver();
String baseUrl = "http://oa2.midairen.com/index.html";
driver.get(baseUrl);
driver.close();//關閉瀏覽器
driver.manage().window().maximize();
driver.navigate().back();
driver.navigate().forward();
driver.navigate().refresh();
String title =driver.getTitle();
(二) 頁面操做
(三) 元素定位的方法:
(一)TestNG基本介紹:
TestNG是Java中的一個測試框架,是一個目前很流行實用的單元測試框架,有完善的用例管理模塊,配合Maven可以很方便管理依賴第三方插件。使用TestNG能夠作功能、接口、單元、集成的自動化測試,最多見的是結合selenium作功能自動化測試,它使用Java註釋去寫測試方法。
測試人員通常用TestNG來寫自動化測試,開發人員通常用Junit寫單元測試,TestNG適合測試人員使用的主要緣由:TestNG更適合複雜的集成測試。
(二) testNG的特色:
(三) 註解:
TestNG經常使用的測試用例組織結構由test Suite-test-測試class-測試方法。Test suite有一個或者多個test組成,test由一個或者多個測試class組成,一個測試class有一個或者多個測試方法組成。運用不一樣層級的測試用例時,課經過不一樣註解實現測試前的初始化工做,測試用例執行工做和測試後的清理工做。
經常使用註解以下:
(四) 依賴測試
某些複雜的測試場景須要按照某個特定的順序執行測試用例,一以此保證某個特定順序執行測試用例,此測試場景運行需求稱爲依賴測試。經過依賴測試,不一樣的測試方法間共享數據和程序狀態。使用dependsOnMethods參數 實現。
@Test(dependsOnMethods = {"testcase1"})
(五) 斷言
在執行自動化測試用例的時候,咱們須要自動判斷用例執行完成後得到的輸出值是否與預期值一致,這個時候就須要用到斷言功能。TestNG中提供了一個Assert類:org.testng.AsserTestNG中提供了一個Assert類,org.testng.Assert類是做爲放置一系列斷言的靜態方法的容器。
Assert.assertTrue(select1.isDisplayed());//斷言判斷select1元素是否在頁面存在
經常使用的斷言: