云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

网站空间_威动服务器_便宜的

小七 141 0

在博客"伟大的代码是可测试的代码"上发表了一些评论之后,似乎缺少关于好的(单元)可测试代码与传统或标准SAP代码结合的好的"现实生活"示例。

因此–下面是我在这方面的富有成效的示例:

用例是报价的批准流程。要求是检查报价的保证金,并将其与可定制的保证金值进行比较,合计值和百分比值。

检查基于项目级别(百分比检查)和标题的累计(合计值检查)。

如果失败,大数据公司,则设置"阻塞"顺序原因并将消息添加到应用程序日志(SD\u message\u COLLECT)。

所有标准的SD增强业务逻辑都封装到一个单例类中ZCL\u SD\u ORDER\u APPROVAL.

这个类集成到(遗留的)SD用户出口(包括MV45AFZB)。

这里我有一个关于主要步骤和集成点的高级图:

如何通过单元测试来测试这个业务逻辑?

测试数据策略:拥有一份生产环境的副本,并从该测试数据中获益使用测试数据容器(transaction SECATT)利用一些硬编码的测试数据("在你成功之前假装它")测试什么?CUT=测试等级我建议测试我在这里描述的公共API(主要是公共方法)。

如何测试?在这个博客中,大数据难吗,我将重点介绍硬编码的测试数据在设置中,我将获得我的单例实例,以便执行下面的测试。然后,我将添加一个固定的自定义值(total value),在每次参数注入的测试中使用该值,并调用init()方法来提供在该上下文中使用的实际数据。在生产中,初始化被集成到userexit\ read\文档(MV45AFZZ)中。撕裂的意志清理我的测试数据(清除mt…)当我通过功能模块SD\u MESSAGE\u COLLECT向其中添加消息时,重置一些标准功能模块数据(SD\u INIT\u MESSAGES)清理我的切割zcl\U sd\U订单\U批准=>免费()因此,产业云,安装和拆卸将"覆盖"订单处理过程中所需的相同功能测试用例(摘录):如前所述,为了简单起见,本次开发使用硬编码测试数据。我有一些测试用例,它们根据给定的(定制的)阈值检查订单的总值。所以在设置中,我用100000的值来模拟我的定制。现在我有一个测试用例,上面有一个比较值(netwr),下面有一个:然后我做了一个测试,检查给定项目的边距。首先,免费大数据,我将模拟每个测试用例的最小裕度(这里是5%)。此外,我还有一些helper方法,我在几个测试用例中使用这些方法来添加一些具有mock costs和salesprice的项目数据。这是第一项100%的利润是可以的。第二项边界值低于要求的裕度,第三项边界值高于要求的裕度:

验证您的测试:别忘了测试集成本身,因为只测试单元,而不测试用户出口中的集成。您可以通过正常的手动测试来实现这一点或者创建一个集成单元测试,例如调用标准BAPI来创建/更改销售订单检查您的单元测试覆盖率,大数据分析培训课程,看看您的代码中可能存在哪些未经测试的弱点

这里我没有展示的是测试数据容器的用法。这是一个非常强大的工具,特别是当你可以将测试数据(例如通过调试器)从生产系统导出到开发系统时。我试着创建一个关于这个的后续博客。

快乐的单元测试