java单元测试框架都有哪些(单元测试框架的作用)

文章通过学习《阿里巴巴Java开发手册》整理 1.好的单元测试必须遵守AIR原则 好的单元测试宏观上来说,具有自动化、独立性、可重复执行的特点。 A:Automatic(自动化) I:Independent(独立性) R:Repeatable(可重复) 2.单元测试应该是全自动执行的,并且非交互式的 单元测试中不准使用System.out来进行人肉验证,必须使用assert来验证、 3.保持单元测…

文章通过学习《阿里巴巴Java开发手册》整理

1.好的单元测试必须遵守AIR原则

好的单元测试宏观上来说,具有自动化、独立性、可重复执行的特点。

A: Automatic (自动化)

I:Independent (独立性)

R:Repeatable(可重复)

2.单元测试应该是全自动执行的,并且非交互式的

单元测试中不准使用System.out来进行人肉验证,必须使用assert来验证、

3.保持单元测试的独立性

为了保证单元测试稳定可靠且便于维护,单元测试用例之间决不能互相调用,也不能依赖执行的先后次序

4.单元测试是可以重复执行的,不能受到外界环境的影响。

单元测试通常会被放到持续集成中,每次有代码check in时单元测试都会被执行。如果单元测试对外部环境(网络、服务、中间件等)有依赖,容易导致持续集成机制不可用。

5.核心业务、核心应用、核心模块的增量代码确保单元测试通过

6.单元测试代码目录

单元测试代码必须写在如下工程目录:src/test/java,不允许写在业务代码目录下。

说明:源码构建时会跳过此目录,而单元测试框架默认是扫描此目录。

7.单元测试基本目标

单元测试的基本目标:语句覆盖率达到70%,核心模块的语句覆盖率和分支覆盖率都要达到100%

在工程规约的应用分层中提到的DAO层,Manager层,可重用度高的Service,都应该进行单元测试。

8.编写单元测试代码遵循的原则

遵守BCDE原则,以保证被测试模块的交付质量。

B:Border,边界值测试,包括循环边界、特殊取值、特殊时间点、数据顺序等

C:Correct,正确的输入,并得到预期的结果

D:Design,与设计文档相结合,来编写单元测试

E:Error,强制错误信息输入(如:非法数据、异常流程、非业务允许输入等),并得到预期的结果

9.数据库相关的查询、更新、删除等操作

不能假设数据库里的数据是存在的,或者直接操作数据库把数据插入进去,请使用程序插入或者导入数据的方式来准备数据。

10.和数据库相关的单元测试

和数据库相关的单元测试,可以设定自动回滚机制,不给数据库造成脏数据 。或者对单元测试产生的数据有明确的前后缀标识

11.对于不可测的代码

建议做必要的重构,使代码变得可测,避免为了dadao测试要求bu而书写不规范的测试代码。

12.设计评审阶段

在设计评审阶段,开发人员需要和测试人员一起确定单元测试范围,单元测试最好覆盖所有测试用例(UC)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年5月11日 下午4:56
下一篇 2022年5月11日 下午4:57

相关推荐

  • 如何打开psd文件,这个方法一看就会

    设计师们是不是经常遇见这种灵异事件!明明就几个图层,并没有引入什么大型图片,但是PSD文件却异常巨大,而且用起来经常卡顿?而且另存为的JPG也超级大。 其实罪魁祸首就是这个! 「文件」—「文件简介」—「原始数据」 对于一般的设计师来说可能看不懂这玩意,优化肯定就是不可能的了,难道就没办法了吗? 设计利器为大家分享一个脚本文件,秒秒钟解决文件大的问题! 就是这玩意,反正你也看不懂,渣男直接带你上车吧…

    2022年10月3日
    680
  • seo优化有哪些,seo的主要内容及优化要求

    当前社会很多企业都注意到了SEO,一个产品一个公司在当前的环境下,需要配合网络营销。所以就找到了SEO优化,来提高自己的排名。什么是SEO优化呢?SEO的全写为SearchEngineOptimization,翻译为中文为“搜索引擎优化”。SEO都做哪些基本操作呢?   一、调整网站的TDK   TDK就是标题、描述、关键词,标题中要带有关键词,不能太长,同一关键词不能出现多次,否词会被判定关键词…

    2022年6月19日
    670
  • pc端小说阅读器哪个好(电脑上免费阅读小说的软件)

    SumatraPDF可打开的电子书格式有PDF,eBook(ePub,Mobi),XPS,DjVu,CHM,ComicBook(CBZandCBR)。功能强大、体积小、便携,启动速度非常快。 DownloadSumatraPDF https://www.sumatrapdfreader.org/download-free-pdf-viewer 64-bitbuilds: Installer:Sum…

    2022年5月13日
    990
  • 怎么做企业网站,制作公司网站流程示意图

    公司想要建设一个网站,但是不知道具体要怎么做,需要准备什么资料,针对这个问题,小编整理了一些有关网站建设需要做的基本流程,帮助您节约更多时间和精力。 建设网站第一步:买域名 每个网站都要有自己的域名,就像我们的身份证号一样是独一无二的; 可以去万网、阿里云、腾讯云、百度云、华为云、西部数码、新网等购买域名; 域名可以根据自己的公司简称字母、公司全拼、地域+公司品牌等来组合,或者随您喜欢,不过建议还…

    2022年8月16日
    690
  • 建网站需要多少钱,带你快速了解建站步骤

    做网络营销,网站开发是少不了的,不过现在市面上的网络公司太多,网站建设开发的费用也各种各样,所以很多的企业主在面临价格问题的时候都表现的非常犹豫,价格低了怕被骗,价格高了怕被忽悠交了智商税。那么做一个网站究竟需要花费多少钱呢?小编告诉大家,不同的公司,网站建设的流程不一样,所以收取的费用是不一样的。 关于网站建设的费用,有的公司是套模板做,费用可能不到一千,有的公司做网站,费用在2000-3000…

    2022年10月4日
    460
  • 销售漏斗管理有什么用(漏斗管理销售四个原则)

    一、什么是销售漏斗 销售漏斗(也叫销售管线)是科学反映机会状态以及销售效率的一个重要的销售管理模型。 通过对销售管线要素的定义(如:阶段划分、阶段升迁标志,阶段升迁率、平均阶段耗时、阶段任务等),形成销售管线管理模型; 当日常销售信息进入系统后,系统可自动生成对应的销售管线图,通过对销售管线的分析可以动态反映销售机会的升迁状态,预测销售结果; 通过对销售升迁周期、机会阶段转化率、机会升迁耗时等指标…

    2022年5月11日
    910
  • 七彩虹主板怎么样(七彩虹战斧B360M主板评测)

    七彩虹战斧C.B360M-HDDELUXEV20是mATX小板,尺寸为185*225MM。是一块专门针对追求性价比用户设计的主板。 包装背面通过图文结合的方式详细列出了主板的参数,采用全英文标注,小编只能通过以往的经验来理解其中的含义。 包装内配有一块BattleAxeC.B360M-HDDELUXEV20主板,2条SATA数据线,1张驱动光盘,1片后置面板IO挡板,一本主板中英文使用手册。 战斧…

    2022年10月22日
    610
  • 老人用的手机哪个好用(性价比高的老人手机排行榜)

    最近在给家里老人选手机,发现老人虽然平时嘴上不说,但他们对手机的需求还是很明确的。 老人一般不玩游戏,但是刷视频、阅读文章、听小说,偶尔也会拍照。 所以针对上面的使用场景,给大家推荐2021年新发布的高中低级别手机各1款: 【1、高端机:iPhone13Pro】 适合经济条件比较好的老人用户,iPhone13Pro的A15处理器+120Hz的LTPO高刷屏幕。实力强劲,别说刷视频、阅读文章,就是玩…

    2022年4月28日
    1020
  • 微粒贷利率多少,微粒贷降低利息小技巧

    随着社会压力逐渐增大,不少人都会面临急用钱的情况,这时候选择网贷是一个不错的选择。除了借呗,微粒贷算是业内知名度比较高的一个产品,这是腾讯旗下的小额信用贷款,按天计息,那么微粒贷借一万元每天利息多少钱呢? 微粒贷申请入口:微信-我的个人中心-钱包 微粒贷借款是按照实际借款天数计息的,日利率最高为0.05%,其实很多类似的产品也都差不多,比如借呗、万达贷、360借条、百度有钱花等,基本原则是哪个有额…

    2022年7月31日
    520
  • sem和seo有什么区别,seo与sem的关系及举例

    SEO优化就是搜索引擎优化,通过优化网站使网站排名,提高网站曝光度。 如果你想获得一个好的网站排名,那么你的SEO工作一定要做的非常的好。事实上,一个优秀的SEO专家每天的工作量都很大。如果这是一个新的网站,那么做SEO是非常困难的。SEO是一个长期的工作,而不是一开始做就会有排名。 SEO的工作如下:当你想为一个新网站做SEO时,第一步是将关键字的密度保持在2%到8%之间。关键词密度过低不利于网…

    2022年6月28日
    640

发表回复

登录后才能评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信