使用CodeArts盘古助手生成单元测试用例
CodeArts盘古助手支持自动分析代码,找出适合进行单元测试的部分,并生成测试用例,帮助开发人员快速验证代码的正确性和稳定性。这些测试用例可以覆盖正常情况、异常情况和边界情况,帮助开发人员验证代码,保证代码在各种情况下都能够正确运行。CodeArts盘古助手支持生成Java、C、C++、Python、JavaScript等语言测试用例,示例以Java语言为例。
约束与限制
- CodeArts盘古助手生成的单元代码可能包含未引入的框架或包,需要手动引入。
- 不支持对abstract、private、main、constructor、toString、getter、setter、empty方法生成单元测试用例。
对Java类生成单元测试用例
- 在IntelliJ IDEA编辑器中代码类任意空白处,单击右键,选择菜单“CodeArts盘古助手 > 单元测试”。
- 弹出“生成单元测试”对话框,根据需要选择以下内容。
- 测试框架 :包括Junit4,Junit5,Spock。
- Mock框架:目前仅支持Mockito。
- Mock静态方法:是否启用模拟静态方法。
- 测试数据增强: 是否增强边界数据。
- 选择待测方法 :选择生成测试用例方法。
- 选择Mock对象:选择模拟对象。
图1 生成单元测试
- 单击“确认”,CodeArts盘古助手将会根据表单内容,生成单元测试用例代码。
对Java单个方法生成测试用例
以Java语言以及CodeArts盘古助手生成的冒泡排序代码作为示例介绍生成测试用例。
- 在IntelliJ IDEA编辑器选中通过CodeArts盘古助手生成的冒泡排序方法。
public static void bubbleSort(int[] array) { int n = array.length; for (int i = 0; i < n-1; i++) { for (int j = 0; j < n+i-1; j++) { if (array[j] > array[j+1]) { // swap array[j] and array[j+1] int temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } }
- 选中代码生成单元测试,可通过以下两种方式。
- 方式一:单击右键,选择菜单“CodeArts盘古助手 > 单元测试”。
- 方式二:在研发问答窗口输入“/”,在弹出的菜单中选择“/tests”,单击
或使用“Enter”快捷键发送。
- 弹出“生成单元测试”对话框,选择“测试框架”和“Mock框架”,单击“确认”。
图2 生成单元测试
- CodeArts盘古助手将会在研发问答窗口输出测试用例代码及代码解释内容,开发者可以将生成的测试用例代码另存为文件后运行。