• 软件自动化测试


    http://www.cnitblog.com/Lily/archive/2006/09/18/16982.html

    软件工程的测试阶段是软件开发过程中工作量最大的阶段之一,随着软件测试工作日益得到重视,测试工具的应用已经成为普遍趋势。测试工具一般可分为白盒测试工具、黑盒测试工具、性能测试工具,别外还有用于测试管理(测试流程管理、缺陷跟踪管理、测试用例管理)的工具。其他测试工具(专用测试测试,如针对数据库测试的工具,对应用性能进行优化的工具等)。

    表格 测试工具

    工具类型

    描述

    测试过程生成器

    根据需求 / 设计 / 对象模型生成测试过程

    代码(测试)覆盖率分析器和代码测量器

    确定未经测试的代码和支持动态测试

    内存泄漏检测

    用来确认应用程序是否正确地管理了它的内存资源

    度量报告工具

    读取源代码并显示度量信息,例如数据流、数据结构和控制流的复杂度。能够根据模块、操作数、操作符和代码行的数量提供代码规模的度量

    可使用性测量工具

    用户配置、任务分析、制作原型和用户走查

    测试数据生成器

    产生测试数据

    测试管理工具

    提供某些测试管理功能,例如:测试过程的文档化和存储,以及测试过程的可追踪性

    网络测试工具

    监视、测量、测试和诊断整个网络的性能

    GUI 测试工具(记录 / 回放工具)

    通过记录用户与在线系统这间的交互,使 GUI测试自动化,这样它们可以被自动回放

    负载、性能和强度测试工具

    用于负载 / 性能 / 强度测试

    专用工具

    针对特殊的构架或技术进行专门测试的测试工具,例如:嵌入式系统

    测试工具的选择

    建议从以下几个方面来权衡和选择

    1. 功能

    除了测试工具所提供的基本功能外,还可参考其它的功能需求,如报表功能、测试工具的集成能力、操作系统和开发工具的兼容性。

    2. 价格

    自主制作一个工具

    有些情况下,我们需要自己制作测试工具:

    l         操作系统不兼容:市场上没有现成的工具与正在使用的各种操作系统兼容,所以需要考虑制作一个在专门的测试环境下运行的定制工具。例如: Linux 下的消耗 CPU 的工具。

    l         应用程序不兼容:正在测试的应用程序包含一个特殊元素,如一个自定义的控件或第三方插件,它和市场上存在的任何记录 / 回放工具都不兼容。例如:公司产品:录像播放器。

    l         专项测试的需要:为了取得最佳的测试效果,以便对不能使用 GUI 测试工具的,复杂的和关键的组件进行自动测试。例如: agent 报文捕获率的测试。

    自动测试:选择最好的实践

    不要过分依赖记录 / 回放工具。

    功能性测试工具(也称为记录 / 回放工具),只是无数可供利用的测试工具中的一种。记录 / 回放机制能够增强测试工作的效果,但是我们不应该只使用这一种自动测试方法。即使使用最好的记录 / 回放自动测试技术,它们还是有局限性。

    1 )硬编码的数值。

    2 )非模块化的、不易维护的脚本。

    3 )缺乏可重用性的标准。

    尽量使回归测试自动化

    回归测试确定的是:在修改先前的错误或者向应用程序添加新功能时,是否引放了新的错误,这些错误影响以前运行正常的功能。回归测试应该发现这些新引入的缺陷。

    了解自动测试工具对测试工作的影响

    自动测试工具只是解决方案的一部分,它们不能解决所有测试工作中的问题。自动测试工具决不能代替指导测试工作的分析技能,也不能替代手工测试。我们必须把自动测试看作是对手工测试过程的补充。

    自动化测试可以帮助测试人员做到:

    ( 1 )提高测试执行的速度;

    ( 2 )提高运行效率;

    ( 3 )保证测试结果的准确性;

    ( 4 )连续运行测试脚本;

    ( 5 )模拟现实环境下受约束的情况。

    自动化测试不能做到的是:

    ( 1 )所有测试活动都可以自动完成;

    ( 2 )减少人力成本;

    ( 3 )毫无成本的得到;

    ( 4 )降低测试的工作量。

    Windows 脚本

    脚本试用与演示 .vbs

    ' 创建新文件夹

    ' 描述 : 使用 Shell 对象创建名为 C:Archive 的新文件夹。

    ParentFolder = "C:"

    set objShell = CreateObject("Shell.Application")

    set objFolder = objShell.NameSpace(ParentFolder)

    objFolder.NewFolder "Archive"

    ' 创建文本文件

    ' 描述 : 演示脚本创建一个新的空文本文件。此脚本必须运行在本地计算机上。

    Set objFSO = CreateObject("Scripting.FileSystemObject")

    Set objFile = objFSO.CreateTextFile("C:ArchiveScriptLog.txt")

    ' 检验文件是否存在

    ' 描述 : 演示脚本使用 FileSystemObject 检验文件是否存在。此脚本必须运行在本地计算机上。

    Set objFSO = CreateObject("Scripting.FileSystemObject")

    If objFSO.FileExists("C:ArchiveScriptLog.txt") Then

        'Set objFolder = objFSO.GetFile("C:ArchiveScriptLog.txt")

        Wscript.Echo "File C:ArchiveScriptLog.txt 存在 ."

    Else

        Wscript.Echo "File does not exist."

    End If

    附:测试工具介绍

    IBM rational 测试工具:

    测试缺陷管理工具 ClearQuest

    性能测试工具: Rational Performance Tester ( TestManager 、 Robot )

    功能测试工具: Functional Tester ( Test XDE )

    单元测试工具: IBM/Rational PurifyPlus

    – Purify :白盒测试工具,自动定位内存相关错误

    – Quantify :白盒测试工具,用于性能瓶颈分析

    – Pure Coverage :白盒测试工具,记录代码覆盖率。发现未被测试的代码

    – TestFactory :可靠性测试

    – Robot  自动测试工具,类似 WINRUNNDER ,加上 VT 可以做并发测试

    – TestManager      测试计划制定及执行工具

    Mercury 测试工具

    功能测试: WinRunner  , LoadRunner , TestDirector

    开源工具

    测试框架: Junit 、 NUnit 、 HttpUnit 、 CppUnit

    性能测试: JMeter

    测试覆盖率工具: clover.net

    参考文献:

    《软件评测师考试考点分析与真题详解》 — 电子工业出版社

    《有效软件测试 — 提高软件测试的 50 条建议》 — 清华大学出版社

    《系统分析师常用工具》 — 清华大学出版社

  • 相关阅读:
    使用.NET发送EMail小程序示例
    Log4Net使用手册
    深入继承之抽象类和接口综合分析及完整案列解说(二)
    Prototype 1.4.0源码详细解释脚本代码全文注释
    深入继承之抽象类和接口综合分析及完整案列解说(一)
    关于如何理解 not exists 的好比喻 not exists = not in;exists= in
    一些直接访问 的 外国 SCI 期刊地址
    ∩∈∪≠ 制作PPT 时 数学符号
    Can I make a userdefined function/procedure to return a result set
    IN适合于外表大而内表小的情况;EXISTS适合于外表小而内表大的情况
  • 原文地址:https://www.cnblogs.com/chengxuyuandashu/p/3561622.html
Copyright © 2020-2023  润新知