我有一项服务:
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)
...
}
更新:由于您的属性是私有(private)的、静态的和最终的,因此在测试期间您将无法对其进行修改。更改来源是唯一的选择。
关于unit-testing - 替换grails服务中的私有(private)最终静态进行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25787978/