2020-09-23 15:53发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我想在考虑外部锁的情况下进行一些单元测试。 因为这是锁定类本身,所以我理想地希望创建SM12锁定,看起来像是来自另一个LUW,然后让我自己的锁定失败。 在测试锁类时,我想真正地创建锁。
单元测试用于基于BOPF的应用程序中的Locking类。
PS:我知道,这不完全是单元测试,因为它不仅测试编码,但是我想在这里使用单元测试框架。
有兴趣的是,您如何锁定BOPF对象?
我之前曾尝试在BOPF中实现显式锁定功能,但这是内部动作,SAP主动阻止了这些功能的使用。 因此,我知道的唯一通过SAP批准的方式是专用读取。
无论如何,对于您的问题:如果您的锁服务使用专用方法进行了实际的锁,则可以在单元测试中覆盖此锁并模拟锁。 我已经做到了,并且效果很好,锁定单元测试类基本上将锁定状态和用户作为属性而不是入队。 这不会进入数据库,但是我认为这是一个合理的假设,我们不需要测试(否则我们不妨开始测试SELECT语句和其他所有内容)。
可以完成完整的BOPF样机,看看/bobf/cl_sadl_entity_transact进行令人印象深刻的单元测试。
周围还有其他一些好地方,可以查看/BOPF/TOOLS包的类,以及一些在哪里使用的搜索。
我真的很喜欢这个主意,但是努力与优先权等式在我看时并不平衡,因此我没有进一步进行研究。
在我们的方案中,无论如何我们都必须锁定在BOPF框架之外,因为通过网关的访问会立即释放队列。 因此,锁定服务位于我们的自定义BOPF框架中(通过入队检索,如果成功,则进行z-lock锁定)。 通过注入,可以为锁工厂提供测试服务,从而覆盖多个对象的整个端到端场景。
最多设置5个标签!
有兴趣的是,您如何锁定BOPF对象?
我之前曾尝试在BOPF中实现显式锁定功能,但这是内部动作,SAP主动阻止了这些功能的使用。 因此,我知道的唯一通过SAP批准的方式是专用读取。
无论如何,对于您的问题:如果您的锁服务使用专用方法进行了实际的锁,则可以在单元测试中覆盖此锁并模拟锁。 我已经做到了,并且效果很好,锁定单元测试类基本上将锁定状态和用户作为属性而不是入队。 这不会进入数据库,但是我认为这是一个合理的假设,我们不需要测试(否则我们不妨开始测试SELECT语句和其他所有内容)。
可以完成完整的BOPF样机,看看/bobf/cl_sadl_entity_transact进行令人印象深刻的单元测试。
周围还有其他一些好地方,可以查看/BOPF/TOOLS包的类,以及一些在哪里使用的搜索。
我真的很喜欢这个主意,但是努力与优先权等式在我看时并不平衡,因此我没有进一步进行研究。
在我们的方案中,无论如何我们都必须锁定在BOPF框架之外,因为通过网关的访问会立即释放队列。 因此,锁定服务位于我们的自定义BOPF框架中(通过入队检索,如果成功,则进行z-lock锁定)。 通过注入,可以为锁工厂提供测试服务,从而覆盖多个对象的整个端到端场景。
一周热门 更多>