ABAP单位代码覆盖率错误:程序与覆盖率测量无关

2020-09-10 00:28发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我们有以下情况:

  • 程序包T中的全局测试类(超类,抽象)CL_A
  • 从CL_A继承的CL_A中的本地测试类LCL_A
  • 包X中的全局类CL_T(这是我们要在CL_A中测试的类)


这里的问题是,以某种方式无法通过执行具有CL_A覆盖率的单元测试来显示CL_T的代码覆盖率。 当我这样做并单击选项卡"覆盖率指标"时,将显示一个空选项卡,并显示一条错误消息"程序CL_A ==== CP"与覆盖率测量无关。

到目前为止,我们已经进行了观察:在对顶级程序包执行单元测试时,coverage选项卡提供了结果,并且可以通过浏览至CL_T程序包来显示CL_T的范围。 但是,如果我只想检查单个类的覆盖范围,则这种方法非常耗时。

有人知道如何解决问题?

感谢和问候

Stefan

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我们有以下情况:

  • 程序包T中的全局测试类(超类,抽象)CL_A
  • 从CL_A继承的CL_A中的本地测试类LCL_A
  • 包X中的全局类CL_T(这是我们要在CL_A中测试的类)


这里的问题是,以某种方式无法通过执行具有CL_A覆盖率的单元测试来显示CL_T的代码覆盖率。 当我这样做并单击选项卡"覆盖率指标"时,将显示一个空选项卡,并显示一条错误消息"程序CL_A ==== CP"与覆盖率测量无关。

到目前为止,我们已经进行了观察:在对顶级程序包执行单元测试时,coverage选项卡提供了结果,并且可以通过浏览至CL_T程序包来显示CL_T的范围。 但是,如果我只想检查单个类的覆盖范围,则这种方法非常耗时。

有人知道如何解决问题?

感谢和问候

Stefan

付费偷看设置
发送
1条回答

该错误消息是由定义引起的,请参见类CL_SCV_MD_GENERATOR方法check_program_valid。

它使用CL_SCV_SOURCE_CODE_UTILS的一个实例作为source_utils及其方法is_relevant_program。

在该方法中,将测试程序是否是全局测试类,如果不相关,则引发异常,并在该错误消息中终止。

如果您更改该类定义,即删除FOR TESTING,它将通过该障碍并显示覆盖率(对于该类为...)

一周热门 更多>