Lee*_*fin 2 java junit unit-testing mockito
在School课堂上,我有一个start()调用另一个函数的函数doTask():
pubic class School {
public void start() {
try {
doTask();
} catch(RuntimeException e) {
handleException();
}
}
private void doTask() {
//Code which might throw RuntimeException
}
}
Run Code Online (Sandbox Code Playgroud)
我想单元测试start()有RuntimeException:
@Test
public void testStartWithException() {
// How can I mock/stub mySchool.start() to throw RuntimeException?
mySchool.start();
}
Run Code Online (Sandbox Code Playgroud)
我的实现代码抛出 并不容易RuntimeException,如何让测试代码模拟 RuntimeException 并抛出它?
(除了纯 JUnit,我正在考虑使用Mockito,但不确定如何抛出 RuntimeException)
@Test
public void testStartWithException() {
// How can I mock/stub mySchool.start() to throw RuntimeException?
when(mySchool.start()).thenThrow(new RuntimeException("runtime exception"));
}
Run Code Online (Sandbox Code Playgroud)
您可以使用whenwiththenThrow来抛出异常。
| 归档时间: |
|
| 查看次数: |
7947 次 |
| 最近记录: |