
# 单元测试（智能体）
单元测试（智能体）是一款端到端的测试用例生成智能体，具备测试设计、用例生成和用例智能修复全流程核心能力。该功能可准确生成符合代码逻辑的测试用例，同时可自动识别生成用例的编译错误，对存在编译问题的用例进行智能修复，有效提升测试用例的开发效率与质量。
#### 内置智能体
智能体（Agent）是面向多样化开发场景的编程助手。华为云码道代码智能体内置了多款开箱即用的智能体，这些智能体无需手动创建，即拿即用，旨在为多种开发场景提供高效的编程辅助。更多信息请参见[内置智能体](https://support.huaweicloud.com/usermanual-codeartssnap/codeartsagent_ug_0052.html)。
表1内置子智能体列表 
| 名称                     | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|
| general                | 通用智能体，用于研究复杂问题和执行多步骤任务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| explore                | 代码库探索智能体，专门用于快速查找文件、搜索代码关键词、回答代码库相关问题。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| spec-task-agent        | 根据需求和设计生成实现任务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| spec-requirement-agent | 基于项目描述和上下文生成EARS格式需求。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| spec-design-agent      | 生成综合技术设计，将需求（做什么）转化为架构（如何做）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| developer-test-agent   | 专门用于单元测试生成、修复、覆盖率优化和审查的智能体。 调用方式如下： - **指令唤起** ：在聊天界面的输入框中输入指令即可调用，示例：使用developer-test-agent为*某个* 文件的*某个*方法生成单元测试。  - **右键快捷唤起** ：仅支持**IntelliJ IDEA工具** 和基于Java语言编写单元测试。 在智能体模式下鼠标置于**Java方法名**处可右键选择"华为云码道（CodeArts）代码智能体 \> 单元测试（智能体）"快速启用。    |
   
#### 基于智能体的单元测试生成
1. 参考[JetBrains](https://support.huaweicloud.com/usermanual-plugin/codeartsagent_plugin_0003.html)中操作，登录华为云码道代码智能体。
2. 单击IntelliJ IDEA侧边栏的华为云码道代码智能体图标 ![](https://support.huaweicloud.com/usermanual-plugin/zh-cn_image_0000002571514980.png)，打开聊天窗口。
3. 在聊天界面的输入框中，将模型切换为"智能体"。右侧显示当前选用的模型，您可在下拉框中切换不同大语言模型。
4. 选中代码片段后，向华为云码道代码智能体发送单元测试生成指令。两种调用方式如下： 
   - **指令唤起** ：在聊天界面的输入框中输入指令即可调用，例如：使用developer-test-agent为Dijkstra.java文件的main方法生成单元测试。
     图1单元测试   
     ![](https://support.huaweicloud.com/usermanual-plugin/zh-cn_image_0000002670905627.png "点击放大") 
   
   - **右键快捷唤起** ：仅支持JetBrains系列的IntelliJ IDEA。智能体模式下鼠标置于**Java方法名** 处可右键选择"华为云码道（CodeArts）代码智能体 \> 单元测试（智能体）"快速启用。
     图2选择单元测试（智能体）   
     ![](https://support.huaweicloud.com/usermanual-plugin/zh-cn_image_0000002640774964.png "点击放大") 
   
   
   
   
5. 生成单元测试文件，说明运行成功，测试通过。
 
