【问题标题】:Grails Services / Transactions / RuntimeException / TestingGrails 服务 / 事务 / RuntimeException / 测试
【发布时间】:2011-01-11 07:47:51
【问题描述】:

我正在测试服务中的代码,事务设置为 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 实际写出之前完成的交易相关信息 比扔掉??

谢谢

【问题讨论】:

    标签: grails transactions rollback runtimeexception


    【解决方案1】:

    据我所知,它看起来还不错。问题可能出在代码的 ///some stuff 和 ... 部分。使用调试器准确找出异常被抛出的位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-07
      • 2012-03-29
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多