替换grails服务中的私有final static进行测试



我有一项服务:

class VideoService{
    private static final int MAX = 2000
    ...
}

如何更改测试的最大值?
更新:
在不更改服务的情况下,因为我正在为遗留代码编写测试,所以不想更改服务本身。

这假设您使用的是Grails的最新版本。真的很简单。

import grails.util.Environment 
...
class VideoBatcherService{
    private static final int MAX = ((Environment.current == Environment.TEST) ? 20 : 2000)
    ...
}

更新:由于您的属性是私有的、静态的和最终的,因此在测试期间您将无法对此进行修改。更改源是唯一的选择。

最新更新