单元测试
功能概述
单元测试(智能体)是一款端到端的测试用例生成子代理,具备测试设计、用例生成和用例智能修复全流程核心能力。该功能可准确生成符合代码逻辑的测试用例,同时可自动识别生成用例的编译错误,对存在编译问题的用例进行智能修复,有效提升测试用例的开发效率与质量。
Visual Studio Code和JetBrains系列工具(PyCharm、IntelliJ IDEA、WebStorm及CLion)均内置了标准的单元测试功能,其中JetBrains系列工具还提供了智能体辅助测试能力。
约束与限制
| 限制类别 | 具体限制 |
|---|---|
| 功能限制 | 仅支持JetBrains系列的开发工具(PyCharm、IntelliJ IDEA、WebStorm及CLion)。 |
| 语言限制 | 仅支持基于Java语言编写单元测试。 |
内置子代理
华为云码道已内置多款子代理,无需您配置,由智能体决定何时使用。
| 名称 | 说明 |
|---|---|
| general | 通用代理,用于研究复杂问题和执行多步骤任务。 |
| explore | 快速代码库探索代理,专用于按模式查找文件、搜索代码关键字、回答代码库问题。 |
| spec-task-agent | 根据需求和设计生成实现任务。 |
| spec-requirement-agent | 基于项目描述和上下文生成EARS格式需求。 |
| spec-design-agent | 生成综合技术设计,将需求(做什么)转化为架构(如何做)。 |
| developer-test-agent | 专门用于单元测试生成、修复、覆盖率优化和审查的子代理。 使用示例请参见基于智能体的单元测试生成。 仅JetBrains系列的开发工具(PyCharm、IntelliJ IDEA、WebStorm及CLion)包含该子代理。 |
基于智能体的单元测试生成
- 参考JetBrains中操作,登录华为云码道。
- 单击IntelliJ IDEA侧边栏的华为云码道图标
,打开聊天窗口。 - 在聊天界面的输入框中,将模型切换为“智能体”。右侧显示当前选用的模型,您可在下拉框中切换不同大语言模型。
- 在代码任意处右键,选择。
例如,对贪吃蛇游戏中的GamePanel.java文件执行单元测试,验证其核心逻辑是否正确。
图1 选择单元测试(智能体)
- 生成GamePanelTest.java单元测试文件,说明运行成功,测试通过。 图2 测试通过效果页面