ABAP和Java的单元测试Unit Test
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:
.m2\repository\org\apache\maven\plugins\maven-surefire-plugin\2.20\maven-surefire-plugin-2.20\org\apache\maven\plugin\surefire
反编译出来,在getDefaultIncludes里面发现了答案:所有符合后缀Test*.java, Tests.java, TestCase.java结尾的Java文件都作为执行单元测试的候选,
Java里单元测试的灵活之处在于可以给同一class里的不同方法指定不同的Category:
然后用命令行mvn install加上参数-P SlowTests只执行category为SlowTests的那些方法:
关于@Category注解的更多高级用法,参考我的SAP Community 博客: Run only given sets of your unit test via @Category。
要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:
ABAP和Java的单元测试Unit Test相关推荐
- ABAP vs Java, 蛙泳 vs 自由泳
去年7月定下的一年之内学会自由泳的目标终于实现了,特来还愿. ABAP和Java, 蛙泳和自由泳.前面的组合是Jerry用来挣钱养家的技术,后者是Jerry花了大量业余时间和金钱苦练的技能.或许有的朋 ...
- 聊聊 Java 的单元测试
单元测试框架 Java 中,JUnit 和 TestNG 是最受欢迎的单元测试框架. JUnit TestNG JUnit 首先是大名鼎鼎的 JUnit ,JUnit 已经成为 Java 应 ...
- 聊聊Java的单元测试
单元测试框架 Java 中,JUnit 和 TestNG 是最受欢迎的单元测试框架. JUnit TestNG JUnit 首先是大名鼎鼎的 JUnit ,JUnit 已经成为 Java 应 ...
- ABAP vs Java, 蛙泳 vs 自由泳 1
去年7月定下的一年之内学会自由泳的目标终于实现了,特来还愿. ABAP和Java, 蛙泳和自由泳.前面的组合是Jerry用来挣钱养家的技术,后者是Jerry花了大量业余时间和金钱苦练的技能.或许有的朋 ...
- ABAP和Java里关于DEFAULT(默认)机制的一些语言特性
ABAP 740的新语法: 上图的代码相当于: DATA: ls_data LIKE LINE OF it_data. READ TABLE it_data INTO ls_data WITH KEY ...
- ABAP和Java的tag(marker) interface
In my previous blog How many fat interfaces are there in SAP system I introduce the concept of " ...
- SAP ABAP和Java里的弱引用(WeakReference)和软引用(SoftReference)
Jerry前一篇文章 SAP ABAP一组关键字 IS BOUND, IS NOT INITIAL和IS ASSIGNED的用法辨析 介绍了在ABAP里判断引用变量是否包含了一个有效引用的关键字:IS ...
- ABAP,Java, nodejs和go语言的web server编程
ABAP and Java see my blog. nodejs 用nodejs现成的express module,几行代码就能写个server出来: var express = require(' ...
- ABAP,Java, nodejs和go语言的web server编程 1
ABAP and Java see my blog). nodejs 用nodejs现成的express module,几行代码就能写个server出来: var express = require( ...
最新文章
- 小程序笔记一:基础设置
- 好书推介---Windows Server 2003企业部署原理与实践
- java框架之Spring 核心框架体系结构
- html本地载入缓存文件,Flutter中如何加载并预览本地的html文件的方法
- python学习笔记(五)
- is not a function_libcxx 的 std::function 源码分析
- java数字时钟控件_Java-数字时钟(简易版)
- Java异步编程——深入源码分析FutureTask
- 书籍-Druid实时大数据分析原理与实践
- github 如何添加项目代码
- 市场营销案例分析PPT模板-朴尔PPT
- 如何用计算机解锁苹果手机,教你怎么使用Apple Watch手表解锁苹果Mac电脑
- Chrome谷歌浏览器安装crx后缀插件方法
- 全球及中国缓控释肥行业产能规模与投资盈利能力分析报告2022版
- 单细胞测序数据下载和预处理
- [源码和文档分享]基于C语言实现的汽车牌照的快速查询
- JavaScript_牛客网_编程初学者入门训练(21-30题解)
- 华为扩大内存代码_如何将华为手机带代码加大内存5s?
- winrar命令行打自解压安装包不生效问题
- SpringBoot2.x(三)热部署devtool和配置文件自动注入实战
热门文章
- PyTorch基础(part2)
- 《犯罪心理学》读书笔记(part5)--犯罪心理的形成与内在因素的影响(下)
- 利用python爬虫(part6)--用Xpath匹配带来的数据合并问题
- MYSQL必知必会学习笔记(二)
- 显著性目标检测matlab代码_显著性目标检测代码全汇总!(包含2D、3D、4D以及Video)...
- Sklearn参数详解—LR模型
- TypeScript Partial 使用的一个小技巧
- SAP Spartacus 如何连接到其他系统
- SAP UI5 应用 XML 视图的加载逻辑分析
- SAP Spartacus当前产品主数据数据格式的一个例子