软件测试工具之常用软件测试工具的分析
凌雪 2018-10-09 来源 :网络 阅读 730 评论 0

摘要:本文将带你了解软件测试工具之常用软件测试工具的分析,希望本文对大家学测试工具有所帮助

本文将带你了解软件测试工具之常用软件测试工具的分析,希望本文对大家学测试工具有所帮助


随着软件测试的地位逐步提高,测试的重要性逐步显现,测试工具的应用已经成为了普遍的趋势。目前用于测试的工具已经比较多了,测试工具的应用可以提高测试的质量、测试的效率、减   少测试过程中的重复劳动、实现测试自动化,这些测试工具一般可分为白盒测试工具、黑盒测试工   具、性能测试工具,另外还有用于测试管理的工具,本文对常用的测试工具作一个分析比较。
    1、  白盒测试工具
    白盒测试工具一般是针对代码进行测试,测试中发现的缺陷可以定位到代码级,根据测试工 具原理的不同,又可以分为静态测试工具和动态测试工具。                                                                                                           
      静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接,生成可执行文件。静态测试工具一般是对代码进行语法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等;
    动态测试工具与静态测试工具不同,动态测试工具的一般采用“插桩”的方式,向代   码生成的可执行文件中插入一些监测代码,用来统计程序运行时的数据。其与静态测试工具最大的 不同就是动态测试工具要求被测系统实际运行。
    (1) Jtest
    是一个代码分析和动态类、组件测试工具,是一个集成的、易于使用和自动化的 Java 单元测 试工具。它增强代码的稳定性,防止软件错误。
    (2) Jcontract
    Jcontract 在系统级验证类/部件是否正确工作并被正确使用。Jcontract 是个独立工具,在功 能上是 Jtest 的补充。可以用   Jcontract 插装按 DbC 注解的 Java 代码。当您将类/部件组装成系统 时,Jcontract   在运行时监视并报告错用和功能性问题。Jcontract 帮助每个开发人员有效地考核 类/部件的系统级行为。
    (3) C++ Test
    C++Test 可以帮助开发人员防止软件错误,保证代码的健全性、可靠性、可维护性和可移植性。C++Test 自动测试 C 和 C++类、函数或组件,而无需编写单个测试实例、测试驱动程序或桩调用。
    (4) CodeWizard
    CodeWizard 代码静态分析工具,先进的 C/C++源代码分析工具,使用超过 500 个编码规范
    自动化地标明危险的,但是编译器不能检查到的代码结构。
    (5) Insure++
    Insure++是一个基于 C/C++的自动化的内存错误、内存泄漏的精确检测工具。  Insure++能够   可视化实时内存操作,准确检测出内存泄漏产生的根源。Insure++还能执行覆盖性分析,清楚地指示 那些代码已经测试过。
    (6) .test
    .TEST 是专为.NET 开发而推出的使用方便的自动化单元级测试与静态分析工具。使用超过   200条的工业标准代码规则对所写代码自动执行静态分析。这些规则立即应用.NET 工业专家深入、全面的编程知识到你的代码当中,迅速、彻底地防止错误的出现。自动测试代码构造与功能。    .TEST 非常智能。他能提取刚完成的代码,对其进行读取,并提出如何对这些代码进行单元测试,不需要 任何的人为干涉。所有由.TEST   产生的单元测试都是可以用户自定义的。
    (7) BoundsCheckerBoundsChecker Visual C++ Edition 是针对  Visual   C++开发人员的首选的运行时的错误检 测和调试工具。它通过驻留在  Visual C++ 开发环境内部的自动调试处理程序来加速应用程序的开   发,缩短产品发布的时间。BoundsChecker 对于编程中的错误,大多数是  C++中特有的提供了清晰 的详细的分析。它能够检测和诊断出在静态,堆栈内存中的错误以及内存和资源泄漏问题。在运行   状态下,BoundsChecker 验证超过  8,700 APIs 和  OLE 方法,包括最新的  Windows   APIs, ODBC, ActiveX,DirectX, COM 和  Internet APIs。
    (8) TrueTime
    代码运行缓慢是开发过程中一个重要问题。一个应用程序运行速度较慢,程序员不容易找到 到底是在哪里出现了问题,如果不能解决应用程序的性能将降低并极大的影响应用程序的质量,于     是查找和修改性能瓶颈是调整整个代码性能的关键。如何快速的查找性能瓶颈呢?TrueTime 的出   现就使这个问题变得很容易了。当我们在测试程序时,每完成一次应用话路,TrueTime 都能提供   这次对话中函数的调用时间,提供详细的应用程序和组件性能的分析,并自动定位到运行缓慢的代 码。这样就能帮助程序员尽快地调整应用程序的性能。TrueTime   支持  C++, JAVA, Visual Basic 语言环境。
    (9) FailSafe
    FailSafe 是 Visual Basic 语言环境下的自动错误处理和恢复工具,FailSafe 将插入额外的代   码对你的程序进行插装,当程序执行时,FailSafe 通过这些插装的代码捕获、记录错误信息。
    (10)  Jcheck
    Jcheck 是 DevPartner Studio 开发调试工具的一个组件,他使用事件调试技术,可以收集 Java 程序运行中准确的实时信息。我们在   Java 程序中经常要使用线程,而关于线程的常见错误有死锁、 系统崩溃、同步问题等。JCheck 通过监视和分析当前内存中所有线程的运行状况,找到出错的根   源,并且可以定位到具体是程序中的哪个方法出错,错误位于程序的哪一行。
    (11)  TrueCoverage
    TrueCoverage 是一个代码覆盖率统计工具,在开发过程中,对一个应用程序通过手工测试,   总会有一部分代码功能没有被检测到,或者说逐个检测每一个函数的调用是相当费时间的;未被检 测的代码我们不能保证它的可靠性,以后程序的失败可能往往就是由这部分未检测的代码造成的。   现在我们可以用 TrueCoverage 来帮助我们解决这些问题,我们在测试程序时,每完成一次应用话 路,TrueCoverage   就能够列出在这次对话中所有函数被调用次数、所占比率等,并可以直接定位 到源代码,当然我们也可以合并多个应用话路来进行检测。所以说 TrueCoverage   能通过衡量和跟 踪代码执行及代码稳定性,帮助开发团队节省时间和改善代码可靠性。TrueCoverage 支持 C++, JAVA, Visual   Basic 语言环境。
    (12)  SmartCheckSmartCheck 是针对  Visual Basic   的主要的自动错误检测和调试工具。它能够自动检测和诊断VB 运行时的错误,并将一些表达不清楚的错误信息转换为确切的错误描述。它的EventDebugging   特性为  Visual Basic   开发小组和独立的开发人员解决最棘手的问题提供了简便的方法。它可以进行致命错误的分析、兼容性检查、定位到源代码。不是  Visual Basic   中所有的问题都是运行时或系统的错误。许多的问题来自于未预期的程序 流程的结果。如果没有    EventDebugging,将问题分离出来是相当困难,甚至不可能的。当简单的   动作比如设置控件的属性发生时,会触发一些编程人员想象不到的事件的发生,从而使的错误检测 和调试边的更加复杂。SmartCheck   显示使用时的属性,方法和事件以便于将这些事件驱动的问题 隔离出来。SmartCheck EventDebugging   跟踪事件以简化错误的定位。举个例子,SmartCheck 在 事件被设置或只读时将其方法和属性全部显示,连同由这些事件触发的形式。
    (13)  CodeReview对于 Visual Basic 开发人员来说,CodeReview 是最好的自动源代码分析工具,它对应用程序   的组件、逻辑、Windows 和 Vb 自身潜在的数百个问题进行严格地源代码检查。CodeReview 分析的 类型包括 Y2K   问题,逻辑错误,应用程序性能和可用性问题,Windows API 调用和标准一致性问题 等。可以检测整个的 VB   工程或指定的模块,并能定制检错的种类;对检测的结果有详细的说明, 提供帮助和推荐解决方案,而且能够直接的链接到源代码。CodeReview   系统还提供了两个子模块, 一个是 Metrics:通过对 VB 工程(vbp)的执行,计算出代码的长度、复杂度、理解度、语言的使   用等级、出错的可能性等数据;另一个是 Namer:它调用一个 VB 工程,自动并规则地对其中的对   象重新命名,并备份原来没有规则命名的工程文件,使开发人员对程序能够有条理地管理。
     (2)  Astra Quicktest
    2、黑盒测试工具
    黑盒测试工具适用于黑盒测试的场合,黑盒测试工具包括功能测试工具和性能测试工具。黑盒   测试工具的一般原理是利用脚本的录制(Record)/回放(Playback),模拟用户的操作,然后将被测   系统的输出记录下来同预先给定的标准结果比较。黑盒测试工具可以大大减轻黑盒测试的工作量, 在迭代开发的过程中,能够很好地进行回归测试。
    (1)  WinRunner
    Mercury Interactive 公司的 WinRunner 是一种企业级的功能测试工具,用于检测应用程序   是否能够达到预期的功能及正常运行。通过自动录制、检测和回放用户的应用操作,WinRunner 能   够有效地帮助测试人员对复杂的企业级应用的不同发布版进行测试,提高测试人员的工作效率和质   量,确保跨平台的、复杂的企业级应用无故障发布及长期稳定运行。
    企业级应用可能包括 Web 应用系统,ERP 系统,CRM 系统等等。这些系统在发布之前,升级   之后都要经过测试,确保所有功能都能正常运行,没有任何错误。如何有效地测试不断升级更新且 不同环境的应用系统,是每个公司都会面临的问题。    如果时间或资源有限,这个问题会更加棘手。 人工测试的工作量太大,还要额外的时间来培训新的测试人员等等。为了确保那些复杂的企业级应   用在不同环境下都能正常可靠地运行,你需要一个能简单操作的测试工具来自动完成应用程序的功 能性测试,WinRunner 能够做到这点。
    (2)  Astra Quicktest
    (3)  Robot
    Robot 是 IBM Rational 公司的功能测试工具,通过 Script 自动模拟输入输出。
    (4)  QARun
    QARun 是 Compuware 公司的软件功能测试工具,为客户/服务器、电子商务到企业资源计划提   供重要的商务功能测试。通过将耗时的测试脚本开发和执行任务自动化,QARun 帮助测试人员和 QA   管理人员更有效地工作,以加速应用开发,它提供快速、有效地创建和执行测试脚本,验证测试并   分析测试结果的功能。它能够通过加快运行周期来保持测试同步,提高测试投资回报和质量,该工 具的功能有:创建测试和执行测试、测试验证、 测试结果分析、   可改进的数据函数、广泛的支持、 集中式知识库、网站分析、智能化测试脚本、自动同步。
    (5)  SilkTest
    SilkTest International 是 Segue 公司的标准的、面向多语种企业级应用的功能和回归测试 工具。    让用户能跨语种、跨平台和跨 Web 浏览器,高效率地进行各种类型的应用可靠性测试。
    (6)  e-Test
    e-Test 是 Empirix 公司的软件功能测试工具,功能很强大,由于不是采用 Post URL 的方式回   放脚本,所以可以支持多内码的测试数据(当然要程序支持)。基本上可以应付大部分的 Web Site。
    (7)  WAS
    Microsoft 的 Web Application Stress Tool(WAS,Web 应用负载测试工具)是 Microsoft 的   可以免费下载的软件性能测试工具。WAS 要求 Windows NT 4.0 SP4 或者更高,或者 Windows 2000。   为了对网站进行负载测试,WAS 可以通过一台或者多台客户机模拟大量用户的活动。WAS 支持身份 验证、加密和 Cookies,也能够模拟各种浏览器类型和   Modem 速度,它的功能和性能可以与数万美 元的产品相媲美。WAS 只能用于 B/S 构架的软件性能测试。
    (8)  LoadRunner
    LoadRunner 是 MI 公司的预测系统行为和性能的负载测试工具,它通过以模拟上千万用户实施   并发负载及实时性能监测的方式来确认和查找问题。LoadRunner 是一种适用于各种体系架构的自 动负载测试工具,它能预测系统行为并优化系统性能。LoadRunner   的测试对象是整个企业的系统,它 通 过 模 拟 实 际 用 户 的 操 作 行 为 和 实 行 实 时 性 能 监 测, 来 帮 助您 更 快 的 查 找   和发 现 问题 , LoadRunner 能支持广范的协议和技术。
    (9)  Qaload
    QALoad 是 Compuware公司开发的并发性能压力测试工具。软件针对各种测试目标提供了 MS SQL Server、    Oracle、ODBC、WWW、NetLoad、Winsock 等不同的测试接口(Session),应用范围相当 广泛。例如在测试基于 C/S   运行模式、客户端通过 DBLib 访问服务器端 SQLServer 数据库的系统时, QALoad   通过模拟客户端大数据量并发对服务器端进行查询、更新等操作,从而达到监控系统并发性能和服务器端性能指标的目的。
    (10) Webload
    Webload 是 RadView 公司推出的一个性能测试和分析工具,它让 web 应用程序开发者自动执行 压力测试;webload 通过模拟真实用户的操作,生成压力负载来测试    web 的性能用户创建的是基于 javascript 的测试脚本,称为议程 agenda,用它来模拟客户的行为,通过执行该脚本来衡量 web   应用 程序在真实环境下的性能。webload 提供巡航控制器 cruise control   的功能,利用巡航控制器,可以预定义 web 应用程序应该满足的性能指标,然后测试系统是否满足这些需求指标;cruise control   能够自动把负载加到 web 应用程序,并将在此负荷下能够访问程序的客户数量生成报告,webload 能够在测试会话执行期   间对监测的系统性能生成实时的报告,这些测试结果通过一个易读的图形界面显示出来,并可以导 出到 excel 和其他文件里。
    (11) Silkperformer
    SilkPerformer 是业界最先进的企业级负载测试工具,和  Loadrunner 是同种类型的测试工   具。它能够模拟成千上万的用户在多协议和多种计算环境下工作。SilkPerformer 可以让你在使用 前,就能够预测企业电子商务环境的行为—不受电子商务应用规模和复杂性影响。可视化的用户化、   负载条件下可视化的内容校验、实时的性能监视和强大的管理报告可以帮助您迅速将问题隔离,这   样,通过最小化测试周期、优化性能以及确保可伸缩性,加快了投入市场的时间,并保证了系统的 可靠性。
    (12) OpenSTA
    OpenSTA 是专用于 B/S 构架的、免费的性能测试工具。它的优点除了免费、源代码开放的优   点外,还能对录制的测试脚本进行,按指定的语法进行编辑。测试工程师在录制完测试脚本后,只 需要了解该脚本语言的特定语法知识,就可以对测试脚本进行编辑,以便于再次执行性能测试时获   得所需要的参数,之后进行特定的性能指标分析。OpenSTA 以最简单的方式让大家对性能测试的原   理有较深的了解,其较为丰富的图形化测试结果大大提高了测试报告的可阅读性。
    3、其他测试工具
    除了上述的测试工具外,还有一些专用的测试工具,例如,针对数据库测试的 TestBytes,对 应用性能进行优化的 EcoScope   等工具。
    4、测试管理工具
     测试管理工具用于对测试进行管理。一般而言,测试管理工具对测试计划、测试用例、测试实施进行管理,并且,测试管理工具还包括对缺陷的跟踪管理    

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标软件测试之测试工具频道。

本文由 @凌雪 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程