我正在测试服务中的代码,事务设置为 true ,它与客户提供的 Web 服务对话,其主要部分看起来像
class BarcodeService {
..
/// some stuff ...
try{
cancelBarCodeResponse = cancelBarCode(cancelBarcodeRequest)
} catch(myCommsException e) {
throw new RuntimeException(e)
}
...
其中 myCommsException 扩展了 Exception ..
我有一个看起来像的测试
// As no connection from my machine, it should fail ..
shouldFailWithCause(RuntimeException){
barcodeServices.cancelBarcodeDetails()
}
测试失败是因为它捕获了一个 myCommsException 而不是 RuntimeException 我认为我已经将它转换为 .. 有人愿意指出我做错了什么吗?它不是 RuntimeException 的事实是否意味着在我的 try/catch 实际写出而不是丢弃之前完成的任何与事务相关的信息?
谢谢