【发布时间】:2021-11-20 12:27:25
【问题描述】:
我无法模拟以下本地对象 - env、service、creds。这些是来自导入的 Cloud Foundry 依赖项的类。
如何使用Spock 或Junit 4在不重构代码的情况下编写涵盖Groovy 以下代码的所有条件的测试用例?
import io.pivotal.cfenv.core.cfEnv
import io.pivotal.cfenv.core.cfCredentials
import io.pivotal.cfenv.core.cfService
class Test {
public String getPropertyValue() {
CfEnv env = new CfEnv();
CfService service = new CfService();
String propName = "test-name";
try {
service = env.findServiceByName(propName);
} catch (Exception e) {
return null;
}
CfCredentials creds = new CfCredentials();
Map<String, Object> props = service.getMap();
return props.get("prop.name").toString();
}
}
【问题讨论】:
-
你测试的生产代码是Java还是Groovy?
-
@Leonard,这是 Groovy
标签: groovy mocking junit4 spock