智能表格的ABAP单元测试

2020-08-18 15:57发布

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

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


对于smartform驱动程序,我正在实现单元测试类。 一直工作到将数据传递到smartform功能模块为止。

我想知道有什么方法可以检查smartform元素,例如:

  • 我们可以通过编程方式检查两个窗口是否重叠吗?
  • 还是缺少任何要填充的元素?
  • 还是没有按照要求放置任何窗户?

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

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


对于smartform驱动程序,我正在实现单元测试类。 一直工作到将数据传递到smartform功能模块为止。

我想知道有什么方法可以检查smartform元素,例如:

  • 我们可以通过编程方式检查两个窗口是否重叠吗?
  • 还是缺少任何要填充的元素?
  • 还是没有按照要求放置任何窗户?
付费偷看设置
发送
5条回答
Nan4612
1楼-- · 2020-08-18 17:00

您好 Vinitha Raj

有一个名为CL_SSF_FB_SMART_FORM的类,它可以对 智能表格。 我没有使用过它,但是似乎可以在加载的表单上执行CHECK并返回其XML结构。 对于智能表格测试,这可能是一个好的开始。

 ATA:
   lo_ixml类型参考if_ixml,
   lo_xml_document类型参考if_ixml_document。

 lo_ixml = cl_ixml => create()。
 lo_xml_document = lo_ixml-> create_document()。

 DATA(lo_sf)=新的cl_ssf_fb_smart_form()。
 尝试。
     呼叫方法lo_sf->载入
       出口
 * im_active =空格
         im_formname ='THE_NAME_OF_THE_SMART_FORM'
 * im_language = SY-LANGU
       输入
         ex_fmnumb = DATA(lv_fmnumb)
         ex_fmnumb_test = DATA(lv_fmnumb_test)。
   捕捉cx_ssf_fb。
     返回。
 ENDTRY。

 " lo_sf-> check()。<-检查智能表格的方法

 调用方法lo_sf-> xml_download
   出口
     父= lo_xml_document
   改变
     document = lo_xml_document。
问候,
Mateusz
梦想连接
2楼-- · 2020-08-18 16:55

我看到了配方测试工具,但它不在SAP之外。

我认为ABAP Unit不能真正在Smartforms中使用,因为smartforms不是真正的ABAP,而且绝对不是Clean Coded。

您可以测试的是表单的XML输出。 但这只是关于CHAR的测试。

spaceman01
3楼-- · 2020-08-18 17:00

我的答案与上一个答案相同。

否则,手动执行是最便宜的解决方案。

还有另一个( 非SAP)解决方案,可以按图像进行比较,但是我不知道存在哪些工具,它们如何工作以及如何与SAP集成。

木偶小白
4楼-- · 2020-08-18 16:59

Frederic Girod OTF输出还显示位置,而不仅是文本。 还有帧,颜色,字体等(但仍可能与最终渲染有所不同...)OTF是一种非常简单的格式,易于分析。

hongfeng1314
5楼-- · 2020-08-18 16:37

I 就像我说的那样,认为这只是一个无用的测试。 但是无论如何,不​​存在任何工具(弗雷德里克提到的工具除外),所以我认为目前唯一有效的答案是与增益相比,进行这种测试的成本太高了。

我的两分钱是,唯一负担得起的测试是使用给定的输入参数调用智能表单并验证OTF输出的一部分。 这很容易做到(但是,当然,应该将智能表单编写为不包含依赖关系的ABAP代码,智能表单使用的所有外部数据都应通过参数传递,否则会增加成本)。

一周热门 更多>