應用大模型生成測試用例,常見的知識庫,測試大模型,微調,RAG等技術門檻都不低,甚至很難,因此對于應用者而言,最快的方式就是應用好提示詞,調教屬于個人風格的測試用例智能生成模塊,讓智能模板像人一樣,有角色定位,有業務背景,有個人偏好,有目標達成標準,有格式規范要求等,讓智能模板充當你的個人翻譯官,充分發揮每一句設定提示詞的作用和價值,生成屬于你想要風格的測試用例。
本文以Data4Test智能生成測試用例的功能為背景,探討讓大模型生成有個人或公司風格和要求的測試用例。
目錄:1、測試用例的組成
2、用例提示詞設計(prompt設計)
3、背景提示詞設計(prompt設計)
4、通過Data4Test平臺生成測試用例的智能模板設計
5、適合賦值處理的要素
6、用例執行時處理的要素
7、在線體驗8、Github項目地址
9、本地快速試用
1、先蛐蛐一下測試用例的組成測試用例常見的要素:列列都有20項了
(1) 用例編號: 按模塊分類編號,以便數據統計和分析
(2) 用例名稱: 功能聚焦,每一個用例有測試重點
(3) 用例類型: 功能/流程/界面/異常/易用性/回歸/性能/安全/兼容性/場景/壓力/長時間/環境/數據/文案/樣式/交互/邊界等,可自行定義
(4) 優先級:P1/P2/P3/P4或高/中/低, 可自行定義
(5) 預置條件: 用例執行的前置條件,可選
(6) 測試范圍: 范圍說明和澄清
(7) 測試步驟: 按順序編寫測試步驟
(8) 預期結果: 按測試步驟的結果設計預期結果
(9) 測試過程: 測試過程記錄, 一般為截圖或文字補充說明
(10) 是否自動化: 是/否
(11) 功能開發者: 記錄開發人員,可追溯歷史,并進行代碼維護
(12) 用例設計者: 記錄用例設計人員,可追溯歷史,并進行用例維護
(13) 用例執行者: 記錄用例執行人員,可追溯執行過程,可對執行過程回溯
(14) 測試時間: 執行時間記錄
(15) 測試結果: 通過/部分通過/失敗/未測試/已廢棄
(16) 用例模塊: 設置用例歸屬的模塊,以便數據統計和分析
(17) 引入版本: 設置用例引用的版本信息
(18) 關聯場景: 可關聯自動化數據/場景,執行后測試結果回傳
(19) 關聯產品: 關聯執行環境或用例歸屬產品(20) 備注: 問題澄清,問題單關聯,變更原因等
想讓大模型幫忙干活,就要先分析,哪些要素適合讓大模型生成,哪些要素適合直接賦值減少token的消耗,哪些要素是用例執行時才會有的,因此,可以先先對測試用例要素進行分類:1、適合大模型生成的要素有: (1) ~ (8), (10), (16), (18)2、適合賦值處理的要素有:(11) ~ (13), (17), (19)3、用例執行處理的要素有:(9), (14), (15), (20)
對用例要素分類完成后,就可以針對適合大模型生成的部分進行針對性的提示詞設計,而其他部分則可直接進行剪枝處理。
2、用例提示詞設計(prompt設計) 獲取到了適合大模型生成的部分,就可以逐一設計各要素的提示詞,給大模型越明確的要求信息,生成的結果數將更符合要求,能更多的減少后續的人工介入。通過完善和完整的提示詞,清晰明確的告訴大模型,你想要什么樣的測試用例。1、用例編號: 由模塊名, 用例類型,編號組成,如: module_casetype_001; 此處的提示詞主要保證生成的用例編號符合管理的要求或符合個人編寫習慣的風格,保證生成的用例編號是繼承了以往風格的2、用例名稱:由模塊名,用例類型,測試點組成,如: 模塊名_功能_測試點 此處的提示詞主要保證生成的用例名稱符合管理的要求或符合個人編寫習慣的風格,保證生成的用例名稱是繼承了以往風格的3、用例類型:功能, 異常,邊界,安全,性能,流程等 此處的提示詞主要保證生成用例類型的豐富和全面,同時按需生成需要的測試用例類型,避免生成的用例類型非所需或生成的用例類型偏少4、優先級:低、中,高 此處的提示詞主要保證生成的用例優先級等級合適,無需人工判斷優先級5、預置條件: 用例的依賴條件 此處的提示詞主要保證生成的用例前置條件設置,無需人工判斷補充6、測試范圍: 用例的執行范圍 此處的提示詞主要保證生成用例的適用范圍,一個用例可以多場景使用7、測試步驟:進行測試的步驟拆解,為達測試目的,可以拆解為多個步驟展開測試 8、以此類推,其他項按要求定義提示詞,讓大模型按要求生成
3、背景提示詞設計(prompt設計) 設計好了最重要部分用例要素的提示詞, 為了給大模型更多的信息,接著可以對用例設計人員的工作背景信息和行業背景信息等進行定義,告訴大模型你是一個什么樣的角色,你的職責是什么,你要完成什么工作,完成哪個業務方向的工作等1、工作背景:你是一個擁有X年的測試工程師(資源測試工程師/測試開發工程師/測試專家等)等2、行業背景:你現在從事XX系統的測試工作,屬于XX行業等3、角色背景:完成測試用例的設計工作等4、完成工作:生成XXX格式的測試用例,輸出格式參考: XXX
4、通過Data4Test平臺生成測試用例的智能模板設計智能模板內容:
(1)角色背景 你是一個擁有X年測試經驗的XX工程師,現在從事XX系統的測試工作,需要根據需求描述信息,設計指定格式的測試用例(2)測試用例要求1、用例包含: 用例編號,用例名稱,用例類型,優先級, 所屬模塊, 預置條件,測試范圍,測試步驟,預期結果,是否支持自動化;2、用例類型: 功能,異常,場景,數據,邊界等3、用例編號: 由模塊、類型,編號組成,如:module_function_0014、用例名稱: 由模塊名、用例類型、測試點組成,如: 模塊名_功能_測試點5、優先級: 高、中、低6、測試步驟要求:一個測試步驟對應一個預期結果,如果是流程,場景等的用例,可包含多個步驟和多個結果(3)需求描述{需求描述占位符}(4)輸出要求 基于以上背景,開始設計測試用例, 用例輸出格式參考: [{"用例編號":"XXX","用例名稱":"XXX","用例類型":"XXX","優先級":"XXX","所屬模塊":"XXX","預置條件":"XXX","測試范圍":"XXX","測試步驟":"1.XXX;2.XXX;以此類推","預期結果":"1:XXX;2.XXX;以此類推","是否支持自動化":"是或否"}]
多輪會話設置:
第一輪:
幫忙再補充一些功能類型的測試用例
第二輪:
還有補充的嗎?
第三輪:
幫忙再增加一些性能類型的測試用例
第N輪:
按需設置提示詞
5、適合賦值處理的要素 可結合個人所用的測試用例平臺或工具,把適合直接賦值項的信息一鍵補全。即LLM的剪枝概念。通過Data4Test平臺,在配置生成用例的任務時,實時選擇關聯產品,輸入引入版本,用例設計者為生成用例的操作者,無感生成,快速完成測試用例周邊信息的管理。
6、用例執行時處理的要素 可結合個人所用的測試用例平臺或工具,把用例執行時的一些信息補全,如此完成測試用例從生成到執行到回歸到歸檔的全生成周期的管理。通過Data4Test平臺,測試時間,測試結果等信息均可維護,助力使用者全面管理測試用例。7、在線體驗1、訪問地址:http://X.X.X.X:9088/(待新環境上線)2、默認用戶和密碼:admin / admin(建議初次登錄后創建個人用戶進行體驗) (說明:不可當生產環境使用哦)
8、Github項目地址 https://github.com/tongdun/data4test ( 如果本項目對你有所幫助或啟發,記得star 和 fork 本項目支持我們喲~)
9、本地快速試用
(1) 下載docker-compose.yml
(下文有附docker-commpose.yml文件的內容,可復制使用)
(2) 切換到下載目錄
(3) 啟動服務:docker-compose up -d
(4) 默認訪問:http://127.0.0.1:9088
(5) 默認用戶:admin / admin
(說明:試用智能化功能,需有大模型基建,和環境配置)
docker-compose.yml
version:"3.3"services: db: image:josingcjx/db-data4test:5.0 container_name:db-data4test command:--default-authentication-plugin=mysql_native_password ports: -"33066:3306" volumes: -mysql:/data networks: - data4test environment: -MYSQL_ROOT_PASSWORD:password -MYSQL_USER:admin -MYSQL_PASSWORD:data4test data4test: image:josingcjx/data4test:5.0 container_name:data4test restart:always depends_on: - db ports: -"9088:9088" networks: - data4test environment: -MYSQL_PORT:3306 -MYSQL_HOST:db -MYSQL_PASSWORD:password volumes: -/var/run/docker.sock:/var/run/docker.sock -data4test:/datanetworks: data4test:{}volumes: mysql:{} data4test:{}
聲明:
本號對所有原創、轉載文章的陳述與觀點均保持中立,推送文章僅供讀者學習和交流。文章、圖片等版權歸原作者享有,如有侵權,聯系刪除。
-
測試
+關注
關注
9文章
6194瀏覽量
131343 -
人工智能
+關注
關注
1817文章
50093瀏覽量
265251 -
大模型
+關注
關注
2文章
3647瀏覽量
5176
發布評論請先 登錄
一種改進的兩兩組合測試用例生成方法
基于DSEA的弱變異測試用例集生成方法
基于UML圖依權限有序的Web鏈接測試用例生成方法
粒子群優化測試用例生成方法
基于遺傳算法的測試用例生成方法
測試用例的管理 介紹測試用例的幾種管理方法
用例篇 | 單元測試用例復用到集成測試?Testlet Library來助力!(上)
如何讓大模型生成你想要的測試用例?
評論