自動化測試實戰(zhàn)——基于TestNG/JUnit/Robot Framework/Selenium
定 價:99 元
- 作者:盧家濤 編著
- 出版時間:2021/3/1
- ISBN:9787111673163
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁碼:251
- 紙張:
- 版次:
- 開本:16開
《自動化測試實戰(zhàn)——基于TestNG/JUnit/Robot Framework/Selenium》共12章,第1章首先以一個自動化測試用例為引子,接下來的10章對由此引申出的自動化測試中的多個熱門專題,包括測試用例分層、數(shù)據(jù)驅(qū)動測試、關(guān)鍵字驅(qū)動測試、Page Object設(shè)計模式、等待、斷言、測試報告、測試替身、并行執(zhí)行、分布式執(zhí)行和持續(xù)集成等進(jìn)行了詳細(xì)介紹,第12章以展望的形式對自動化測試平臺以及容器化和人工智能技術(shù)在自動化測試中的應(yīng)用做了簡介。
《自動化測試實戰(zhàn)——基于TestNG/JUnit/Robot Framework/Selenium》適合有一定編程語言和自動化測試基礎(chǔ)的中高級測試工程師、自動化測試工程師、測試開發(fā)工程師以及測試管理者閱讀。
第1章 引例
1.1 部署示例應(yīng)用程序
1.1.1 安裝JRE
1.1.2 安裝H2
1.1.3 安裝ZooKeeper
1.1.4 啟動示例應(yīng)用程序
1.2 一個例子引發(fā)的思考
1.2.1 準(zhǔn)備
1.2.2 編寫登錄測試用例
1.2.3 如何優(yōu)化測試用例
第2章 測試用例分層
2.1 模塊化
2.1.1 初步模塊化
2.1.2 進(jìn)一步優(yōu)化
2.2 函數(shù)庫
2.2.1 使用Maven私有倉庫
2.2.2 發(fā)布函數(shù)庫
2.2.3 使用函數(shù)庫
2.3 精細(xì)化測試用例分層
第3章 數(shù)據(jù)驅(qū)動測試
3.1 TestNG參數(shù)化測試
3.1.1 使用@DataProvider注解
3.1.2 使用@Parameters注解
3.1.3 使用@Factory注解
3.2 JUnit參數(shù)化測試
3.2.1 使用@ValueSource注解
3.2.2 使用@NullSource、@EmptySource和@NullAndEmptySource注解
3.2.3 使用@EnumSource注解
3.2.4 使用@MethodSource注解
3.2.5 使用@CsvSource注解
3.2.6 使用@CsvFileSource注解
3.2.7 使用@ArgumentsSource和@ArgumentsSources注解
3.3 使用不同的數(shù)據(jù)源
3.3.1 使用CSV作為數(shù)據(jù)源
3.3.2 使用Excel作為數(shù)據(jù)源
3.3.3 使用Properties作為數(shù)據(jù)源
3.3.4 使用YAML作為數(shù)據(jù)源
3.3.5 使用數(shù)據(jù)庫作為數(shù)據(jù)源
第4章 關(guān)鍵字驅(qū)動測試
4.1 關(guān)鍵字簡介
4.2 Robot Framework關(guān)鍵字
4.2.1 BuiltIn關(guān)鍵字庫
4.2.2 Collections關(guān)鍵字庫
4.2.3 DateTime關(guān)鍵字庫
4.2.4 Dialogs關(guān)鍵字庫
4.2.5 Easter關(guān)鍵字庫
4.2.6 OperatingSystem關(guān)鍵字庫
4.2.7 Process關(guān)鍵字庫
4.2.8 Remote關(guān)鍵字庫
4.2.9 Reserved關(guān)鍵字庫
4.2.10 Screenshot關(guān)鍵字庫
4.2.11 String關(guān)鍵字庫
4.2.12 Telnet關(guān)鍵字庫
4.2.13 XML關(guān)鍵字庫
4.2.14 外部關(guān)鍵字庫
4.2.15 自定義關(guān)鍵字庫
4.2.16 用戶關(guān)鍵字
4.2.17 關(guān)鍵字的優(yōu)先級
4.3 實現(xiàn)關(guān)鍵字驅(qū)動測試框架
4.3.1 實現(xiàn)關(guān)鍵字
4.3.2 解析關(guān)鍵字
4.3.3 執(zhí)行關(guān)鍵字
4.3.4 優(yōu)化建議
第5章 Page Object設(shè)計模式
5.1 Page Object設(shè)計模式簡介
5.2 兩層建模
5.2.1 頁面對象層
5.2.2 測試用例層
5.3 三層建模
5.3.1 頁面對象層
5.3.2 業(yè)務(wù)邏輯層
5.3.3 測試用例層
5.4 Selenium支持
5.4.1 使用PageFactory類
5.4.2 使用LoadableComponent>類
5.5 優(yōu)化建議
第6章 等待的藝術(shù)
6.1 Java線程休眠
6.2 隱式等待
6.2.1 查找元素等待
6.2.2 頁面加載等待
6.2.3 異步執(zhí)行JavaScript腳本等待
6.3 顯式等待
6.3.1 使用WebDriverWait類
6.3.2 詳解內(nèi)置等待條件
6.3.3 使用FluentWait類
6.3.4 實現(xiàn)自定義等待條件
第7章 高效的斷言
7.1 Java斷言
7.2 TestNG斷言
7.2.1 相等和不相等的斷言
7.2.2 真和假的斷言
7.2.3 空和非空的斷言
7.2.4 相同和不相同的斷言
7.2.5 拋出的斷言
7.2.6 失敗的斷言
7.3 JUnit斷言
7.3.1 準(zhǔn)備
7.3.2 相等和不相等的斷言
7.3.3 真和假的斷言
7.3.4 空和非空的斷言
7.3.5 相同和不相同的斷言
7.3.6 匹配的斷言
7.3.7 多個結(jié)果的斷言
7.3.8 超時的斷言
7.3.9 拋出和不拋出的斷言
7.310 失敗的斷言
7.4 使用AssertJ斷言函數(shù)庫
7.5 使用Hamcrest斷言函數(shù)庫
第8章 測試報告
8.1 TestNG測試報告
8.1.1 內(nèi)置測試報告
8.1.2 自定義測試報告
8.2 使用Extent Reporting框架
8.2.1 本地測試報告
8.2.2 測試報告服務(wù)器
8.3 使用Allure框架
8.3.1 收集測試結(jié)果數(shù)據(jù)
8.3.2 使用命令行工具生成測試報告
8.3.3 使用Maven插件生成測試報告
8.4 使用郵件發(fā)送測試報告
8.4.1 實現(xiàn)郵件發(fā)送客戶端
8.4.2 發(fā)送測試報告
第9章 測試替身
9.1 測試替身簡介
9.2 準(zhǔn)備
9.2.1 Java EE應(yīng)用程序分層模型
9.2.2 規(guī)劃示例應(yīng)用程序
9.3 使用Dummy
9.4 使用Stub
9.5 使用Spy
9.6 使用Mock
9.6.1 單元測試的Mock
9.6.2 HTTP接口測試的Mock
9.6.3 Dubbo接口測試的Mock
9.7 使用Fake
第10章 提高執(zhí)行效率
10.1 使用無頭瀏覽器
10.1.1 PhantomJS和HtmlUnit
10.1.2 Chrome無頭模式
10.1.3 Firefox無頭模式
10.2 TestNG并行執(zhí)行
10.2.1 并行執(zhí)行策略
10.2.2 設(shè)置并行線程數(shù)
10.2.3 設(shè)置超時時間
10.2.4 覆蓋屬性
10.2.5 使用@Test注解
10.2.6 使用@DataProvider注解
10.3 JUnit并行執(zhí)行
10.3.1 并行執(zhí)行策略
10.3.2 設(shè)置并行線程數(shù)
10.3.3 使用@ResourceLock注解
10.3.4 使用@Execution注解
10.4 Selenium Grid
10.4.1 準(zhǔn)備
10.4.2 控制臺和配置
10.4.3 分布式執(zhí)行
第11章 持續(xù)集成、持續(xù)交付和持續(xù)部署
11.1 持續(xù)集成、持續(xù)交付和持續(xù)部署簡介
11.2 Jenkins實現(xiàn)持續(xù)集成、持續(xù)交付和持續(xù)部署
11.2.1 Blue Ocean簡介
11.2.2 使用普通流水線
11.2.3 使用多分支流水線
11.3 其他常用實踐
11.3.1 郵件通知
11.3.2 多節(jié)點(diǎn)構(gòu)建
11.3.3 集成第三方測試報告
第12章 展望
12.1 自動化測試平臺
12.2 自動化測試與容器化
12.3 自動化測試與人工智能