自動(dòng)化測(cè)試實(shí)戰(zhàn)——基于TestNG/JUnit/Robot Framework/Selenium
定 價(jià):99 元
- 作者:盧家濤 編著
- 出版時(shí)間:2021/3/1
- ISBN:9787111673163
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.561
- 頁(yè)碼:251
- 紙張:
- 版次:
- 開本:16開
《自動(dòng)化測(cè)試實(shí)戰(zhàn)——基于TestNG/JUnit/Robot Framework/Selenium》共12章,第1章首先以一個(gè)自動(dòng)化測(cè)試用例為引子,接下來(lái)的10章對(duì)由此引申出的自動(dòng)化測(cè)試中的多個(gè)熱門專題,包括測(cè)試用例分層、數(shù)據(jù)驅(qū)動(dòng)測(cè)試、關(guān)鍵字驅(qū)動(dòng)測(cè)試、Page Object設(shè)計(jì)模式、等待、斷言、測(cè)試報(bào)告、測(cè)試替身、并行執(zhí)行、分布式執(zhí)行和持續(xù)集成等進(jìn)行了詳細(xì)介紹,第12章以展望的形式對(duì)自動(dòng)化測(cè)試平臺(tái)以及容器化和人工智能技術(shù)在自動(dòng)化測(cè)試中的應(yīng)用做了簡(jiǎn)介。
《自動(dòng)化測(cè)試實(shí)戰(zhàn)——基于TestNG/JUnit/Robot Framework/Selenium》適合有一定編程語(yǔ)言和自動(dòng)化測(cè)試基礎(chǔ)的中高級(jí)測(cè)試工程師、自動(dòng)化測(cè)試工程師、測(cè)試開發(fā)工程師以及測(cè)試管理者閱讀。
第1章 引例
1.1 部署示例應(yīng)用程序
1.1.1 安裝JRE
1.1.2 安裝H2
1.1.3 安裝ZooKeeper
1.1.4 啟動(dòng)示例應(yīng)用程序
1.2 一個(gè)例子引發(fā)的思考
1.2.1 準(zhǔn)備
1.2.2 編寫登錄測(cè)試用例
1.2.3 如何優(yōu)化測(cè)試用例
第2章 測(cè)試用例分層
2.1 模塊化
2.1.1 初步模塊化
2.1.2 進(jìn)一步優(yōu)化
2.2 函數(shù)庫(kù)
2.2.1 使用Maven私有倉(cāng)庫(kù)
2.2.2 發(fā)布函數(shù)庫(kù)
2.2.3 使用函數(shù)庫(kù)
2.3 精細(xì)化測(cè)試用例分層
第3章 數(shù)據(jù)驅(qū)動(dòng)測(cè)試
3.1 TestNG參數(shù)化測(cè)試
3.1.1 使用@DataProvider注解
3.1.2 使用@Parameters注解
3.1.3 使用@Factory注解
3.2 JUnit參數(shù)化測(cè)試
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ù)庫(kù)作為數(shù)據(jù)源
第4章 關(guān)鍵字驅(qū)動(dòng)測(cè)試
4.1 關(guān)鍵字簡(jiǎn)介
4.2 Robot Framework關(guān)鍵字
4.2.1 BuiltIn關(guān)鍵字庫(kù)
4.2.2 Collections關(guān)鍵字庫(kù)
4.2.3 DateTime關(guān)鍵字庫(kù)
4.2.4 Dialogs關(guān)鍵字庫(kù)
4.2.5 Easter關(guān)鍵字庫(kù)
4.2.6 OperatingSystem關(guān)鍵字庫(kù)
4.2.7 Process關(guān)鍵字庫(kù)
4.2.8 Remote關(guān)鍵字庫(kù)
4.2.9 Reserved關(guān)鍵字庫(kù)
4.2.10 Screenshot關(guān)鍵字庫(kù)
4.2.11 String關(guān)鍵字庫(kù)
4.2.12 Telnet關(guān)鍵字庫(kù)
4.2.13 XML關(guān)鍵字庫(kù)
4.2.14 外部關(guān)鍵字庫(kù)
4.2.15 自定義關(guān)鍵字庫(kù)
4.2.16 用戶關(guān)鍵字
4.2.17 關(guān)鍵字的優(yōu)先級(jí)
4.3 實(shí)現(xiàn)關(guān)鍵字驅(qū)動(dòng)測(cè)試框架
4.3.1 實(shí)現(xiàn)關(guān)鍵字
4.3.2 解析關(guān)鍵字
4.3.3 執(zhí)行關(guān)鍵字
4.3.4 優(yōu)化建議
第5章 Page Object設(shè)計(jì)模式
5.1 Page Object設(shè)計(jì)模式簡(jiǎn)介
5.2 兩層建模
5.2.1 頁(yè)面對(duì)象層
5.2.2 測(cè)試用例層
5.3 三層建模
5.3.1 頁(yè)面對(duì)象層
5.3.2 業(yè)務(wù)邏輯層
5.3.3 測(cè)試用例層
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 頁(yè)面加載等待
6.2.3 異步執(zhí)行JavaScript腳本等待
6.3 顯式等待
6.3.1 使用WebDriverWait類
6.3.2 詳解內(nèi)置等待條件
6.3.3 使用FluentWait類
6.3.4 實(shí)現(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 多個(gè)結(jié)果的斷言
7.3.8 超時(shí)的斷言
7.3.9 拋出和不拋出的斷言
7.310 失敗的斷言
7.4 使用AssertJ斷言函數(shù)庫(kù)
7.5 使用Hamcrest斷言函數(shù)庫(kù)
第8章 測(cè)試報(bào)告
8.1 TestNG測(cè)試報(bào)告
8.1.1 內(nèi)置測(cè)試報(bào)告
8.1.2 自定義測(cè)試報(bào)告
8.2 使用Extent Reporting框架
8.2.1 本地測(cè)試報(bào)告
8.2.2 測(cè)試報(bào)告服務(wù)器
8.3 使用Allure框架
8.3.1 收集測(cè)試結(jié)果數(shù)據(jù)
8.3.2 使用命令行工具生成測(cè)試報(bào)告
8.3.3 使用Maven插件生成測(cè)試報(bào)告
8.4 使用郵件發(fā)送測(cè)試報(bào)告
8.4.1 實(shí)現(xiàn)郵件發(fā)送客戶端
8.4.2 發(fā)送測(cè)試報(bào)告
第9章 測(cè)試替身
9.1 測(cè)試替身簡(jiǎn)介
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 單元測(cè)試的Mock
9.6.2 HTTP接口測(cè)試的Mock
9.6.3 Dubbo接口測(cè)試的Mock
9.7 使用Fake
第10章 提高執(zhí)行效率
10.1 使用無(wú)頭瀏覽器
10.1.1 PhantomJS和HtmlUnit
10.1.2 Chrome無(wú)頭模式
10.1.3 Firefox無(wú)頭模式
10.2 TestNG并行執(zhí)行
10.2.1 并行執(zhí)行策略
10.2.2 設(shè)置并行線程數(shù)
10.2.3 設(shè)置超時(shí)時(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 控制臺(tái)和配置
10.4.3 分布式執(zhí)行
第11章 持續(xù)集成、持續(xù)交付和持續(xù)部署
11.1 持續(xù)集成、持續(xù)交付和持續(xù)部署簡(jiǎn)介
11.2 Jenkins實(shí)現(xiàn)持續(xù)集成、持續(xù)交付和持續(xù)部署
11.2.1 Blue Ocean簡(jiǎn)介
11.2.2 使用普通流水線
11.2.3 使用多分支流水線
11.3 其他常用實(shí)踐
11.3.1 郵件通知
11.3.2 多節(jié)點(diǎn)構(gòu)建
11.3.3 集成第三方測(cè)試報(bào)告
第12章 展望
12.1 自動(dòng)化測(cè)試平臺(tái)
12.2 自動(dòng)化測(cè)試與容器化
12.3 自動(dòng)化測(cè)試與人工智能