点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)如我最近的博客文章,我第一次涉足...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)如我最近的博客文章,我第一次涉足...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
如我最近的博客文章,我第一次涉足ABAP单元测试,这要归功于 Jacques Nomssi Nzali , Mike Pokraka 和其他几个 其他人,我已经学到了很多东西,并且一切都很好。
我现在确实有一个未解决的问题,而不是将其隐藏在我的博客文章的评论中,我决定为其启动一个新的问答线程。 目前,我使用Z表来查看是否允许特定用户执行某些操作,并且此操作应按预期进行,并且我还通过模拟表访问获得了合适的测试用例。 因为我仍处于沙盒系统的原型模式下,所以这是实现它的最简单方法,并且比我要替换的代码中的硬编码检查要好。
在将代码移至实际开发系统时,我想将此逻辑切换为适当的授权对象,并检查是否允许用户执行操作。 因此,我的问题是:然后如何在单元测试期间"模拟"权限检查?
我已经在寻找答案,但是即使在此过程中我发现了其他有趣的文章(即 ABAP单位最佳做法 with-abap-unit-tests/" target =" _ blank">使用ABAP单元测试),没有一个包含我特定问题的答案。 那么,有没有一种可以在NW 7.50系统中工作并且不太需要实施呢? 例如,我可以想象按照另一种接口定义(一种用于auth而不是表选择)进行操作,但是不确定这是否是最佳选择。
非常感谢和欢呼
Baerbel
在上面的示例中,CHECK将在生产代码中执行AUTHORITY-CHECK,或者在测试中执行两次测试。
您可以模拟任何东西:
包装要模拟的方法中的代码,最终根据您的情况将方法放在专用类中(ZCL_AUTH_CHECKER)
创建测试 double(类),它将"重新定义" CHECK方法以返回您首次注入的结果。 在您的情况下,您可以注入一个内部假授权(对象,字段,值)表,然后重新定义的CHECK会读取内部表。
在测试类中,您将测试双精度注入ZCL_AUTH_CHECKER, 您注入了伪造的授权,然后调用了受测代码。
一周热门 更多>