您当前的位置:首页 > 电脑百科 > 程序开发 > 编程百科

白盒测试的落地实践

时间:2022-07-08 09:45:18  来源:  作者:Parasoft中国

白盒测试落地实践分为两个大方向,一个是静态分析,一个是动态分析,当然啦,也可以叫做静态测试和动态测试。那我们如何高质量保效率的做好白盒测试呢?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工作流中!



Tags:白盒测试   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
白盒测试的落地实践
白盒测试落地实践分为两个大方向,一个是静态分析,一个是动态分析,当然啦,也可以叫做静态测试和动态测试。那我们如何高质量保效率的做好白盒测试呢?Parasoft已经为您准备好了成熟...【详细内容】
2022-07-08  Search: 白盒测试  点击:(345)  评论:(0)  加入收藏
▌简易百科推荐
Meta如何将缓存一致性提高到99.99999999%
介绍缓存是一种强大的技术,广泛应用于计算机系统的各个方面,从硬件缓存到操作系统、网络浏览器,尤其是后端开发。对于Meta这样的公司来说,缓存尤为重要,因为它有助于减少延迟、扩...【详细内容】
2024-04-15    dbaplus社群  Tags:Meta   点击:(3)  评论:(0)  加入收藏
SELECT COUNT(*) 会造成全表扫描?回去等通知吧
前言SELECT COUNT(*)会不会导致全表扫描引起慢查询呢?SELECT COUNT(*) FROM SomeTable网上有一种说法,针对无 where_clause 的 COUNT(*),MySQL 是有优化的,优化器会选择成本最小...【详细内容】
2024-04-11  dbaplus社群    Tags:SELECT   点击:(3)  评论:(0)  加入收藏
10年架构师感悟:从问题出发,而非技术
这些感悟并非来自于具体的技术实现,而是关于我在架构设计和实施过程中所体会到的一些软性经验和领悟。我希望通过这些分享,能够激发大家对于架构设计和技术实践的思考,帮助大家...【详细内容】
2024-04-11  dbaplus社群    Tags:架构师   点击:(2)  评论:(0)  加入收藏
Netflix 是如何管理 2.38 亿会员的
作者 | Surabhi Diwan译者 | 明知山策划 | TinaNetflix 高级软件工程师 Surabhi Diwan 在 2023 年旧金山 QCon 大会上发表了题为管理 Netflix 的 2.38 亿会员 的演讲。她在...【详细内容】
2024-04-08    InfoQ  Tags:Netflix   点击:(5)  评论:(0)  加入收藏
即将过时的 5 种软件开发技能!
作者 | Eran Yahav编译 | 言征出品 | 51CTO技术栈(微信号:blog51cto) 时至今日,AI编码工具已经进化到足够强大了吗?这未必好回答,但从2023 年 Stack Overflow 上的调查数据来看,44%...【详细内容】
2024-04-03    51CTO  Tags:软件开发   点击:(9)  评论:(0)  加入收藏
跳转链接代码怎么写?
在网页开发中,跳转链接是一项常见的功能。然而,对于非技术人员来说,编写跳转链接代码可能会显得有些困难。不用担心!我们可以借助外链平台来简化操作,即使没有编程经验,也能轻松实...【详细内容】
2024-03-27  蓝色天纪    Tags:跳转链接   点击:(16)  评论:(0)  加入收藏
中台亡了,问题到底出在哪里?
曾几何时,中台一度被当做“变革灵药”,嫁接在“前台作战单元”和“后台资源部门”之间,实现企业各业务线的“打通”和全域业务能力集成,提高开发和服务效率。但在中台如火如荼之...【详细内容】
2024-03-27  dbaplus社群    Tags:中台   点击:(14)  评论:(0)  加入收藏
员工写了个比删库更可怕的Bug!
想必大家都听说过删库跑路吧,我之前一直把它当一个段子来看。可万万没想到,就在昨天,我们公司的某位员工,竟然写了一个比删库更可怕的 Bug!给大家分享一下(不是公开处刑),希望朋友们...【详细内容】
2024-03-26  dbaplus社群    Tags:Bug   点击:(9)  评论:(0)  加入收藏
我们一起聊聊什么是正向代理和反向代理
从字面意思上看,代理就是代替处理的意思,一个对象有能力代替另一个对象处理某一件事。代理,这个词在我们的日常生活中也不陌生,比如在购物、旅游等场景中,我们经常会委托别人代替...【详细内容】
2024-03-26  萤火架构  微信公众号  Tags:正向代理   点击:(15)  评论:(0)  加入收藏
看一遍就理解:IO模型详解
前言大家好,我是程序员田螺。今天我们一起来学习IO模型。在本文开始前呢,先问问大家几个问题哈~什么是IO呢?什么是阻塞非阻塞IO?什么是同步异步IO?什么是IO多路复用?select/epoll...【详细内容】
2024-03-26  捡田螺的小男孩  微信公众号  Tags:IO模型   点击:(10)  评论:(0)  加入收藏
相关文章
    无相关信息
站内最新
站内热门
站内头条