ABAP和Java的单元测试Unit Test都有哪些区别?

发表于:2021-11-10 09:55

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:JerryWang_汪子熙    来源:思否

  ABAP
  ABAP class单元测试的执行入口,CLASS_SETUP, 是硬编码在单元测试框架实现CL_AUNIT_TEST_CLASS里的。

  待执行的单元测试方法通过CL_AUNIT_TEST_CLASS~get_Test_Methods返回到一个内表里,然后LOOP该内表,依次执行。

  Java
  最常用的Maven plugin是maven-surefire-plugin,可以方便地单独触发单元测试,或者把单元测试的执行集成为Maven build的一个子步骤。

  下图表明在执行mvn clean install时,执行了srv/test/java/com/sap/testcase下面的两个test case:

  那么maven-surefire-plugin是如何知道哪些.java文件里面的测试方法需要执行呢?
  到这个目录下面打开maven-surefire-plugin的实现文件SurefirePlugin.class:
  .m2repositoryorgapachemavenpluginsmaven-surefire-plugin2.20maven-surefire-plugin-2.20orgapachemavenpluginsurefire
  反编译出来,在getDefaultIncludes里面发现了答案:所有符合后缀Test*.java, Tests.java, TestCase.java结尾的Java文件都作为执行单元测试的候选。

  Java里单元测试的灵活之处在于可以给同一class里的不同方法指定不同的Category:

  然后用命令行mvn install加上参数-P SlowTests只执行category为SlowTests的那些方法:

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号