注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)pytest框架與自動(dòng)化測(cè)試應(yīng)用

pytest框架與自動(dòng)化測(cè)試應(yīng)用

pytest框架與自動(dòng)化測(cè)試應(yīng)用

定 價(jià):¥100.00

作 者: 房荔枝,梁麗麗 著
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787302587156 出版時(shí)間: 2021-12-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 404 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  pytest 是 Python 的第三方測(cè)試框架,可以實(shí)現(xiàn)軟件測(cè)試各層次自動(dòng)化。本書系統(tǒng)講述pytest的主要技術(shù)及在各層次自動(dòng)化測(cè)試的應(yīng)用。 第1章介紹pytest框架。第2章講解框架運(yùn)行管理及對(duì)測(cè)試用例、斷言的管理,運(yùn)行管理中包括各種形式和層次的執(zhí)行,展示框架的靈活性和全面性。第3章詳細(xì)介紹框架的核心技術(shù)fixture,fixture使用依賴注入技術(shù)完成方法、類、文件級(jí)、會(huì)話級(jí)關(guān)聯(lián)、數(shù)據(jù)關(guān)聯(lián)和共享,可完美解決各種情況耦合和共享。第4章結(jié)合測(cè)試中最重要的數(shù)據(jù)驅(qū)動(dòng)技術(shù)產(chǎn)生的參數(shù)化技術(shù),并配合fixture技術(shù)實(shí)現(xiàn)一組代碼多組數(shù)據(jù)的數(shù)據(jù)與代碼分離技術(shù)。第5章系統(tǒng)講解各種實(shí)用插件。第6~10章是實(shí)踐,從單元自動(dòng)化測(cè)試、接口自動(dòng)化測(cè)試、Web端自動(dòng)化測(cè)試及App自動(dòng)化測(cè)試計(jì)劃開始,講解設(shè)計(jì)、實(shí)現(xiàn)到執(zhí)行的全流程。第11章介紹BDD,讓非技術(shù)人員也能參與測(cè)試的全過程。第12章介紹pytest一些相關(guān)配置。 本書可作為從事軟件自動(dòng)化測(cè)試的技術(shù)人員的參考書籍,也可作為高等院校,高職類軟件工程中質(zhì)量保證的參考書籍。

作者簡(jiǎn)介

  房荔枝51testing資深講師,具有十幾年中、大型公司軟件測(cè)試、測(cè)試自動(dòng)化及測(cè)試管理的一線經(jīng)驗(yàn)。 梁麗麗哈爾濱職業(yè)技術(shù)學(xué)院講師,院生態(tài)電商專業(yè)創(chuàng)新團(tuán)隊(duì)成員,院電子商務(wù)專業(yè)工程技術(shù)教育認(rèn)證(TAC)成員,院優(yōu)秀班主任,長(zhǎng)期從事網(wǎng)頁(yè)設(shè)計(jì)、無線傳感器網(wǎng)絡(luò)研究應(yīng)用、計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域的教學(xué)和研究工作。先后開設(shè)商務(wù)網(wǎng)頁(yè)設(shè)計(jì)與制作、電子商務(wù)網(wǎng)站建設(shè)與管理、計(jì)算機(jī)應(yīng)用技術(shù)、人工智能等多門課程。主持省規(guī)劃辦重點(diǎn)課題1項(xiàng),參與省級(jí)及校級(jí)課題4項(xiàng),獲國(guó)家發(fā)明專利2項(xiàng),發(fā)表論文6篇。

圖書目錄

第1章pytest框架介紹
1.1pytest框架引入
1.1.1測(cè)試框架能為我們解決什么問題
1.1.2測(cè)試框架的分類
1.1.3什么是pytest
1.2技術(shù)前提要求
1.2.1技術(shù)前提
1.2.2適合人
1.3環(huán)境準(zhǔn)備及資料準(zhǔn)備
1.3.1Python的環(huán)境驗(yàn)證
1.3.2安裝pytest
1.4pytest初體驗(yàn)
1.4.1在終端建立測(cè)試方法及執(zhí)行過程
1.4.2在PyCharm建立測(cè)試方法及執(zhí)行過程
1.4.3pytest的框架結(jié)構(gòu)
1.4.4在PyCharm中配置運(yùn)行工具
1.4.5右擊以pytest方式執(zhí)行代碼
1.4.6去掉main方法執(zhí)行測(cè)試
1.4.7PyCharm中執(zhí)行某個(gè)測(cè)試方法
1.4.8運(yùn)行窗口的工具欄含義
1.5執(zhí)行的查找原則和測(cè)試類及測(cè)試方法的命名
1.6本章小結(jié)
2章pytest的測(cè)試用例管理及運(yùn)行管理
2.1測(cè)試用例的命名管理
2.2用例執(zhí)行順序
2.3測(cè)試用例的斷言管理
2.3.1什么是斷言
2.3.2斷言的時(shí)機(jī)
2.3.3斷言的分類與使用
2.3.4觸發(fā)一個(gè)指定異常的斷言
2.3.5為失敗斷言添加自定義的說明
2.3.6Assert各種類型斷言
2.4測(cè)試用例的運(yùn)行管理
2.4.1獲取幫助信息
2.4.2常用運(yùn)行測(cè)試用例方式
2.4.3通過python m pytest 調(diào)用pytest 
2.4.4在Python代碼中調(diào)用pytest 
2.4.5pytest執(zhí)行結(jié)束時(shí)返回的狀態(tài)碼
2.4.6輸出代碼中的控制臺(tái)信息
2.4.7顯示詳細(xì)信息
2.4.8不顯示詳細(xì)信息
2.4.9顯示簡(jiǎn)單總結(jié)結(jié)果
2.4.10執(zhí)行指定的測(cè)試用例
2.4.11執(zhí)行指定目錄下所有的測(cè)試用例
2.4.12k參數(shù)執(zhí)行包含特定關(guān)鍵字的測(cè)試用例
2.4.13執(zhí)行指定deid的測(cè)試用例
2.4.14m參數(shù)執(zhí)行指定標(biāo)記的用例
2.4.15執(zhí)行指定包中的測(cè)試用例
2.4.16修改回溯信息的輸出模式
2.5運(yùn)行的失敗管理
2.5.1多允許失敗的測(cè)試用例數(shù)
2.5.2失敗運(yùn)行管理的原理
2.6跳過skip測(cè)試用例的執(zhí)行
2.6.1@pytest.mark.skip裝飾器
2.6.2pytest.skip方法
2.6.3@pytest.mark.skipif裝飾器
2.6.4pytest.importorskip方法
2.6.5跳過測(cè)試類
2.6.6跳過測(cè)試模塊
2.6.7跳過指定文件或目錄
2.6.8各種跳過小結(jié)
2.7標(biāo)記用例為預(yù)期失敗
2.7.1@pytest.mark.fail標(biāo)記用例
2.7.2使用pytest.fail標(biāo)記用例
2.7.3fail標(biāo)記如何失效
2.8中斷調(diào)試及錯(cuò)誤處理
2.8.1失敗時(shí)加載PDB環(huán)境
2.8.2開始執(zhí)行時(shí)就加載PDB環(huán)境
2.8.3設(shè)置斷點(diǎn)
2.8.4使用內(nèi)置的中斷函數(shù)
2.8.5錯(cuò)誤句柄
2.9結(jié)果分析及報(bào)告
2.9.1分析測(cè)試執(zhí)行時(shí)間
2.9.2創(chuàng)建及定制JUnitXML格式的測(cè)試報(bào)告
2.10不穩(wěn)定測(cè)試用例處理
2.10.1為什么不穩(wěn)定測(cè)試是個(gè)問題
2.10.2潛在的根本原因是什么
2.10.3pytest為我們提供的解決策略
2.10.4pytest_CURRENT_TEST
2.10.5可以重新運(yùn)行的插件
2.10.6測(cè)試人員采用的解決策略
2.11本章小結(jié)
3章pytest中閃亮的fiture功能
3.1fiture介紹
3.2fiture目標(biāo)
3.3fiture基本的依賴注入功能
3.4fiture應(yīng)用在初始化設(shè)置
3.5fiture應(yīng)用在配置銷毀
3.5.1使用yield代替return
3.5.2使用with寫法
3.5.3使用addfinalizer方法
3.5.4yield與addfinalizer的區(qū)別
3.6fiture方法源碼詳細(xì)講解
3.7不同層級(jí)scope使用fiture實(shí)例
3.7.1模塊(module)級(jí)別使用fiture實(shí)例
3.7.2類(class)級(jí)別使用fiture實(shí)例
3.7.3會(huì)話(session)級(jí)別使用fiture與conftest.py配合
3.7.4session級(jí)別實(shí)例
3.8使用params 傳遞不同數(shù)據(jù)
3.8.1測(cè)試方法使用兩個(gè)簡(jiǎn)單測(cè)試數(shù)據(jù)
3.8.2二(多)個(gè)測(cè)試方法共用兩個(gè)簡(jiǎn)單測(cè)試數(shù)據(jù)
3.8.3有效測(cè)試數(shù)據(jù)與預(yù)期失敗fail的測(cè)試數(shù)據(jù)
3.8.4params與ids的應(yīng)用
3.8.5params綜合實(shí)例
3.9自動(dòng)調(diào)用fiture
3.9.1使用fiture中參數(shù)autouse=True實(shí)現(xiàn)
3.9.2使用@pytest.mark.usefitures
3.9.3數(shù)據(jù)庫(kù)自動(dòng)應(yīng)用的實(shí)例
3.10三方插件通過文件夾共享測(cè)試數(shù)據(jù)
3.11fiture的并列與嵌套調(diào)用
3.11.1并列使用fiture
3.11.2嵌套調(diào)用fiture
3.11.3多個(gè)fiture的實(shí)例化順序
3.11.4fiture返回工廠函數(shù)
3.11.5高效地利用fiture實(shí)例
3.12在不同的層級(jí)上重寫fiture
3.12.1在文件夾(conftest.py)層級(jí)重寫fiture
3.12.2在模塊層級(jí)重寫fiture
3.12.3在用例參數(shù)中重寫fiture
3.12.4參數(shù)化的fiture可重寫非參數(shù)化的fiture,反之亦然
3.13本章小結(jié)
4章pytest的數(shù)據(jù)驅(qū)動(dòng)和參數(shù)傳遞
4.1參數(shù)化介紹
4.2參數(shù)化的應(yīng)用
4.2.1單一參數(shù)化應(yīng)用
4.2.2多參數(shù)應(yīng)用
4.2.3多個(gè)參數(shù)化
4.2.4參數(shù)化與fiture的結(jié)合
4.2.5pytestmark實(shí)現(xiàn)參數(shù)化
4.3parametrize源碼詳細(xì)講解
4.4argnames參數(shù)
4.4.1argnames與測(cè)試方法中的參數(shù)關(guān)系
4.4.2argnames調(diào)用覆蓋同名的fiture
4.5argvalues參數(shù)
4.5.1argvalues來源于Ecel文件
4.5.2使用pytest.param為argvalues賦值
4.6indirect參數(shù)
4.7ids參數(shù)
4.7.1ids的長(zhǎng)度
4.7.2ids相同
4.7.3ids中使用中文
4.7.4通過函數(shù)生成ids
4.7.5ids的覆蓋
4.7.6ids的作用
4.8scope參數(shù)
4.8.1module級(jí)別
4.8.2未指定scope
4.9pytest_generate_tests鉤子方法
4.10本章小結(jié)
5章pytest的相關(guān)插件及插件管理
5.1pytest的插件安裝
5.2常見插件介紹
5.3常用插件的使用
5.3.1pytestassume斷言報(bào)錯(cuò)后依然執(zhí)行
5.3.2pytestcov 測(cè)試覆蓋率
5.3.3pytestfreezegun 冰凍時(shí)間
5.3.4pytestflakes靜態(tài)代碼檢查
5.3.5pytesthtml生成HTML報(bào)告
5.3.6pytesthttpserver 模擬HTTP服務(wù)
5.3.7pytestinstafail用于用例失敗時(shí)立刻顯示錯(cuò)誤信息
5.3.8pytestmock 模擬未實(shí)現(xiàn)的部分
5.3.9pytestordering調(diào)整執(zhí)行順序
5.3.10pytestpep8自動(dòng)檢測(cè)代碼規(guī)范
5.3.11pytestpicked運(yùn)行未提交git的用例
5.3.12pytestrerunfailures 失敗重試
5.3.13pytestrepeat 重復(fù)運(yùn)行測(cè)試
5.3.14pytestrandomorder 隨機(jī)順序執(zhí)行
5.3.15pytestsugar 顯示彩色進(jìn)度條
5.3.16pytestselenium 瀏覽器兼容性測(cè)試
5.3.17pytesttimeout 設(shè)置時(shí)時(shí)間
5.3.18pytestdist測(cè)試并發(fā)執(zhí)行
5.4插件管理
5.4.1在測(cè)試模塊或conftest文件中加載插件
5.4.2找出哪些插件處于活動(dòng)狀態(tài)
5.4.3通過名稱停用/注銷插件
5.5本章小結(jié)
6章與Allure框架結(jié)合定制測(cè)試報(bào)告
6.1Allure框架介紹
6.2Allure如何生成測(cè)試報(bào)告
6.3Allure報(bào)告組成
6.3.1總覽
6.3.2類別
6.3.3測(cè)試套件
6.3.4功能
6.3.5圖形
6.3.6時(shí)間軸
6.3.7包
6.4Allure的初體驗(yàn)
6.4.1Allure在Windows 系統(tǒng)下安裝
6.4.2Allure在Linu環(huán)境下安裝
6.4.3Allure在Mac OS系統(tǒng)下安裝
6.4.4Allure的簡(jiǎn)單用法
6.4.5Allure的幫助說明
6.5定制測(cè)試報(bào)告
6.5.1定制詳細(xì)的步驟說明
6.5.2不同類型的附件補(bǔ)充測(cè)試說明
6.5.3定制各種類型內(nèi)容描述
6.5.4定制測(cè)試標(biāo)題
6.5.5各種鏈接
6.5.6自定義各種標(biāo)簽
6.5.7嚴(yán)重性標(biāo)記
6.5.8重試信息展示
6.6本章小結(jié)
7章單元自動(dòng)化測(cè)試實(shí)踐
7.1什么是單元測(cè)試
7.2pytest測(cè)試框架是單元測(cè)試的框架
7.3單元測(cè)試與質(zhì)量
7.4單元測(cè)試一個(gè)函數(shù)
7.5單元測(cè)試一個(gè)類
7.5.1類的說明
7.5.2開發(fā)的調(diào)用
7.5.3類持續(xù)開發(fā): 功能的增加及修改
7.5.4類的單元測(cè)試
7.6本章小結(jié)
8章API自動(dòng)化測(cè)試實(shí)踐
8.1測(cè)試微信公眾號(hào)接口
8.1.1熟悉接口文檔以便獲取信息
8.1.2接口測(cè)試用例設(shè)計(jì)
8.2執(zhí)行測(cè)試
8.2.1使用get()、post()方法發(fā)送請(qǐng)求,返回響應(yīng)
8.2.2使用conftest共享數(shù)據(jù)
8.2.3讀取yaml數(shù)據(jù)文件進(jìn)行parametrize
8.2.4關(guān)聯(lián)接口數(shù)據(jù)傳遞及更新刪除接口測(cè)試
8.2.5fiture的依賴接口需要測(cè)試,也需要參數(shù)化
8.3使用Allure定制報(bào)告
8.4使用pytest進(jìn)行各種執(zhí)行
8.5本章小結(jié)
9章Web自動(dòng)化測(cè)試持續(xù)集成實(shí)踐
9.1Web自動(dòng)化測(cè)試及持續(xù)集成源起
9.2被測(cè)試系統(tǒng)的安裝和介紹
9.2.1人力資源管理系統(tǒng)安裝
9.2.2人力資源管理系統(tǒng)介紹
9.3Web項(xiàng)目自動(dòng)化原理及Web測(cè)試框架
9.3.1自動(dòng)化測(cè)試要達(dá)到的目標(biāo)和涉及的技術(shù)
9.3.2Web自動(dòng)化測(cè)試框架Selenium介紹
9.3.3Selenium框架技術(shù)簡(jiǎn)述
9.4整合Web自動(dòng)化測(cè)試框架
9.4.1自動(dòng)化測(cè)試準(zhǔn)備
9.4.2創(chuàng)建工程目錄
9.4.3頁(yè)面元素定位
9.4.4頁(yè)面元素作
9.4.5提高代碼的復(fù)用性和靈活性——封裝
9.4.6編寫測(cè)試用例
9.4.7測(cè)試執(zhí)行
9.4.8生成Allure報(bào)告
9.5Web自動(dòng)化測(cè)試本地環(huán)境持續(xù)集成
9.5.1Jenkins 2實(shí)現(xiàn)自動(dòng)化執(zhí)行測(cè)試及持續(xù)集成流程
9.5.2使用自由風(fēng)格配置Python自動(dòng)化測(cè)試
9.5.3使用pipeline配置Python自動(dòng)化測(cè)試
9.5.4使用BlueOcean配置Python自動(dòng)化測(cè)試
9.6本章小結(jié)
10章App自動(dòng)化測(cè)試項(xiàng)目實(shí)踐
10.1App自動(dòng)化測(cè)試框架選擇
10.2App自動(dòng)化測(cè)試環(huán)境的搭建
10.2.1安裝和驗(yàn)證Java JDK——Windows系統(tǒng)
10.2.2安裝和驗(yàn)證de.js
10.2.3安裝Android SDK
10.2.4安裝模擬器或連接真機(jī)
10.2.5安裝appiumdesk
10.2.6安裝appiumclient
10.2.7appiumdoctor環(huán)境檢查
10.3使用pytest和Allure建立App自動(dòng)化混合框架
10.3.1安裝所需要的包和插件
10.3.2建立目錄結(jié)構(gòu)
10.3.3連接App的配置及啟動(dòng)App
10.3.4使用各種工具進(jìn)行元素定位
10.3.5使用PO方式建立元素定位locators類
10.3.6使用PO方式建立元素作方法基類
10.3.7使用PO方式建立每個(gè)頁(yè)面或功能的元素作方法類
10.3.8結(jié)合pytest的特性建立公共數(shù)據(jù)共享文件conftest.py
10.3.9使用PO的方式建立測(cè)試類
10.3.10使用yaml文件及pytest中的parametrize作為數(shù)據(jù)驅(qū)動(dòng)程序
10.3.11使用Allure標(biāo)簽定制報(bào)告
10.3.12封裝的一些公共的方法
10.3.13在文件中讀取配置文件數(shù)據(jù)
10.3.14在測(cè)試用例中添加log日志
10.3.15組織測(cè)試用例(添加運(yùn)行標(biāo)記)
10.3.16實(shí)現(xiàn)持續(xù)集成——在Jenkins運(yùn)行測(cè)試代碼
附: 本次運(yùn)行的部分appium日志翻譯
11章行為驅(qū)動(dòng)開發(fā)(BDD)實(shí)現(xiàn)自動(dòng)化測(cè)試
11.1什么是BDD
11.2BDD開發(fā)過程
11.3BDD的功能和作用
11.4中國(guó)BDD現(xiàn)狀
11.5pytestbdd實(shí)現(xiàn)BDD開發(fā)

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)