Java中嵌套Groovy语言debug调试测试

发布时间 2023-09-07 14:48:01作者: 土木转行的人才

1. 编写测试脚本 (TestGroovy.groovy)

文件:
image

内容:

import com.google.common.collect.Maps;

/**
 * @description: 大汉软件测试类
 * @author: gmj
 * @create: 2022-08-09
 * */

String test = test();
println("test: " + test);

HashMap<String, Object> map = Maps.newHashMap();
map.put("remark", "测试描述");
println(map);

Object remark = map.getOrDefault("remark", "110");
println(remark);

def date = new Date()
println "${date}"

static String test() {
    String str = "aaaaaaabbbbbbbbbb";
    String replace = str.replace("a", "");
    return replace;
}

2.测试类

import groovy.lang.GroovyShell;
import groovy.lang.Script;

import java.io.File;
import java.io.IOException;

/**
 * @description:
 * @author: gmj
 * @create: 2022-08-09
 **/
public class TestA {
    public static void main(String[] args) throws IOException {
        GroovyShell shell = new GroovyShell();
        File code = new File("D:\\测试脚本的目录\\TestGroovy.groovy");
        Script script = shell.parse(code);
        script.run();
    }
}

3.结果

test: bbbbbbbbbb
[remark:测试描述]
测试描述
Thu Sep 07 14:31:11 CST 2023

4.总结

本次测试的方式 Groovy的脚本在项目中可能是一个字符串(大多数),也可能是一个.groovy文件。

在项目中本人负责项目为了解决代码侵入性,Groovy的脚本相当于一个插件代码一样,预先编辑测试好存在数据库中,当调用具体逻辑的时候才会读取数据库具体配置。

这种方式导致一个致命的问题就是,一旦脚本写的过于繁重,成了定制化业务代码,后续维护、修改测试是最麻烦的。一旦项目需求变更就需要重新适配调试,如果当前脚本换一个人维护编辑测试的话,效率非常低下。

解决方法:在网上搜索了很长时间,总结最好的测试方式就是把Groovy脚本放在.groovy的文件中,把它当成java类,既可以实现debug调试,又可以实现快速的编辑测试。纯纯的高效率。