单元测试与系统安全规约--笔记

174 阅读2分钟

单元测试与系统安全规约

「这是我参与11月更文挑战的第9天,活动详情查看:2021最后一次更文挑战

单元测试规约

什么是软件测试?

指的是通过手工或者工具对被测对象进行测试操作,以此来验证实际结果与预期之间是否存在差异

验证软件的正确性

找出软件中的bug

模型

image-20211117222510984.png

单元测试

单元测试是对软件组成单元进行的测试。其目的是检验软件基本组成单位的正确性。 测试对象是软件设计的最小单元:模块,又称为模块测试

image-20211117222606159.png

单元测试的AIR原则

image-20211117222743633.png

单元测试的BCDE原则

  • B:Border边界值测试
  • C:Correct 正确的输入, 并得到预期的结果
  • E: Error-- 证明程序有错
  • D:Design与设计文档相结合

功能测之边界值测试

  1. 边界点定义
  2. 边界值分析

系统安全规约

越权访问漏洞的防护措施

  1. 前后端同时对用户输入信息进行校验,双重验证机制
  2. 调用功能前,验证用户是否有权限调用相关功能
  3. 执行关键操作前必须验证用户身份,验证用户是否具备操作数据的权限
  4. 直接对象引用的资源ID要加密,防止攻击者枚举ID,敏感数据特殊化处理
  5. 永远不要相信来自用户的输入,对于可控参数进行严格的检查与过滤

敏感数据处理

image-20211117223105625.png

处理方法:

  • 对特殊信息授权访问
  • 特殊信息脱敏
  • 特殊信息加密存储
  • 特殊信息加密传输

数据脱敏的原则

  • 保持原有数据特征
  • 保持数据之间的一致性
  • 保持业务规则的关联性
  • 多次脱敏之间的数据一致性

SQL注入攻击防御

image-20211117223353761.png

Mybatis框架SQL注入漏洞场景

image-20211117223407963.png