public class A {
public void methodOne(int argument) {
//some operations
B b = methodTwo(int argument);
// some operations based on b
// switch cases based on returned values of b
}
private void methodTwo(int argument)
DateTime dateTime = new DateTime();
//use dateTime to perform some operations
}
答案 0 :(得分:0)
理想情况下,你不要!
含义:你的methodOne()返回一个特定的值。因此,如果可能,您应该更喜欢不测试内部。
因此,您应该编写使用各种参数调用methodOne()的测试用例;然后断言该方法返回的值与您的异常相匹配。
如果你真的需要控制那个" B"对象为了进行合理的测试,正确的方法是使用依赖注入并以某种方式为你的测试类提供一个B对象。因为那时你可以创建一个模拟的B并将其交给你正在测试的类。
换句话说:学习如何编写可测试的代码;例如,通过观看这些videos。认真;这材料的每一分钟都值得你花时间。