文档首页/ CodeArts盘古助手/ 快速入门/ 使用CodeArts盘古助手完成代码编写及单元测试
更新时间:2025-08-07 GMT+08:00
分享

使用CodeArts盘古助手完成代码编写及单元测试

本节介绍如何通过CodeArts盘古助手生成一段Java冒泡排序代码,并对生成的代码添加注释以及生成对应的单元测试用例。

前提条件

通过CodeArts盘古助手生成Java冒泡排序代码

  1. 在CodeArts盘古助手的研发问答窗口中输入“生成一个Java的冒泡排序算法”,单击
  2. CodeArts盘古助手将生成一段Java编写的冒泡排序代码及一个main函数,CodeArts盘古助手可能生成的代码如下。

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    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;
                }
            }
        }
    }
    public static void main(String[] args) {
        int[] array = {64, 34, 25, 12, 22, 11, 90};
        bubbleSort(array);
        System.out.println("Sorted array");
        for(int i=0; i < array.length; i++){
            System.out.print(array[i] + " ");
        }
    }
    

  3. 单击回答区域右上角,将生成的代码另存为BubbleSort.java文件并添加必要的package和import等语句。
  4. 在IDEA中选中BubbleSort.java文件,单击右键选择菜单Run 'BubbleSort.main()'运行代码,控制台将打印排序后数组。

    不同IDEA版本代码运行操作可能不同,请根据实际操作。

使用CodeArts盘古助手注释代码

  1. 选中BubbleSort.java类下的代码,单击右键,选择菜单CodeArts盘古助手 > 代码注释
  2. CodeArts盘古助手将会在研发问答窗口中给出注释后代码,通过注释,开发者可以了解代码每行逻辑。

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    /**
     * 使用冒泡排序算法对数组进行排序
     *
     * @param array 需要排序的数组
     */
    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]) {
                    // 创建临时变量,用于保存当前元素
                    int temp = array[j];
                    // 将下一个元素赋值给当前元素
                    array[j] = array[j+1];
                    // 将当前元素赋值给下一个元素
                    array[j+1] = temp;
                }
            }
        }
    }
    /**
     * 主函数,测试冒泡排序
     *
     * @param args 命令行参数
     */
    public static void main(String[] args) {
        // 定义需要排序的数组
        int[] array = {64, 34, 25, 12, 22, 11, 90};
        // 调用冒泡排序函数
        bubbleSort(array);
        // 打印排序结果
        System.out.println("Sorted array");
        // 遍历数组,打印每个元素
        for(int i=0; i < array.length; i++){
            System.out.print(array[i] + " ");
        }
    }
    

使用CodeArts盘古助手生成测试用例

  1. 选中BubbleSort.java中“bubbleSort”方法的代码,使用快捷键“Ctrl+Shift+Q”将代码添加至CodeArts盘古助手的研发问答窗口。
  2. 在研发问答窗口输入框输入“/”后,在弹出的菜单中单击选择 “/tests”
  3. CodeArts盘古助手将对“bubbleSort”方法生成相关测试用例,单击回答区域右上角,将代码另存为BubbleSortTest.java文件。

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    import org.example.BubbleSort;
    import org.junit.jupiter.api.Test;
    import static org.junit.jupiter.api.Assertions.*;
    
    public class BubbleSortTest{
        @Test
        void testBubbleSort(){
            int[] array={64,34,25,12,22,11,90};
            BubbleSort.bubbleSort(array);
            assertArrayEquals(new int[]{11,12,22,25,34,64,90}, array);
        }
        @Test
        void testBubbleSortEmpty(){
            int[] array={};
            BubbleSort.bubbleSort(array);
            assertArrayEquals(new int[]{}, array);
        }
        @Test
        void testBubbleSortSingleElement(){
            int[] array={5};
            BubbleSort.bubbleSort(array);
            assertArrayEquals(new int[]{5}, array);
        }
        @Test
        void testBubbleSortAlreadySorted(){
            int[] array={1,2,3,4,5};
            BubbleSort.bubbleSort(array);
            assertArrayEquals(new int[]{1,2,3,4,5}, array);
        }
        @Test
        void testBubbleSortReversed(){
            int[] array={5,4,3,2,1};
            BubbleSort.bubbleSort(array);
            assertArrayEquals(new int[]{1,2,3,4,5}, array);
        }
    }
    

通过以上操作,开发者不仅成功地编写了一个函数,还进行了必要的代码注释维护工作,确保函数的稳定性和可靠性。同时,开发者还输出了相应的测试用例,以验证函数的正确性和完整性,从而提高了代码的质量和可维护性。

相关文档