use*_*238 2 java junit spring mockito
我想为我的应用程序编写Junit测试以处理错误方法,它看起来像这样
public void myHandlingError(Throwable t) {//content}
Run Code Online (Sandbox Code Playgroud)
我想模拟Throwable对象,但我找不到任何例子.这就是我的想法......
public void myHandlingErrorTest(){
Throwable t = new Exception();
myClass.myHandlingError(t);
.
.
.
Run Code Online (Sandbox Code Playgroud)
任何建议将不胜感激!
术语mock以某种方式暗示您使用模拟框架(如EasyMock)来创建您正在寻找的对象.但对于表示很少需要的异常的对象.你看,异常通常是在"输入错误"上创建的.
我的测试通常做的是:将一些"坏"输入驱动到一个类中; 然后期望抛出某个异常.我的测试捕获该异常,并检索该异常的一个或多个属性; 例如它的消息(使用断言验证).
而且,另一方面:异常是您在生产代码中使用new创建的(大多数情况下).因此,无论如何都没有简单的方法来嘲笑它.并为异常创建一个工厂,并使用依赖注入...听起来有点矫枉过正.你看,关于异常的好处是:在大多数情况下,代码是关于:"抛出的错误输入".所以你只是提供了错误的输入,除了在测试中抛出异常以进一步验证.
在您的情况下,您正在测试实际接收throwable/exceptions对象作为参数的代码; 在这里,你可以选择开始使用的方法 - 在测试中创建对象并将其传递给"处理程序".
| 归档时间: |
|
| 查看次数: |
1787 次 |
| 最近记录: |