本文介紹如何使用無影 AgentBay SDK 建立測試代理程式。該代理可以掃描 Python 專案,使用 LLM 產生測試案例,並在隔離的雲環境中執行。
功能特性
掃描 Python 專案以識別需要測試的模組。
基於專案結構使用 LLM 產生測試案例。
在隔離的 AgentBay 雲會話中執行測試。
將測試結果儲存到本地記錄檔。
支援多種代理架構(目前支援 LangChain,計劃支援其他架構)。
框架組成指南
本專案採用支援多種代理架構的結構。請參考特定的框架組成指南擷取詳細的設定和使用說明:
LangChain 整合指南:LangChain 架構的完整設定和使用說明。
專案源碼參考auto-testing-agent。
專案結構
本專案採用模組化結構,將核心功能與架構特定整合分離:
├── README.md # 文檔
├── .env # 環境變數
├── common/ # 公用核心功能
│ ├── sample_project/ # 用於測試的樣本專案
│ └── src/ # 與架構無關的代碼
│ └── base_auto_testing_agent.py # 基礎測試代理程式類
├── langchain/ # LangChain 整合
│ ├── data/ # 輸出資料目錄(測試結果等)
│ ├── src/ # LangChain 特定代碼
│ │ ├── auto_testing_agent.py # LangChain 特定實現
│ │ └── auto_testing_agent_example.py # LangChain 編排樣本指令碼
│ └── requirements.txt # Python 依賴項公用模組
common目錄包含可在不同代理架構中使用的所有核心功能。包括:
帶有共用功能的基礎測試代理程式類。
專案掃描和分析功能。
測試案例產生邏輯。
AgentBay 會話管理。
測試執行和結果儲存功能。
框架組成模組
架構特定目錄(如 langchain)包含整合代碼,這些代碼使用公用模組的核心功能,並將其封裝在架構特定組件中。
自訂
可以修改 common/sample_project/目錄中的代碼來測試您自己的 Python 專案,並更新樣本指令碼中的指令以匹配您特定的測試需求。