【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
- 前言
之前写单测都是用mockito然后基于java来写单测,但是操作下来写单测确实很占用时间,而且有时候为了提高条件覆盖率,需要写大量的代码,那么该咋办呢?
经过小伙伴的推荐,我去试了下Spock + Groovy,果然很好用,所以在这里特地记下来。
- 操作
那就不多废话了,如果想了解Spock理论知识的可以自行google一波。
- 安装Groovy环境
官网地址:http://www.groovy-lang.org/download.html
找一个自己喜欢的路径将他下载下来并解压
配置环境变量
vi ~/.bash_profile
加入如下配置
# groovy
export GROOVY_PATH=/Users/***/groovy/groovy-2.5.8/bin
export PATH=$PATH:$GROOVY_PATH
验证
groovy -v
这样的话Groovy环境就ok啦!
- 新建groovy目录
接下去就自己新建路径,然后new Groovy Class即可
- 注意点:
如果想要统计覆盖率的话,记得要在idea中配置插件,如下:
- 写法
基本的语法大家可以自行查找一波,可以看W3C school。地址:https://www.w3cschool.cn/groovy/
下面这种格式我一般用的会比较多
- 注意点
如果想在groovy中调用静态方法,可以使用powermock。spock支持和powermock共用。写法如下:
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(Sputnik.class)
@PrepareForTest(Util.class)
class Test extends Specification {
def setup() {
PowerMockito.mockStatic(Util.class)
Mockito.when(Util.method()).thenReturn(result)
}
}
- 结尾
在此简单的记录了下遇到的要点,后续有好用的写法,会继续更新下去!
若有问题,欢迎一起讨论,一起学习进步!
来源:oschina
链接:https://my.oschina.net/u/3095034/blog/3155049