单元测试与系统安全的规约

单元测试与系统安全的规约_第1张图片

单元测试规约

需要单元测试的原因:
单元测试与系统安全的规约_第2张图片

是否能够交付产品级别的项目

单元测试与系统安全的规约_第3张图片

根据项目的不同需求,进行性能测试和稳定性测试

单元测试

保证接口能够正常使用

单元测试与系统安全的规约_第4张图片

越早发现成本越低,单元测试的提早发现,对于软件的质量有显著的保障,也可以,提高软件质量优化代码,提高代码质量,找到潜在的问题,可以在重构的时候注意到更好的解决方案

同样的一个代码,晚一轮发现,所用的时间会翻倍

单元测试没有发现的bug,会导致集成测试时产生问题,需要返回啦单元测试

系统测试的时候找bug会非常困难

单元测试的air原则

单元测试的代码框架不会对其他部分产生影响,系统可以一个参数开启,关闭单元测试

单元测试与系统安全的规约_第5张图片

Maven实现单元测试,系统可以一个参数开启,关闭单元测试

每个模块不能相互依赖,要保证独立性

没用新的代码加入,以前的单元测试可以重复使用

单元测试设计代码bcde原则

单元测试与系统安全的规约_第6张图片

Border边界测试

单元测试与系统安全的规约_第7张图片

区间测试eg:手机号11位,测试10位,12位置,如果是一个范围要测试上点、内点、离点

单元测试与系统安全的规约_第8张图片

定义了一个listpage方法根据输入的车次号匹配输出车次信息,车次号先通过正则判断,成功输出信息

测试用例 “t31”、“A31”、“T333333”、“a2”…

单元测试与系统安全的规约_第9张图片

JUnit4 实现了Hamcrest的断言

JUnit

单元测试与系统安全的规约_第10张图片

还可以有断言和假设

Spring TestContext Framework

单元测试与系统安全的规约_第11张图片

maven-surefire-plugin+Jacoco选择性统计代码覆盖率

单元测试与系统安全的规约_第12张图片

sleep test 跳过测试

实例

单元测试与系统安全的规约_第13张图片

Spring TestContext Framework的测试类,主要测试的是数据层面的userMapper,和数据元dateSource

单元测试与系统安全的规约_第14张图片

测试是否能够被sql注入
单元测试与系统安全的规约_第15张图片

数据源链接是否已经被用完,在数据库和mybaits配置的时候比如长链接10短链接3000,在docker、服务器、K8s的不同环境下,性能是不同的,可以通过这个测试,测试具体应该怎么配置

单元测试与系统安全的规约_第16张图片

测试主键重复

单元测试与系统安全的规约_第17张图片

测试分页信息

单元测试与系统安全的规约_第18张图片

系统安全规约

单元测试与系统安全的规约_第19张图片

单元测试与系统安全的规约_第20张图片

前后端都要设置,不是前端不显示就完事了,后段也要控制,验证身份,加密数据,参数校验

单元测试与系统安全的规约_第21张图片

相同权限的A和B都要只能访问自己的数据,部门级不处理会造成部门级别的数据泄漏

权限控制是实例

单元测试与系统安全的规约_第22张图片

单元测试与系统安全的规约_第23张图片

单元测试与系统安全的规约_第24张图片

定义map查询权限

单元测试与系统安全的规约_第25张图片

单元测试与系统安全的规约_第26张图片

单元测试与系统安全的规约_第27张图片

单元测试与系统安全的规约_第28张图片

单元测试与系统安全的规约_第29张图片

1)Execute:调度执行StatementHandler、ParmmeterHandler、ResultHandler执行相应的SQL语句;

2)StatementHandler:使用数据库中Statement(PrepareStatement)执行操作,即底层是封装好了的prepareStatement;

3)ParammeterHandler:处理SQL参数;

4)ResultHandler:结果集ResultSet封装处理返回。

使用JDBC 可以直接在JDBC层进行设置

加密的流程

sql拦截器

单元测试与系统安全的规约_第30张图片

单元测试与系统安全的规约_第31张图片

有注解就可以解密

拦截器实现数据层api的加密

单元测试与系统安全的规约_第32张图片

加密之后 继续进行

sql注入

单元测试与系统安全的规约_第33张图片

单元测试与系统安全的规约_第34张图片

in后面的写法

单元测试与系统安全的规约_第35张图片

XXS跨站点脚本攻击及其防御之术

单元测试与系统安全的规约_第36张图片

重放攻击

单元测试与系统安全的规约_第37张图片

调用短信服务产生bug一直调用短信接口,

避免使用$ 要尽量使用#

时间戳可以防范1分钟内的重放攻击

单元测试与系统安全的规约_第38张图片

解决办法 时间戳+1次性的有效数字

使用Sentinel实现API接口防刷

在接口处就防刷

单元测试与系统安全的规约_第39张图片

限流,超过系统可提供的请求,多余的请求加入队列,对于恶意用户ip加入黑名单

单元测试与系统安全的规约_第40张图片

开启熔断器厚执行异常的操作,定时看熔断器是否开启或者关闭

流程分析

单元测试与系统安全的规约_第41张图片

有些需要有后段的风控模块辅助进行

你可能感兴趣的:(T31,安全,java,系统安全,单元测试,测试类型)