zoukankan      html  css  js  c++  java
  • 阿里规范

    4. 【强制】单元测试是可以重复执行的,不能受到外界环境的影响。
    说明:单元测试通常会被放到持续集成中,每次有代码 check in 时单元测试都会被执行。如果单测对外部
    环境(网络、服务、中间件等)有依赖,容易导致持续集成机制的不可用。
    正例:为了不受外界环境影响,要求设计代码时就把 SUT 的依赖改成注入,在测试时用 spring 这样的 DI
    框架注入一个本地(内存)实现或者 Mock 实现。
     

    被测系统

    被测系统(System under test, SUT)表示正在被测试的系统, 目的是测试系统能否正确操作.
    根据测试类型的不同, SUT 指代的内容也不同, 例如 SUT 可以是一个类甚至是一整个系统.

    6. 【强制】核心业务、核心应用、核心模块的增量代码确保单元测试通过。
    说明:新增代码及时补充单元测试,如果新增代码影响了原有单元测试,请及时修正。
     
    7. 【强制】单元测试代码必须写在如下工程目录:src/test/java,不允许写在业务代码目录下。
    说明:源码编译时会跳过此目录,而单元测试框架默认是扫描此目录。
     
    8. 【推荐】单元测试的基本目标:语句覆盖率达到 70%;核心模块的语句覆盖率和分支覆盖率
    都要达到 100%
    说明:在工程规约的应用分层中提到的 DAO 层,Manager 层,可重用度高的 Service,都应该进行单元
    测试。
     
    分支覆盖率 :5个分支,那么对应的应该有10条语句(一个分支有两条语句,ture和false),如果你执行了其中的5条,那么覆盖率就是50%
     
    11.【推荐】和数据库相关的单元测试,可以设定自动回滚机制,不给数据库造成脏数据。或者
    对单元测试产生的数据有明确的前后缀标识
    正例:在企业智能事业部的内部单元测试中,使用 ENTERPRISE_INTELLIGENCE _UNIT_TEST_的前缀来
    标识单元测试相关代码。
     
    15.【参考】为了更方便地进行单元测试,业务代码应避免以下情况:
    ⚫ 构造方法中做的事情过多。
    ⚫ 存在过多的全局变量和静态方法。
    ⚫ 存在过多的外部依赖。
    ⚫ 存在过多的条件语句。
    说明:多层条件语句建议使用卫语句、策略模式、状态模式等方式重构。
     
    原文链接:https://blog.csdn.net/ljl86400/article/details/79885093

    如果条件语句极其复杂,就应该将条件语句拆解开,然后逐个检查,并在条件为真时立刻从函数中返回,这样的单独检查通常被称之为“卫语句”(guard clauses)

    摘自《重构---改善既有代码的设计》

    卫语句的效果就是将原来需要仔细阅读代码、细心整理逻辑的条件判断整理成一眼能看透的逻辑关系,效果就像以下:

    if(obj != null){

      doSomething();

    }

    转换成卫语句以后的代码如下:

    if(obj == null){

      return;

    }

     doSomething();

     
    16.【参考】不要对单元测试存在如下误解:
    ⚫ 那是测试同学干的事情。本文是开发手册,凡是本文内容都是与开发同学强相关的。
    ⚫ 单元测试代码是多余的。系统的整体功能与各单元部件的测试正常与否是强相关的。
    ⚫ 单元测试代码不需要维护。一年半载后,那么单元测试几乎处于废弃状态
    ⚫ 单元测试与线上故障没有辩证关系。好的单元测试能够最大限度地规避线上故障。
     
     
  • 相关阅读:
    Java安全之JNDI注入
    Visual Studio 2019 升级16.8之后(升级.Net 5),RazorTagHelper任务意外失败
    .Net Core 3.1升级 .Net 5后出现代码错误 rzc generate exited with code 1.
    重走py 之路 ——普通操作与函数(三)
    重走py 之路 ——字典和集合(二)
    设计模式结(完结篇)
    重走py 之路 ——列表(一)
    RestfulApi 学习笔记——分页和排序(五)
    RestfulApi 学习笔记——查询与过滤还有搜索(五)
    Android开发 Error:The number of method references in a .dex file cannot exceed 64K.Android开发 Error:The number of method references in a .dex file cannot exceed 64K
  • 原文地址:https://www.cnblogs.com/light-train-union/p/12349799.html
Copyright © 2011-2022 走看看