上期我们讲到了白盒测试,不知道大家还有没有印象呀,如果忘记了,可以回顾一下上期的文章《你真的了解白盒测试吗?》哦!那么这一期,我们要开始讲讲白盒测试的落地实践了。

其实,白盒测试落地实践分为两个大方向,一个是静态分析,一个是动态分析,当然啦,也可以叫做静态测试和动态测试。那我们如何高质量保效率的做好白盒测试呢?Parasoft已经为您准备好了成熟的整体解决方案啦。

1. 高质量

从质量上讲,Parasoft的白盒级测试工具C/C++test,Jtest,dotTEST分别可以针对不同编程语言做完备的白盒测试,这期我们以C/C++test为例,我们来聊聊,C/C++test如何保证白盒测试的质量呢

① 静态测试

从静态测试讲,C/C++test支持静态测试的三大维度,分别是:模式匹配、流分析、度量分析。我们先来解释一下这三个维度:

模式匹配:模式匹配就是可以帮助我们的开发人员去扫描代码,找到代码字面上的缺陷,比如说变量命名规则、代码格式等缺陷,在开发早期就保证了代码的开发质量。

流分析:C/C++test的强大流分析技术,可以在不运行代码的前提下,找到代码的隐患缺陷,并且报告出回溯路径,帮助用户快速定位代码,快速修复代码。

度量分析:C/C++test可以支持用户选择几十种指标,去扫描代码,最后报告出对应指标的值,来帮助团队评估代码。

乍一看,好像这三个维度没什么太大的关联,其实不然,这三个维度是依次递进的关系,一环一环地来保障软件质量。举个简单的例子,开发人员A在今天写了代码,通过模式匹配就可以扫描出今天代码中编码不合规的地方,再使用流分析的规则来扫描代码,来找到代码中实实在在的“问题”,到这里,其实已经很大程度保证了代码的编程上面没有什么问题,但是开发好的代码之后,如何保障一个模块的质量了?这个时候就需要利用度量分析,来整体评估了。比如说,使用度量分析来分析模块的”调用深度“这项指标值,分析完成后,就可以看到具体函数的调用深度值了,团队可以评估结果有没有超过团队的预期,如果超过了,证明需要及时调整代码,来符合预期,如果没超过,就证明模块基本初步符合团队预期。

这三个维度的分析就可以帮助我们高质量地做好静态分析工作。

② 动态测试

动态测试方面,其实C/C++test也非常强大,C/C++test不仅可以做高质量的静态测试,而且C/C++test也能做强大的动态测试。

C/C++test可以帮助用户对各大嵌入式环境做仿真环境单元测试,也能做上板测试,以嵌入式keil for arm为例,C/C++test可以测试对Keil项目做各种覆盖率的仿真环境单元测试,也能支持上板测试,同时,C/C++test支持高达9种覆盖率搜集。

在工具操作上,C/C++test支持为用户自动生成健壮性单元测试用例,支持界面化操作测试用例,支持开放测试用例源码,支持桩函数视图,等等。C/C++test的一系列功能,都可以保障客户将单元测试落到实处,保质保量地快速完成工作。

2. 高效率

如何既保证白盒测试的质量,又保障测试的效率的呢?Parasoft有办法!C/C++test的工作流可以嵌入到DevOps工作流中,下期我们聊聊这个话题!

C/C++test白盒测试的落地实践相关推荐

  1. 复旦肖仰华:领域知识图谱落地实践中的问题与对策

    肖仰华博士,复旦大学计算机科学与技术学院教授,博士生导师,知识工场实验室负责人. 报告摘要:近年来,知识图谱技术进展迅速,各种领域知识图谱技术在很多领域或行业取得了显著落地效果.在领域知识图谱技术的落 ...

  2. 智能语音交互技术在360的落地实践

    作者:龚小春,来自:DataFun 导读:随着语音交互技术的发展,对话系统已经越来越成熟.对话系统的最新进展绝大多数是由深度学习技术所贡献的,深度学习技术可以通过利用大规模数据来学习有意义的特征表示和 ...

  3. 演讲实录 | DevOps五大理念及其落地实践

    5月29日,我在全球软件质量&效能大会QECon2021深圳站上进行了一场名为"DevOps五大理念及其落地实践"的演讲. 相信很多朋友已经看过了我参与翻译的新书<独 ...

  4. HPE谢少毅:更敏捷的企业服务,做有生命力的落地实践

    相比一年前,"瘦身后"的HPE是这届参展商里身份变化最大的一个,这是它第一次以HPE的新品牌亮相数博会,也是第一次以一家专注于企业级服务的公司参展数博会. 在HPE的展台上,我见到 ...

  5. python coding style guide 的快速落地实践——业内python 编码风格就pep8和谷歌可以认作标准...

    python coding style guide 的快速落地实践 机器和人各有所长,如coding style检查这种可自动化的工作理应交给机器去完成,故发此文帮助你在几分钟内实现coding st ...

  6. 一个创业公司的API网关落地实践--转

    原文地址:http://chuansong.me/n/1650350951816 作者|Ítalo Lelis编辑|薛命灯HelloFresh是一家食品电商初创公司,用户根据选定的菜谱下单,Hello ...

  7. 蚂蚁科技 Service Mesh 落地实践与挑战

    本文整理自 GIAC(GLOBAL INTERNET ARCHITECTURE CONFERENCE)全球互联网架构大会,蚂蚁科技平台数据技术事业群技术专家石建伟(花名:卓与)的分享.分享基于 Ser ...

  8. Serverless Kubernetes 落地实践

    ​作者:元毅 导读 Kubernetes 作为当今云原生业界标准,具备良好的生态以及跨云厂商能力.Kubernetes 很好的抽象了 IaaS 资源交付标准,使得云资源交付变的越来越简单,与此同时用户 ...

  9. OpenYurt:延伸原生 Kubernetes 到边缘场景下的落地实践

    作者 | 何淋波(新胜) 来源|阿里巴巴云原生公众号 随着云原生技术的逐步成熟,阿里云容器服务团队在具体落地实践过程中不断探索云原生技术的应用边界.同时随着物联网和 5G 的迅猛发展,传统的边缘计算架 ...

最新文章

  1. mysql查看数据库创建语句_mysql-模糊查找数据库和查看数据库的创建语句
  2. Appro DM8127 IPNC 挂载NFS遇到的问题及解决
  3. 【有奖征文】如何提高IDC机房服务器的安全性
  4. 借用的对vue-cli配置对解析
  5. cad指示箭头快捷键命令_CAD快捷键命令大全
  6. vue render
  7. 《网易编程题》疯狂队列
  8. centos7下别名(alias)的特殊用法
  9. linux之修改dns以及用netmask修改ip和网关
  10. PyQt5学习笔记02----初探Qt Designer 设计师
  11. 3.Event Delegate
  12. 【CCCC】L3-026 传送门 (30分),splay(待复盘)
  13. 转帖:django下操作数据库的字符问题
  14. Matter-JS Bodies 内置刚体模块
  15. windows下工具
  16. 图像坐标球面投影_PostGIS空间数据库SRID背景知识 - 地理坐标系(球面坐标系)和投影坐标系(平面坐标系)...
  17. 未来十大最热门职业,可能消失的职业
  18. DisGeNET的初步认识
  19. outlook 签名 设置
  20. mac pro 键帽 方向键 上下键 拆卸

热门文章

  1. 福州大学特大游戏制作团伙-冲刺日志(第10天11.24)
  2. hive窗口函数练习题
  3. 使用 KubeSphere 管理 Amazon EKS Anywhere 集群
  4. Python爬虫进阶之起点中文网字体反扒保姆级教程!!!
  5. 快餐店收银系统Pos学习笔记
  6. 我,阿里的程序员,工作5年,揭秘阿里员工的真实收入和工作经历
  7. echo的故事(希腊神话山林女神和回声女神)
  8. 关于 CentOS 迁移龙蜥操作系统,这里有一份详细指南,请查收~
  9. 智慧园区BIM智能化系统平台建设方案
  10. 帆软报表自定义提交以及单行提交