软件测试中的白盒测试分析

伴随着软件测试技术的迅速发展,白盒和黑盒测试在测试行业中运用的越来越多。白盒测试相对于黑盒测试在很多地方是不同的,白盒趋向于对软件结构和代码进行测试,可以设计出测试用例。

可靠的软件白盒测试工程师可以通过白盒对软件内部的逻辑关系进行定义,对各种逻辑路径实现全面覆盖,这样在测试中就能检查各个点和部位程序状态,保证测试的实际与预期状态相一-致。本文将深入分析软件测试中的白盒测试方法,希望对软件测试提供帮助。

1.软件白盒测试的作用及效果

做过软件测试的人都了解白盒测试能够准确地产生出测试运用。

例如,这个用例的好处在哪里呢,本文认为其有以下作用:

一是,实现了测试模块中的每个路径都能被测试-次,而且对所有的逻辑值都能调用true和fa1se。

二是,在软件的上下界面以及可操作的范围内可以运行所有的循环,做到测试的全面性。

三是,可以自动检查内部数据的结构性以确保其可以有效的操作。因此,将测试程序当做一一个已经打开的盒子,那么测试人员只需要按照盒子中已经存在的逻辑结构信息,设计相应的测试用例,就可以实现全路径覆盖测试,检查程序的运行状态,从而确定实际状态与预期状态的差距。

与通常的黑盒测试相比较,白盒最显著的优势就是提高了路径代码的覆盖率,在测试中可以及时发现代码中存在的一些不确定问题。

但是,白盒测试缺点也是显而易见的,最主要的就是路径较为复杂,测试不能对每一条路径都测试,测试全部依赖代码,如果设计不够精确,会影响测试的准确度,同时如果系统很庞大,那么测试花费就会很高。

2软件白盒测试分析

2.1精确挑选白盒测试工具

从当前的白盒测试运用方向来看,其运用端主要集中在了军工、航空航天等高精端行业,但是伴随着测试活动的迅速增加,白盒测试的运用范围也开始变得更加多元化,主要是做好对白盒测试软件的选购。在选购中要做到代码深度覆盖、开发语言支持以及测试的全程可视化操作,这样在测试中就能做到安全性。

比如对于开发语言,白盒相对于黑盒主要是对源代码测试,根据测试的需求,要将重点放在静态的错误分析以及动态的测试等。目前,白盒测试支持的开发语言包含了C++、Java等,伴随着软件语言的多种化,支持的语言会越来越多。同时要检查测试硬件工作是否可以支持PCI/VME/CPCI总线等,因此,在选购软件白盒测试工具时,要综合考虑所软件的测试性能和测试标准差等,使测试得到的数据精准化。

2.2白盒基本路径测试法

白盒测试方法是比较丰富的,经常使用的有逻辑覆盖法、静态质量度量法等等,但是基于基础性测试的基本路径测试法是采用最多的测试方法,受到测试者的喜爱。基本路径测试法以程序控制流程图为基础,可以对结构控制的环路进行分析,最后导出局基本的可执行路径的集合,这对于测试用例的实施具有显著的帮助作用。

主要有4个过程:首先,设计出程序控制流程图,对程序的实施流程描述。其次,根据程序环路复杂程度导出程序基本路径,从而解决程序圈的复杂度。再次,对测试用例导出,根据程序结构和复杂度设计用例的输入和输出结果。

最后,将导出的测试用例进行实施,保证基本路径中的每一条路径都被执行,达到测试的整体性。在测试中,我们要将基本路径全部覆盖,在每个分支的汇集处应该有一个汇集点,这样测试数据就能集中反映该点的测试情况,让测试或者程序员一目了然

2.3白盒测试实例分析

结合具体的白盒测试实例,可以让分析过程变得更加合理,因此,在实际测试中,可以根据客户的要求,分别采用语句覆盖、判定覆盖及其设计测试用例。(1)语晌覆盖(StatementCoverage)。

选取足够的测试数据,让测试程序中的每个语句至少执行1次。(2)判定覆盖。判定覆盖主要是用来设计测试用例,保证设计的程序中的所有判定都能获得一次检验的机会,比如“真值”和“假值”,或者是“真”分支或者“假”分支,这样就能使测试比较全面。

使用白盒进行检测时,要经常检查程序中每条通路是否按预定的要求正常工作,要测试所有合法的输入与输出,发现路径或覆盖问题之后,要重新理解程序内部的逻辑结构,以测试所有逻辑路径,该循环对象可以同时在循环边界和运行边界上执行,以满足不同测试的需要。

同时在测试中也要检查未覆盖的白盒单位,这是因为未覆盖的逻辑单位通常对应未测试的等价类,从而找到遗漏的测试用例,让白盒测试做到全面化,实现测试工作的要求。

2.4白盒测试持续改进关键

白盒测试在初始阶段,企业内部只是进行零星的单元测试或集成测试实践,缺乏成功案例。企业测试人员常见对白盒测试缺乏概念,大概了解代码审查、单元测试以及集成测试怎么做,但是涉及到具体的场景时,尤其是模块单元测试或者跨模块、跨子系统实施集成测试时,就会变得无头绪。

伴随着各种测试工具的迅速出现,测试已经不再是测试人员的负担,主动测试也成为了测试工作者的一种态度,而且在流程开发中已经不限于白盒测试。

在持续改进的白盒测试技术中,测试与编程人员要做好沟通交流,积极地设计代码功能,同时在标准允许的情况下人工对设计用例进行设计,对白盒的覆盖率进行统计,从而实现最强的白盒测试能力,在持续改进中,最理想的覆盖率是100%的语句、标准、分支以及路径覆盖。

3结语

综上所述,白盒测试技术在软件测试中运用极为广泛,深受软件测试人员的喜爱,可以依照代码检测软件中的每条路径和分支,及时发现代码中的错误信息,从而达到最优化的测试。但是,白盒测试对遗漏路径测试不足同时数据敏感性也不强,导致测试时需要比对的内容多。

下一步,在软件白盒测试中,测试人员要持续改进测试方法和程序,提高标准覆盖、判定/标准覆盖、标准组合覆盖、修正判定/标准覆盖等测试的比重,从而优化测试路径,提高测试效率。

看了这篇内容后,坚信以下两件事,也会对你的自我提升有一定的帮助:

1、点赞,让更多人能看到,同时你的认可也会鼓励我创作更多优质内容。

2、要让自己变得更强:想想,假如你是要在测试这个行业长期做下去,你的工作经验和测试技术是绝对不够的,你需要提升,你需要丰富你的技术栈!还等什么!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,099评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,828评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,540评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,848评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,971评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,132评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,193评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,934评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,376评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,687评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,846评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,537评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,175评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,887评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,134评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,674评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,741评论 2 351

推荐阅读更多精彩内容