描述
內容簡介
https://youtu.be/HtPjk1PmjRA
•軟體測試職涯 探討職業發展與未來趨勢。 •實體到軟測 透過實例理解測試核心概念。 •需求評審技巧 強化文件評審與測試準確性。 •多種測試方法 涵蓋等價類、邊界值等技術。 •Bug追蹤管理 介紹禪道等工具提升效率。 •Linux與資料庫 強化測試環境與數據操作能力。 •Web自動化測試 使用Selenium+pytest提升效率。 •API測試實戰 從HTTP基礎到實際案例分析。 •封包抓取分析 利用Charles定位前後端問題。 •Python測試應用 透過Requests、pytest完成自動化。 •AI在測試中 NLP技術輔助測試,提升測試效能。 •求職與面試 履歷製作、題庫解析與模擬問答。
本書內容包含測試職涯發展、學習路線與核心素質,並透過實體產品測試實例幫助讀者理解測試概念。 軟體測試從需求評審開始,書中解析如何審查需求文件,確保測試的準確性,並深入探討測試計畫、測試用例設計與功能測試方法,如等價類劃分、邊界值分析、錯誤推測等,使讀者掌握測試用例的編寫與評審技巧。 在測試執行方面,本書介紹 Bug 追蹤與測試管理工具,提升測試效率,並涵蓋 Linux 指令與 MySQL 操作,幫助測試人員搭建與管理測試環境。 書中還深入探討 Web 自動化測試,透過 Selenium 與 pytest 測試框架與 POM 設計模式提升自動化能力,並介紹 HTTP 介面測試,幫助讀者強化 API 測試技能。 此外,本書涵蓋封包抓取與分析,利用 Charles 工具解析封包內容,有助於前後端錯誤定位,並提供 Python 自動化測試應用,透過 Requests、pytest 提高測試執行效率。 近年來 AI 在測試領域的應用日益重要,本書探討 AI 與 NLP 技術如何輔助測試,如自動生成測試用例與指令碼提升測試效能。 |
作者簡介
|
目錄
▌第1章 初識軟體測試
1.1 軟體測試的職業前景和規劃 1.1.1 軟體測試的現狀與前景 1.1.2 軟體測試人員的職業規劃 1.2 軟體測試人員學習路線 1.3 軟體測試人員的核心素質 1.3.1 人格品質 1.3.2 溝通能力 1.4 軟體測試對學歷的要求 1.5 軟體測試對英文的要求
▌第2章 軟體測試入門 2.1 實體產品測試實例 2.1.1 如何測試礦泉水瓶 2.1.2 如何測試白板筆 2.1.3 產品測試的基本要素 2.2 什麼叫軟體 2.3 軟體測試實例 2.3.1 電子郵件之登入測試 2.3.2 電子郵件之寫信測試 2.3.3 軟體測試的基本要素 2.4 本章小結 2.4.1 學習提醒 2.4.2 求職指導
▌第3章 測試工作從評審需求開始 3.1 專案小組成員 3.2 專案小組成員與需求的關係 3.3 為什麼要評審需求文件 3.4 如何評審需求文件 3.5 本章小結 3.5.1 學習提醒 3.5.2 求職指導
▌第4章 軟體測試的基本概念 4.1 軟體測試及相關概念的定義 4.2 軟體測試的分類 4.2.1 按測試原理分類 4.2.2 按測試階段分類 4.3 初級軟體測試人員的定位 4.4 軟體測試分類關係表 4.5 本章小結 4.5.1 學習提醒 4.5.2 求職指導
▌第5章 軟體測試計畫 5.1 軟體測試計畫的內容 5.2 軟體測試計畫的範本 5.3 本章小結 5.3.1 學習提醒 5.3.2 求職指導
▌第6章 測試用例的設計 6.1 什麼是測試用例 6.1.1 測試用例的格式 6.1.2 測試用例的作用 6.1.3 測試用例與需求的關係 6.2 功能測試的用例設計方法 6.2.1 等價類劃分法 6.2.2 邊界值分析法 6.2.3 錯誤推測法 6.2.4 正交表分析法 6.2.5 因果判定法 6.3 用例設計的基本想法 6.3.1 QQ電子郵件註冊模組 6.3.2 QQ電子郵件登入模組 6.3.3 QQ電子郵件郵件搜尋模組 6.3.4 QQ電子郵件附件上傳模組 6.4 測試用例的評審 6.4.1 如何評審測試用例 6.4.2 用例設計結束的標準 6.5 本章小結 6.5.1 學習提醒 6.5.2 求職指導
▌第7章 測試執行 7.1 部署測試環境 7.2 如何記錄一個Bug 7.2.1 一個 Bug 所包括的內容 7.2.2 Bug 記錄的正確範例 7.3 利用測試管理工具追蹤Bug 7.3.1 測試管理工具簡介 7.3.2 禪道系統基本使用流程 7.3.3 透過禪道系統來追蹤Bug 7.4 對Bug存有爭議時的處理 7.5 回歸測試的策略 7.5.1 回歸測試的基本流程 7.5.2 回歸測試的基本策略 7.6 本章小結 7.6.1 學習提醒 7.6.2 求職指導
▌第8章 軟體測試報告 8.1 軟體測試報告的定義 8.2 軟體測試報告範本 8.3 本章小結 8.3.1 學習提醒 8.3.2 求職指導
▌第9章 Linux命令列與被測系統架設 9.1 Linux的安裝過程 9.2 Linux入門命令列 9.2.1 cd命令的使用場景 9.2.2 pwd命令的使用場景 9.2.3 ls命令的使用場景 9.2.4 cp命令的使用場景 9.2.5 rm命令的使用場景 9.2.6 echo命令的使用場景 9.2.7 cat命令的使用場景 9.2.8 grep命令的使用場景 9.2.9 tail命令的使用場景 9.2.10 find 命令的使用場景 9.3 Linux 高級命令列 9.3.1 wget命令的使用場景 9.3.2 yum命令的使用場景 9.3.3 systemctl命令的使用場景 9.3.4 netstat命令的使用場景 9.3.5 ps命令的使用場景 9.3.6 kill命令的使用場景 9.3.7 top命令的使用場景 9.4 架設ZrLog部落格系統 9.4.1 ZrLog部落格系統的簡介 9.4.2 部署 MySQL 資料庫 9.4.3 部署Tomcat伺服器 9.4.4 部署ZrLog部落格系統 9.5 本章小結 9.5.1 學習提醒 9.5.2 求職指導
▌第10章 MySQL資料庫SQL敘述與索引 10.1 安裝Navicat用戶端工具 10.2 SQL基礎敘述 10.2.1 資料表和列 10.2.2 建構查詢的資料 10.2.3 SELECT敘述的使用場景 10.2.4 WHERE敘述的使用場景 10.2.5 ORDER BY敘述的使用場景 10.2.6 INSERT INTO敘述的使用場景 10.2.7 UPDATE敘述的使用場景 10.2.8 DELETE敘述的使用場景 10.3 SQL高級查詢 10.3.1 建構多資料表查詢的資料 10.3.2 相等連接的使用 10.3.3 笛卡兒積 10.3.4 左外連接的使用 10.3.5 右外連接的使用 10.3.6 分組子句和匯總函數的使用 10.3.7 子查詢的使用 10.4 索引 10.5 本章小結 10.5.1 學習提醒 10.5.2 求職指導
▌第11章 Web自動化測試框架基礎與實戰 11.1 HTML基礎 11.2 XPath定位技術 11.2.1 利用XPath進行元素定位 11.2.2 分析XPath運算式的含義 11.2.3 XPath案例分析 11.3 Python 物件導向的程式設計思想 11.3.1 類別和實例 11.3.2 函數及其呼叫 11.3.3 異常處理機制 11.3.4 繼承 11.3.5 強制等待 11.3.6 pytest框架的學習 11.4 Selenium工具的安裝和使用 11.4.1 Selenium的安裝 11.4.2 瀏覽器驅動程式的安裝 11.4.3 建立瀏覽器的控制者並啟動瀏覽器 11.4.4 讓Google瀏覽器視窗最大化 11.4.5 開啟指定的網頁 11.4.6 獲取網頁原始程式 11.4.7 查詢網頁元素並清理文字 11.4.8 查詢網頁元素並發送內容 11.4.9 使用顯式等待查詢網頁元素並發送內容 11.4.10 按一下「提交」按鈕 11.5 POM設計模式 11.5.1 封裝頁面物件的屬性和方法 11.5.2 建立base_page.py檔案 11.5.3 頁面類別繼承基礎類別 11.5.4 POM圖 11.6 使用pytest框架進行資料驅動 11.6.1 改造頁面類別 11.6.2 新增測試檔案並進行資料驅動 11.6.3 完善POM圖 11.7 本章小結 11.7.1 學習提醒 11.7.2 求職指導
▌第12章 HTTP介面測試基礎與案例分析 12.1 HTTP介面測試基礎 12.1.1 HTTP介面的概念 12.1.2 為HTTP介面增加參數 12.1.3 HTTP介面測試實質 12.1.4 HTTP介面參數傳遞的兩種方式 12.1.5 HTTP介面請求的兩種方法 12.1.6 JSON格式的資料 12.1.7 HTTP請求標頭 12.2 介面測試與Web功能測試的區別 12.3 HTTP介面測試案例分析 12.3.1 介面文件之獲取Token介面 12.3.2 詳細分析獲取Token的介面 12.3.3 設計獲取Token介面的測試用例 12.3.4 介面文件之需求介面 12.3.5 詳細分析需求的介面 12.3.6 設計需求介面的測試用例 12.4 本章小結 12.4.1 學習提醒 12.4.2 求職指導
▌第13章 Charles抓取封包工具的基本使用 13.1 什麼是抓取封包 13.2 為什麼要抓取封包 13.3 抓取封包工具的安裝 13.4 HTTP封包 13.4.1 什麼是 HTTP 封包 13.4.2 抓取 HTTP 封包 13.4.3 如何判定登入的主請求 13.4.4 請求內容的解讀 13.4.5 回應內容的解讀 13.5 HTTPS封包 13.5.1 什麼是HTTPS封包 13.5.2 憑證安裝 13.5.3 解決亂碼問題 13.5.4 抓取HTTPS封包 13.6 透過抓取封包工具定位前後端問題 13.7 本章小結 13.7.1 學習提醒 13.7.2 求職指導
▌第14章 使用Python進行介面自動化測試 14.1 存取Python字典 14.2 安裝Requests函數庫 14.3 建立session實例並發送請求 14.4 使用session實例保持登入狀態 14.5 記錄日誌 14.6 使用fixture處理動態參數 14.7 ZrLog部落格系統的介面抓取封包 14.8 使用pytest框架設計自動化指令稿 14.9 生成HTML測試報告 14.10 本章小結 14.10.1 學習提醒 14.10.2 求職指導
▌第15章 AI在軟體測試中的應用 15.1 測試人員需要掌握NLP相關知識的原因 15.2 自然語言處理基礎 15.2.1 NLP的基本概念 15.2.2 AI與NLP的關係 15.2.3 常見的NLP工具和技術堆疊簡介 15.3 自然語言處理在測試活動中的應用 15.3.1 測試用例的自動生成 15.3.2 自動化測試指令稿的生成 15.4 NLP工具(文心一言) 15.4.1 文心一言的基本使用 15.4.2 文心一言的提問技巧 15.5 AI會替代軟體測試人員嗎 15.6 持續學習與職業發展
▌第16章 求職簡歷製作與面試模擬考場問答 16.1 求職履歷的製作 16.2 履歷中必問的公共性面試題 16.3 履歷中必問的功能兼理論面試題 16.4 履歷中必問的專業技能面試題 16.5 履歷中必問的專案經歷面試題 16.6 履歷中必問的發散性面試題 16.7 面試中如何克服緊張情緒
▌寄語:如何通過試用期 |
序
前言
【寫作背景】 隨著人工智慧技術,尤其是大模型技術的快速發展,軟體測試行業正面臨前所未有的挑戰和機遇。軟體測試人員的作用愈發重要,市場上對軟體測試工程師的需求也日益旺盛。然而,現有教材和培訓資源無法充分滿足大家的需求。此外,市面上缺乏適合初學者的系統化、實際操作性強的軟體測試方面的教材。因此,編者基於自身十年軟體測試工作及相關教學工作的經驗和累積,為有志成為軟體測試工程師的讀者撰寫了本書。
【本書特色】 零基礎入門,用通俗易懂的語言講解了入職軟體測試工程師所需的知識。 內容全面、實用,既緊接讀者主流需求,又表現了軟體測試的前端技術,內容涵蓋了功能測試方法、Web 自動化測試框架、HTTP 介面測試、Python 介面自動化測試及AI 在軟體測試中的應用等。 循序漸進的知識系統,確保讀者能夠穩步提升技能水準,提高學習效率。 本書內容緊扣面試、入職等讀者需求,充分表現「所學即所用」、「無縫對接」職場。提供精心挑選的面試題及參考答案,助力讀者輕鬆應對面試挑戰。 最後一章提供全面的履歷製作與面試技巧指導,幫助讀者整合式解決求職問題。自成系統的全方位學習指南,滿足讀者從零基礎到職業發展的全過程需求。
【目標讀者】 應屆畢業生:對軟體測試領域感興趣並願意投身其中的各專業背景的學生。 初入職場的年輕人:已畢業但工作年限不長,且對軟體測試有興趣的職場新人。 軟體測試相關課程的學習者:開設軟體測試相關課程的培訓機構的學員以及選修相關課程的大專院校學生。 社會學習者:無相關學歷背景但對軟體測試有興趣並希望從事該行業的自學者。
【建議與回饋】 作者和編輯盡最大的努力來確保書中內容的準確性,若讀者發現書中的不妥之處,請發郵件至buyifan@ptpress.com.cn,我們將真誠地接受並加以改進。
【致謝】 感謝人民郵電出版社以及李莎老師,這是我們第二次攜手合作,每次合作都令人感到無比愉快。同時,我也要向張濤老師和卜一凡老師表達深深的謝意,他們為本書提出了寶貴的建議。此外,我還要特別感謝我的家人,尤其是我的太太。在我於北京奮鬥的日子裡,無論是面臨創業的艱難困苦,還是處於專案交付的緊要關頭,她始終都堅定地支援著我,幫助我照顧家庭,對於她的付出,我感激不盡。
【繁體中文出版說明】 本書作者為中國大陸人士,部分範例網站及服務為中國大陸專屬,為維持全書完整性,此部分圖例維持簡體中文介面,請讀者參閱上下文閱讀,特此說明。
江楚 |