黑盒测试比白盒测试技术要求更高吗?pc软件 文章资讯 手机软件

您当前的位置→图文中心电脑技术黑盒测试比白盒测试技术要求更高吗?

黑盒测试比白盒测试技术要求更高吗?


2013/12/23 13:25:18 编辑:admin 来源:本站整理 

 几个月前我还就在谈论黑盒测试不一定比白盒测试技术含量低, 现就在我却可以能够比较肯定地说, 黑盒测试比白盒测试更难, 技术要求更高。 道理其实非常不复杂, 黑盒, 白盒测试的本质区别就在于源代码的访问权利, 白盒测试具有这种权利, 因此也就具有更多的资源和信息来进行测试, 当然事情就一定会变得容易很多, 而黑盒测试由于不能够看到源代码, 就使得对于白盒测试人员发现的bug, 您要花更多的时间, 并且具有更高的技术才有有可能发现。

  我做黑盒测试已经4年多了, 是一个地地道道的黑盒测试人员, 可是我具有源代码访问的权利, 也就是说, 虽然我是做黑盒测试的, 但是我所拥有的信息并不比白盒测试人员少。 随着我黑盒测试经验和技术的提高, 我突然发现我已经完全依赖与源代码提供的信息了, 如果没有源代码, 我的黑盒测试的工作将会变得复杂很多, 困难很多, 甚者再也不能够实现。 这也让我有了一个强烈的感觉, 就是黑盒测试比白盒测试更难。

  就在Symantec出版的一本书《TheArtofSoftwareSecurityTest》里边就有这个说法。 这本书我觉得一般般, 但是里边体现着这个道理, 就是, “对于白盒测试, 一个公司可以能够组成一个测试队伍来来进行, 而对于黑盒测试, 有可能就很少有公司有这个能力了, 只能去外边聘请专业的公司来作, 这个成本是很高的, 但是是值得的”。

  经常听到有人抱怨“我就在公司是做黑盒测试的, 没什么技术含量, 我的目标就是转到白盒测试”, 我会一直不断觉得这个说法是可以能够质疑的, 也真的希望看了我的这篇文章以后, 一定不要再出现这种声音, 更一定不要再拿它当成我自己不去提高测试技术的一个冠冕堂皇的借口了。

  为什么我们我自己大多数人, 包括以前我我自己都会认为黑盒测试比白盒测试的技术含量低呢?那是因为, 我们我自己绝大多数人都是就在做低端黑盒测试的。 很早以前我就曾想过, 黑客都是可以通过黑盒测试的方法来寻找安全漏洞的, 我们我自己怎么能说黑盒测试技术含量低呢?随着我自己的水平向黑客的方向接近, 我自己也越来越有更深, 更丰富的理解和体会了。

  如果我们我自己把刚进入黑盒测试领域的新人的技术打分为0, 而黑客的技术打分为5的话, 那么根据记录技术水平我有这样一个列表:

  0.测试新手

  1.黑盒手工测试

  2.黑盒全自动化测试

  3.具有白盒测试能力

  4.安全测试

  5.黑客

软件黑盒测试小必备工具(AutoRunner) 3.9.26
AutoRunner是黑盒测试必备工具, 可以能够用来完成功能测试、回归测试、每日构建测试与全自动回归测试等工作。 是具有脚本语言的、提供针对脚本完善的跟踪和调试功能的、`支持IE测试和Windowsnative测...
类别:综合必备工具 大小:89.0 MB 日期:2013-01-24

  大家提醒一定要注意, 很多人把我自己的测试技术的提高依赖于公司, 依赖于team, 依赖于project, 这是不对的。 我本人就在公司的工作内容不过就是黑盒全自动化测试, 可是这并不反应影响我可以能够向更高的方向发展, 现就在internet这么发达, 什么资料不能够去寻找到呢?各种各样的电脑计算机书籍, 网上各种各样的电脑计算机技术交流探讨的论坛, 博客等等。 很多人觉得跳槽, 换个工作我自己就能更好的发展测试技术, 这也是有误区的。 说句实话, 个人发展本质上还是个人的问题, 并不是公司的问题, 或者您的lead, 您的manager的问题, 一个公司既然要您了, 就说明您我自己的能力和水平跟公司对您的要求还是比较接近的, 公司对您已经有一个期望值了, 也就是说您能胜任这份工作了, 而再往上的发展并不属于公司对您的期望了, 绝大多数的情况还是要靠个人的。 因此, 我个人认为, 无论就在任意一个的工作环境, 工作内容的情况, 您都是有技术提高余地的, 但是这事情要由您我自己来drive, 而一定不要太多地依赖外部环境。 我从小到大的学习, 主要是靠自学, 我很少能集中精力地去听完老师的一堂课。 包括现就在, 我很多training都是没听完就走人了, 或者有些签个到就溜。 我的这个性格造就了我很独立的学习能力, 我自己为我自己规划学习, 不知道对大家是否有借鉴作用。

  话说回来, 因为大家对0, 1, 2级别应该都是比较熟悉的, 我想谈谈3, 4, 5级别。

  3.作为一个黑盒测试人员, 没有人会要求您不具备白盒测试能力, 如果您有源代码访问的权利, 那很好, 您完全可以能够利用这个优势, 把可以通过查看源代码得到的信息应用到您的黑盒测试中去。 如果您没有源代码访问的能力, 这也并不能够阻碍您就在这个领域来进行探索和实践。 如果您的项目是Java, .NET这种, 您可以能够反编译, 如果您的项目是C,C++这种, 您可以能够反汇编。 总而言之, 所谓具有白盒测试能力的意思是, 发现一个bug能够定位到代码里, 是什么代码, 为什么产生这个bug?可以能够来进行代码级的测试用例的设计design。 一般来说, 这个级别的要求是具备良好的代码读写的能力。

  4.安全测试与白盒测试的根本区别就在于安全意识, 黑客的思维。 有一本书《WritingSecureCode》里面提到“您可以能够培训一个人具有测试安全feature的能力, 您很难培训一个人具有黑客的思维方式, 如果您发现了这样一个人, 您就Hire他”。 就在这个级别的人要具有良好的安全意识, 知道各种各样的攻击方式, 当发现一个bug的时候要就有安全方面的判断, 比如“是否一个安全漏洞”, “是否能够被黑客利用”, “严重程度怎么才能”, 等等。 同样, 我自己的测试内容里要包含大量的安全测试用例。

  5.黑客级别要求就更高了。 对于安全测试来说, 只是分析到“是否能够被黑客利用”, 而黑客就要分析“怎么才能利用”以及写出攻击代码来进行攻击。 至少对我而言, 他们要具备非常熟练的汇编编程能力。

  以前我认为, 要想来进行安全测试, 或者说做高端测试, 多年的开发经验必不可少, 实践证明也未必。 同理, 要想来进行高端测试, 您也未必要先转向白盒测试。 从我个人的经历来说, 只要您我自己有心, 只要您我自己用心, 您总能发展和提高的, 外部环境固然重要, 但是起决定因素的还是我自己。 安全测试完全不属于我的工作内容与职责, 可是就在一个月的时间里, 我已经连续发现4个安全漏洞了。 如果您就在工作中也能够发现您项目的安全漏洞, 公司还能怎么才能不重视您?


 

相关文章
  • QACenter--软件黑盒测试工具
  • 黑盒测试比白盒测试技术要求更高吗?
  • 发表评论
    阅读排行
    网站帮助 - 广告合作 - 下载声明 - 网站地图