测试人员必看:代码质量管理的一些思路

发表于:2021-4-12 09:43

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:佚名    来源:今日头条

分享:
  现在程序员的能力参差不齐,有科班出身的;也有半路出家的。如何提高代码的质量,对系统的鲁棒性(稳定性)非常重要。
  0x01:编写规范的代码
  一些常见的模式:
  · 项目jar命名:系统 - 模块。例如,cms-user
  · package命名:按照模块、controller、service、dao模式命名。例如,控制器层com.user.controller,服务层com.user.service,持久层com.user.dao
  · 工具类包:com.common.utils
  · 类名:控制器类UserController,服务类UserService,持久类UserDao
  · 生成器功能的类可以命名成XXXGenterator
  · 加载器功能的类可以命名成XXXLoader
  具体其他的规则参考《阿里巴巴Java开发手册》,就非常规范了。
  0x02:静态扫描
  根据约定的规范编写出来的代码,虽然达到了统一规范,但是并不能规范代码编写的风格。例如,没有按规范使用日志框架打印日志,而使用了System.out;没有按规范关闭输入流 / 输出流。这种代码质量的问题,则需要使用一些静态代码扫描工具,进行扫描,然后再进行修复。例如,使用 sonar 静态代码扫描,sonar 由2部分组成,分别是 SonarQube 平台,SonarScanner扫描器。
  SonarQube: WEB 界面管理平台
  · 展示所有的项目代码的质量数据
  · 配置质量规则、管理项目、配置通知、配置SCM等
  SonarScanner: 代码扫描工具
  · 专门用来扫描和分析项目代码。支持20+语言。
  · 代码扫描和分析完成之后,会将扫描结果存储到数据库当中,在sonarQube平台可以看到扫描数据。
  SonarQube 和 SonarScanner 之间的关系
  以上只是接受了一种静态代码扫描的方案,有钱的大公司也会购买 Fortify,这种大型的商业软件进行代码扫描。
  0x03:动态扫描 (安全扫描)
  静态扫描就是不运行程序,通过扫描源代码的方式检查漏洞;动态扫描则是在运行程序下,通过接口渗透的方式检查漏洞。在这种方案下,可以检查到 SQL 注入、XSS 脚本攻击、越权、目录列表等漏洞。这块常见的解决方案是 IBM 公司的AppScan 安全扫描工具(IBM Security App Scan Standard)。
  AppScan 是 IBM 的一款 web 安全扫描工具,可以利用爬虫技术进行网站安全渗透测试,根据网站入口自动对网页链接进行安全扫描,扫描之后会提供扫描报告和修复建议等。AppScan 有自己的用例库,版本越新用例库越全(用例库越全面,对漏洞的检测较全面,被测试系统的安全性则越高)
  工作原理:
  · 通过探索了解整个 web 页面结果。
  · 通过分析,使用扫描规则库对修改的 HTTP Request 进行攻击尝试。
  · 分析 Response 来验证是否存在安全漏洞。

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号