一般来说,使用pragmas是一个很好的方式来告诉"是的,我知道它很脏,但我需要这样做"。
它比ATC豁免更快,企业开发软件,但从质量保证的角度来看,这也有点可怕,优惠券代理平台哪个好,因为你无法控制这些豁免的使用频率。因此,我们提出了代码检查器测试来验证开发人员是否在de pragma/pseudo comment后面编写了额外的文本。
DATA gvţu unused TypeţţNEEDED.DATA gvţu unusedţu withţu reason TypeţţNEEDED。"用于动态分配。
在这个测试的开发过程中,我的同事发现在我们当前的Netweaver版本740 SP3 pragmas中没有出现在代码检查器扫描中。
问题是CL\u CI\u scan:CONSTRUCTOR中的源扫描命令中缺少参数
缺少带有pragmas的参数。
正在运行SAP增强您可以更改SCAN命令并为测试启用pragmas。
我们实现了一个隐式增强,并在构造函数中添加了由其他参数控制的WITH pragmas选项:
此参数从第一个测试的初始化转移到CL\u CI\u SCAN类。CL\u CI\u SCAN的构造函数需要增加一个参数来增强:
P\u with\u PRAGMAS TYPE ABAP\u BOOL DEFAULT ABAP\u FALSE
在CL\u TEST\u SCAN的GET方法中调用构造函数,该方法也需要在顶部进行隐式增强:
这里有一个用于控制PRAGMAS on/off的class属性。这需要添加到类:
WITH\ PRAGMAS Instance Attribute Protected Type ABAP\ u BOOL
此属性继承到自定义测试的构造函数中使用的测试类an,购买云服务器,我们将其设置为ABAP\ u true。
注意:如果SCI变体中的第一个测试是不使用增强的标准测试,大数据工具有哪些,它将不会再次调用,因为默认情况下会重用CL\u CI\u SCAN实例。到目前为止,我们还没有对它进行测试,淘客推广平台,但是在您自己的测试类中使用CLEAR方法有助于强制重新开始源代码扫描。
感谢我的同事Stefan Gaertner所做的出色工作。
嗨,Timo,
我在想,这可能也可以通过让自定义代码检查器检查来完成扫描,这样就不需要对标准代码进行更改,但是会导致性能下降(如您所述,CL\u SI\u扫描结果会被重用)