本地化测试工具HtmlQA的应用

发表于 2012-05-06 11:33 浏览次数:995 views 来源:

 

    Html 文件是常用的文件格式,很多软件的联机帮助都是一系列 Html 文件组成的。另外,网站本地化测试经常要测试本地化的 Html 文件。 HtmlQA 就是用于测试本地化 Html 文件的通用工具之一。
1.简介
   HtmlQA 是 SDL International(思迪)公司针对软件本地化行业开发的商业工具,用于测试源语言和本地化语言的项目文件 的本地化质量,每个项目文件包含一系列 Html 文件。HtmlQA 可以执行一系列本地化 Html 文件检查,确定本地化的 Html 文件与源语言对应的 Html 文件具有一致的功能。
   经过本地化翻译的 Html 文件经常会产生影响文档系统功能的缺陷。例如删除或增加了链接、格式标识符,遗 漏图像引用( Reference),未翻译的文字等。 HtmlQA 对源语言和本地化语言的两个 Html 项目文件执行一致性完整检查,确保本地化项目与源语言项目的功能保持一致。
2.安装和运行
    现在使用最多的是 HtmlQA1.4 ,它有两种运行模式:演示模式和全功能模式。默认安装后是演示模式,只 能打开有限数量的文件,对于打开的文件大小也受限制。全功能模式需要购买许可文件 (License) 和 / 或硬件加密锁 (Dongle) 。
    HtmlQA1.4 的安装非常简单,双击安装文件“ HtmlQA_v1_4_FSL.exe ”,然后根据屏幕提示即可完成。
    HtmlQA1.4 安装后,在 Windows 的桌面上自动创建一个快捷方式,双击此快捷方式,可以运行 HtmlQA1.4 ,运行界面如下图所示:

    HtmlQA1.4 的运行程序窗口包括四个标签:“ Source ”、“ Target ”、“ Project Compare ”和“ Configuration ”,分别完成不同的功能,下面介绍本地化测试中的常见操作方法。
3.打开项目文件
    在使用 HtmlQA1.4 进行任何比较和测试之前,首先需要打开包含一系列源语言和本地化 Html 文件的项目文件。操作步骤如下:

  • 运行 HtmlQA1.4 ;
  • 从“ Source ”标签,单击“ File ” > “ Open Project ”;
  • 选择并打开一个扩展名为“ prj ”或“ hhp ” 项目文件。

打 开项目文件后的界面如下图所示:

4.项目比较
使用 HtmlQA1.4 进行 Html 文件的本地化测试主要是在“ Project Compare ”标签页面完成的。
    “ Project Compare ”标签页面的左边分成两个部分:“ Compare ”和“ Visual Compare ”。“ Compare ”是本地化测试最经常使用的部分,因此,需要详细介绍。
    在“ Compare ”部分,包括 6 个按钮,每个按钮可以测试 Html 文件的特定类型的错误。
下面分别介绍这些按钮的测试功能:

  • Links (URLs)
    • 这个按钮检查和 测试源语言和本地化文件包含 URL 引用 (References) 的标识 (Tags) 属性的一致性。
  • Images
    • 这个按钮检查和测试源语言项目出现的图像也出现在目标语 言项目中。
  • Untranslated Text
    • 这个按钮查看未翻译的 Html 文件的主体 (Body) 文本和属性 (Attribute) 文本。
  • Formatting
    • 这个按钮检查和测试源语言和目标语言文件的特定 标识和标识的数量。逐个比较源语言文件和目标语言文件的标识数量,如果数量不同,则在错误列表视图控件中显示出来。
  • Inconsistencies
    • 这个按钮验证和测试相同 URL 的链接(或“锚 (Anchor) ”)文字在目标语言 URL 的各处链接中都保持一致。
  • Group Verify
    • “ Group Verify ”按钮可以执行全部或多项上述条目的测试,如下图所示:

5.保存测试报告结果
    HtmlQA1.4 不仅可以包测试结果显示在右边的列表视图控件中,还可以保存到结果文件,以便以后查看、打印和分发。
    单击“ Save Report ”按钮,输入文件名可以保存上述测试结果,保存的文件类型可以是 html 或 txt 格式。
    下图是保存的 html 格式的测试结果文件在浏览器中打开后的部分内容。 HtmlQA 对测试发现的每个问题按行显示,包括错误的位置,问题描述和标识内容。本地化测试人员可以逐条分析和判断哪些结果属于真正的缺陷,并且报告到缺陷跟踪数据库中。

    HtmlQA 1.4 还包括很多其它的辅助功能,可以单击“ Source ”或“ Target ”标签页面的“ Tools ”按钮,选择不同的功能。由于这些功能在本地化测试中应用较少,在此不再一一介绍。

测试新人快速入职宝典

发表于 2012-05-06 11:32 浏览次数:1,724 views 来源:

新人要学习的东西很多,先学什么后学什么?该如何分配?这是新人指南知识沉淀中整理出来的,大家可参考下:业务、技能、工具、流程……很多培训,它们之间哪个是我该首先掌握的?

    1、业务方面

    你所在业务线的业务知识,肯定是重点。每位新人来后,都会被分配到不同的组,不同的组其业务重点也不相同。建议新人可以在测试环境下实际操作下。

    把握当前工作的重点:虽然你处于某一条业务线,每条业务线的业务知识也是很多的,要和tl沟通,明确自己以后的工作重点。先从当前工作的重点开始,一点带面,逐渐掌握业务

    2、技能

    不同的新人技能要求也不一样。淘宝网将其分为多种测试类型:功能测试、性能测试、自动化测试、接口测试、安全性测试。

    每位新人要根据自己“入职时主管对你的定位”+“目前的优势”+“自己打算将来的发展方向”选择不同的技能提高。

    因为市面上的技能何其多,要塑造自己的优势。

    3、工具

    工具方面总体来说,跟技能是相同的。

    另外还要考虑公司需要的工具,以后要推广的工具。现在淘宝网已用ruby取代了QTP的自动化测试。

    4、流程

    查看流程规范。最重要的2个流程,就是“项目测试流程”和“日常测试流程”。

    我觉得还有比较重要的是注意发布流程的相关约定,比如周二或周四发布要在什么时间确保提交测试、什么时间预发布测试。

    对于新人,在项目中实践,通过执行别人写的用例,可以很快的体会测试的思想,掌握一些测试的基本方法。但自己编写TC,从UC提取TC,确实还需要一定时间的锻炼。

    记得刚开始的时候,从头到尾的看完UC,很多规则,脑袋看得晕乎乎的,TC的也是像抓图似的,抓了这块忘了那块。经过一段时间的练习,我逐渐掌握了较为系统的测试用例的编写方法,现把自己的一点体会总结下:

    1、在测试之前,要熟读prd和UC,深入的挖掘UC,对于新增的业务,如果对之前的老业务不了解,那么一定要找出相应的资料了解下其中的规则。可以参照 自己所在产品线业务的mm图,熟悉整个业务框架。对于自己不明确的地方,UC上没有指出来的,记录下来,以便在UC评审的时候提出,及时的得到解答。

    2、根据UC编写TC。多参照QC里写的好的用例,对照着UC,会收获很多。目前各产品线也在总结一些公用控件的测试用例,为以后的测试形成规范和指导。

    3、还需要理论结合实践。测试用例的设计方法如:等价类划分、边界值分析、因果图法、判定表法等,结合相应的实例来学习会比较快的理解。

    4、BUG的经验总结,每周周会我们社区组成员都会分享这周发现的经典bug,并记录在cf上,彼此共同进步,感觉很好。也可以多看看站点上整理的经典bug,开拓自己发现bug的思路。

    刚进入这个行业,一切还不熟悉,但身边这么多热心的有经验的人,主动与他们交流,向他们请教自己心中的疑惑,自己平时多做总结,你会在不知不觉中提高自己的测试技术。

测试工具:Bugzilla简明使用手则

发表于 2012-05-06 11:31 浏览次数:1,840 views 来源:

 

  1      简介:
Bugzilla是Mozilla公司向我们提供的一个开源的免费缺陷跟踪工具。作为一个产品缺陷的记录及跟踪工具,它能够为你建立一个完善的Bug跟 踪体系,包括报告Bug、查询Bug记录并产生报表、处理解决、管理系统初始化和设置四部分。并具有如下特点:
●       基于Web方式,安装简单、运行方便快捷、管理安全。
●      有利于缺陷的清楚传达。本系统使用数据库进行管理,提供全面 详尽的报告输入项,产生标准化的Bug报告。提供大量的分析选项和强大的查询匹配能力,能根据各种条件组合进行Bug统计。当错误在它的生命周期中变化 时,开发人员、测试人 员、及管理人员将及时获得动态的变化信息,允许你获取历史纪录,并在检查错误的状态时参考这一记录。
●      系统灵活,强大的可配置能力。Bugzilla工具可以对软件产品设定不同的模块,并针对不同的模块设定开发人员 和测试人员;这样可以实现提交报告时自动发给指定的责任人;并可设定不同的小组。设定不同的用户对Bug记录的操作权限不同,可进行有效的控制管理。允许 设定不同的严重程度和优先级,可以在错误的生命期中管理错误,从最初的报告到最后的解决,都有详细的记录,确保了错误不会被忽略,同时,可以让开发人员将 注意力集中在优先级和严重程度高的错误上。
●       自动发送Email通知相关人员。根据设定的不同责任人,自动发送最新的动态信息,有效的帮助测试人员和开发人员进行沟通。
2      Bugzilla操作流程:

2.1   用户登录及设置流程:

●      打开浏览器,输入Bugzilla服务器地址:http://server/bugzilla/
●      进入主页面后,点击【新建帐号】,进入注册页面。
●      在注册页面中输入E-Mail地址和用户代号,然后,点击【Create Account】,随后,你将收到一封包含初始密码的E-Mail。
●      在收到E-Mail之后,点击【登录】,在帐号栏输入注册时使用的E-Mail地址,在密码栏输入邮件里通知的初始密码,然后,点击【Login】。
●      如忘记密码,在登陆页面中输入注册用户名,点击【Submit Request】,根据收到的邮件进行重新设置密码。
●      如果成功登录后,点击【Edit属性】->【帐号设置】,进行密码修改。
●      点击【Edit属性】->【邮件设置】,进行邮件通知设置。
●      点击【Edit属性】->【权限】,进行权限查询。
2.2   Bug的处理流程概述:
●      测试人员或开发人员发现bug后,判断属于哪个模块的问题,填写bug报告后,通过Email通知项目组长或直接通知开发者。
●      项目组长根据具体情况,重新reassigned分配给bug所属的开发者。
●      开发者收到E-Mail信息后,判断是否为自己的修改范围。
A.      若不是,重新reassigned分配给项目组长或应该分配的开发者;
B.      若是,进行处理,resolved并给出解决方法。(可创建补丁附件及补充说明);
●       测试人员查询开发者已修改的bug,进行重新测试。(可创建test case附件)
A.      经验证无误后,修改状态为VERIFIED。待整个产品发布后,修改为CLOSED。
B.      还有问题,REOPENED,状态重新变为“New",并发邮件通知。
●       如果这个BUG一周内一直没被处理过。Bugzilla就会一直用E-Mail骚扰它的属主,直到采取行动为止。

精彩人生,从这里启程

发表于 2012-05-06 11:30 浏览次数:2,922 views 来源:

  我是新科海学校网页美术设计班刘坤,我已经在一家图书公司工作两个多月了。时光流逝,岁月如梭,一转眼离开新科海已经3个月了,工作也已经2个半月了。回想开学之时,我们入学的情景还历历在目,大家来自全国各地,同学当中有学校刚毕业的,也有工作过一段时间的。但是我们每个人都有同一个目标就是通过新科海网页美术设计师班培训,能够找到一份跟设计相关的工作,并通过自己的努力成为一名合格的设计师,从而实现自己的设计梦想。

购买新书如何付款

发表于 2012-05-06 11:28 浏览次数:4,212 views 来源:

淘宝网购买:店铺网址http://shop36158912.taobao.com/

银行电汇:

开户行:中国工商银行
收款人名称:孙亚刚
帐号:9558800200148837921

开户行:中国邮政储蓄银行
收款人姓名:孙亚刚
卡号:6221881000070100045

软件测试步骤

发表于 2012-05-06 11:25 浏览次数:2,153 views 来源:



软件测试步骤

测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试及发版测试。

开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。


集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。
确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。
系统测试把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。
单元测试 (Unit Testing)
单元测试又称模块测试,是针对软件设计的最小单位程序模块,进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错。
单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。
1.
单元测试的内容
在单元测试时,测试者需要依据详细设计说明书和源程序清单,了解该模块的I/O条件和模块的逻辑结构,主要采用白盒测试的测试用例,辅之以黑盒测试 的测试用例,使之对任何合理的输入和不合理的输入,都能鉴别和响应。

(1) 模块接口测试
在单元测试的开始,应对通过被测模块的数据流进行测试。测试项目包括:
调用本模块的输入参数是否正确;
本模块调用子模块时输入给子模块的参数是否正确;
全局量的定义在各模块中是否一致;

•     在做内外存交换时要考虑:

文件属性是否正确;
–   OPEN
CLOSE语句是否正确;
缓冲区容量与记录长度是否匹配;
在进行读写操作之前是否打开了文件;
在结束文件处理时是否关闭了文件;
正文书写/输入错误,
–   I
O错误是否检查并做了处理。

(2) 局部数据结构测试
不正确或不一致的数据类型说明
使用尚未赋值或尚未初始化的变量
错误的初始值或错误的缺省值
变量名拼写错或书写错
不一致的数据类型
全局数据对模块的影响
(3)
路径测试
选择适当的测试用例,对模块中重要的执行路径进行测试。
应当设计测试用例查找由于错误的计算、不正确的比较或不正常的控制流而导致的错误。
对基本执行路径和循环进行测试可以发现大量的路径错误。
(4)
错误处理测试
出错的描述是否难以理解
出错的描述是否能够对错误定位
显示的错误与实际的错误是否相符
对错误条件的处理正确与否
在对错误进行处理之前,错误条件是否已经引起系统的干预等
(5)
边界测试
注意数据流、控制流中刚好等于、大于或小于确定的比较值时出错的可能性。对这些地方要仔细地选择测试用例,认真加以测试。
如果对模块运行时间有要求的话,还要专门进行关键路径测试,以确定最坏情况下和平均意义下影响模块运行时间的因素。

2. 单元测试的步骤
模块并不是一个独立的程序,在考虑测试模块时,同时要考虑它和外界的联系,用一些辅助模块去模拟与被测模块相联系的其它模块。
驱动模块 (driver)
桩模块 (stub) ── 存根模块

如果一个模块要完成多种功能,可以将这个模块看成由几个小程序组成。必须对其中的每个小程序先进行单元测试要做的工作,对关键模块还要做性能测试。
对支持某些标准规程的程序,更要着手进行互联测试。有人把这种情况特别称为模块测试,以区别单元测试。
集成测试(Integrated Testing
集成测试 (集成测试、联合测试)
通常,在单元测试的基础上,需要将所有模块按照设计要求组装成为系统。这时需要考虑的问题是:
在把各个模块连接起来的时侯,穿越模块接口的数据是否会丢失;
一个模块的功能是否会对另一个模块的功能产生不利的影响;

各个子功能组合起来,能否达到预期要求的父功能;
全局数据结构是否有问题;
单个模块的误差累积起来,是否会放大,从而达到不能接受的程度。
在单元测试的同时可进行集成测试,
发现并排除在模块连接中可能出现
的问题,最终构成要求的软件系统。

•    子系统的集成测试特别称为部件测试,它所做的工作是要找出集成后的子系统与系统需求规格说明之间的不一致。
通常,把模块集成成为系统的方式有两种
一次性集成方式
增殖式集成方式

1. 一次性集成方式(big bang)
它是一种非增殖式组装方式。也叫做整体拼装。
使用这种方式,首先对每个模块分别进行模块测试,然后再把所有模块组装在一起进行测试,最终得到要求的软件系统。

2. 增殖式集成方式
这种集成方式又称渐增式集成
首先对一个个模块进行模块测试,然后将这些模块逐步组装成较大的系统
在集成的过程中边连接边测试,以发现连接过程中产生的问题
通过增殖逐步组装成为要求的软件系统。

(1) 自顶向下的增殖方式
这种集成方式将模块按系统程序结构,沿控制层次自顶向下进行组装。
自顶向下的增殖方式在测试过程中较早地验证了主要的控制和判断点。
选用按深度方向组装的方式,可以首先实现和验证一个完整的软件功能。

(2) 自底向上的增殖方式
这种集成的方式是从程序模块结构的最底层的模块开始集成和测试。
因为模块是自底向上进行组装,对于一个给定层次的模块,它的子模块(包括子模块的所有下属模块)已经组装并测试完成,所以不再需要桩模块。在模块的 测试过程中需要从子模块得到的信息可以直接运行子模块得到。

•    自顶向下增殖的方式和自底向上增殖的方式各有优缺点。
一般来讲,一种方式的优点是另一种方式的缺点。
(3)
混合增殖式测试
衍变的自顶向下的增殖测试
首先对输入/输出模块和引入新算法模块进行测试;
再自底向上组装成为功能相当完整且相对独立的子系统;
然后由主模块开始自顶向下进行增殖测试。

自底向上-自顶向下的增殖测试
首先对含读操作的子系统自底向上直至根结点模块进行组装和测试;
然后对含写操作的子系统做自顶向下的组装与测试。
回归测试
这种方式采取自顶向下的方式测试被修改的模块及其子模块;
然后将这一部分视为子系统,再自底向上测试。
关键模块问题
在组装测试时,应当确定关键模块,对这些关键模块及早进行测试。
关键模块的特征:
满足某些软件需求;
在程序的模块结构中位于较高的层次(高层控制模块);
较复杂、较易发生错误;
有明确定义的性能要求。

确认测试(Validation Testing
确认测试又称有效性测试。任务是验证软件的功能和性能及其它特性是否与用户的要求一致。
对软件的功能和性能要求在软件需求规格说明书中已经明确规定。它包含的信息就是软件确认测试的基础。

1. 进行有效性测试(黑盒测试)
有效性测试是在模拟的环境 (可能就是开发的环境) 下,运用黑盒测试的方法,验证被测软件是否满足需求规格说明书列出的需求。
首先制定测试计划,规定要做测试的种类。还需要制定一组测试步骤,描述具体的测试用例。

通过实施预定的测试计划和测试步骤,确定
软件的特性是否与需求相符;
所有的文档都是正确且便于使用;
同时,对其它软件需求,例如可移植性、兼容性、出错自动恢复、可维护性等,也都要进行测试

在全部软件测试的测试用例运行完后,所有的测试结果可以分为两类:
测试结果与预期的结果相符。这说明软件的这部分功能或性能特征与需求规格说明书相符合,从而这部分程序被接受。
测试结果与预期的结果不符。这说明软件的这部分功能或性能特征与需求规格说明不一致,因此要为它提交一份问题报告。
2.
软件配置复查
软件配置复查的目的是保证

a 软件配置的所有成分都齐全;

b各方面的质量都符合要求;

c具有维护阶段所必需的细节;

d而且已经编排好分类的目录。

应当严格遵守用户手册和操作手册中规定的使用步骤,以便检查这些文档资料的完整性和正确性。

验收测试(Acceptance Testing
在通过了系统的有效性测试及软件配置审查之后,就应开始系统的验收测试。
验收测试是以用户为主的测试。软件开发人员和QA(质量保证)人员也应参加。
由用户参加设计测试用例,使用生产中的实际数据进行测试。

在测试过程中,除了考虑软件的功能和性能外,还应对软件的可移植性、兼容性、可维护性、错误的恢复功能等进行确认。
确认测试应交付的文档有:
确认测试分析报告
最终的用户手册和操作手册
项目开发总结报告。

系统测试(System Testing
系统测试,是将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其它系统元素结合在一起, 在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。
系统测试的目的在于通过与系统的需求定义作比较, 发现软件与系统的定义不符合或与之矛盾的地方。

α测试和β测试
在软件交付使用之后,用户将如何实际使用程序,对于开发者来说是无法预测的。
•    α
测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。

•     α测试的目的是评价软件产品的FLURPS(即功能、局域化、可使用性、可靠性、性能和支持)。尤其注重产品的界面和特色。
•     α
测试可以从软件产品编码结束之时开始,或在模块(子系统)测试完成之后开始,也可以在确认测试过程中产品达到一定的稳定和可靠程度之后再开始。

•     β测试是由软件的多个用户在实际使用环境下进行的测试。这些用户返回有关错误信息给开发者。
测试时,开发者通常不在测试现场。因而,β测试是在开发者无法控制的环境下进行的软件现场应用。
β测试中,由用户记下遇到的所有问题,包括真实的以及主观认定的,定期向开发者报告。

•    β测试主要衡量产品的FLURPS。着重于产品的支持性,包括文档、客户培训和支持产品生产能力。
只有当α测试达到一定的可靠程度时,才能开始β测试。它处在整个测试的最后阶段。同时,产品的所有手册文本也应该在此阶段完全定稿。
测试类型
软件测试是由一系列不同的测试组成。主要目的是对以计算机为基础的系统进行充分的测试。
功能测试
功能测试是在规定的一段时间内运行软件系统的所有功能,以验证这个软件系统有无严重错误。

强度测试

强度测试是要检查在系统运行环境不正常乃至发生故障的情况下,系统可以运行到何种程度的测试。例如:
把输入数据速率提高一个数量级,确定输入功能将如何响应。
设计需要占用最大存储量或其它资源的测试用例进行测试。

–   设计出在虚拟存储管理机制中引起颠簸的测试用例进行测试。
设计出会对磁盘常驻内存的数据过度访问的测试用例进行测试。
强度测试的一个变种就是敏感性测试。在程序有效数据界限内一个小范围内的一组数据可能引起极端的或不平稳的错误处理出现,或者导致极度的性能下降的 情况发生。此测试用以发现可能引起这种不稳定性或不正常处理的某些数据组合。

性能测试
性能测试是要检查系统是否满足在需求说明书中规定的性能。特别是对于实时系统或嵌入式系统。
性能测试常常需要与强度测试结合起来进行,并常常要求同时进行硬件和软件检测。
通常,对软件性能的检测表现在以下几个方面:响应时间、吞吐量、辅助存储区,例如缓冲区,工作区的大小等、处理精度,等等。

恢复测试
恢复测试是要证实在克服硬件故障(包括掉电、硬件或网络出错等)后,系统能否正常地继续进行工作,并不对系统造成任何损害。
为此,可采用各种人工干预的手段,模拟硬件故障,故意造成软件出错。并由此检查:
错误探测功能──系统能否发现硬件失效与故障;

能否切换或启动备用的硬件;
在故障发生时能否保护正在运行的作业和系统状态;
在系统恢复后能否从最后记录下来的无错误状态开始继续执行作业,等等。
掉电测试:其目的是测试软件系统在发生电源中断时能否保护当时的状态且不毁坏数据,然后在电源恢复时从保留的断点处重新进行操作。

配置测试

这类测试是要检查计算机系统内各个设备或各种资源之间的相互联结和功能分配中的错误。
它主要包括以下几种:
配置命令测试:验证全部配置命令的可操作性(有效性);特别对最大配置和最小配置要进行测试。软件配置和硬件配置都要测试。

–   循环配置测试:证明对每个设备物理与逻辑的,逻辑与功能的每次循环置换配置都能正常工作。
修复测试:检查每种配置状态及哪个设备是坏的。并用自动的或手工的方式进行配置状态间的转换。

安全性测试
安全性测试是要检验在系统中已经存在的系统安全性、保密性措施是否发挥作用,有无漏洞。
力图破坏系统的保护机构以进入系统的主要方法有以下几种:
正面攻击或从侧面、背面攻击系统中易受损坏的那些部分;
以系统输入为突破口,利用输入的容错性进行正面攻击;

–   申请和占用过多的资源压垮系统,以破坏安全措施,从而进入系统;
故意使系统出错,利用系统恢复的过程,窃取用户口令及其它有用的信息;
通过浏览残留在计算机各种资源中的垃圾(无用信息),以获取如口令,安全码,译码关键字等信息;
浏览全局数据,期望从中找到进入系统的关键字;
浏览那些逻辑上不存在,但物理上还存在的各种记录和资料等。

可使用性测试

可使用性测试主要从使用的合理性和方便性等角度对软件系统进行检查,发现人为因素或使用上的问题。
要保证在足够详细的程度下,用户界面便于使用;对输入量可容错、响应时间和响应方式合理可行、输出信息有意义、正确并前后一致;出错信息能够引导用 户去解决问题;软件文档全面、正规、确切。

安装测试
安装测试的目的不是找软件错误,而是找安装错误。
在安装软件系统时,会有多种选择。
要分配和装入文件与程序库
布置适用的硬件配置
进行程序的联结。
而安装测试就是要找出在这些安装过程中出现的错误。

安装测试是在系统安装之后进行测试。它要检验:
用户选择的一套任选方案是否相容;
系统的每一部分是否都齐全;
所有文件是否都已产生并确有所需要的内容;
硬件的配置是否合理,等等。

容量测试

容量测试是要检验系统的能力最高能达到什么程度。例如,
对于编译程序,让它处理特别长的源程序;
对于操作系统,让它的作业队列满员
对于信息检索系统,让它使用频率达到最大。
在使系统的全部资源达到满负荷的情形下,测试系统的承受能力。

文档测试

这种测试是检查用户文档(如用户手册)的清晰性和精确性。
用户文档中所使用的例子必须在测试中一一试过,确保叙述正确无误。

自动测试
认识自动测试
什么时候使用自动测试

单元测试的重要性

发表于 2012-05-06 11:24 浏览次数:1,606 views 来源:

  在实际的单元测试过程中总会有一些错误的认识左右着我们,使之成为单元测试最大的障碍,在此将其一一分析如下:

  它太浪费时间了,现在要赶进度,时间上根本不允许,或者随便做做应付领导。

  我是一个很棒的程序员,我写的代码肯定是没有问题的。

  做单元测试太烦了,直接集成,到时有问题在集成测试时肯定能发现的,实在不行在系统测试总该能发现吧。

  它仅仅是证明这些代码做了什么。

  对于以上错误认识的产生归根结底还是由于对单元测试的理解还是不够,没有真正认识到单元测试的重要性。

  单元测试的重要性

  单元测试是软件测试的基础,因此单元测试的效果会直接影响到软件的后期测试,最终在很大程度上影响到产品的质量。从如下几个方面就可以看出单元测试的重要性在何处。

  时间方面:如果认真的做好了单元测试,在系统集成联调时非常顺利,因此会节约很多时间,反之那些由于因为时间原因不做单元测试或随便做做的则在集成时总会遇到那些本应该在单元测试就能发现的问题,而这种问题在集成时遇到往往很难让开发人员预料到,最后在苦苦寻觅中才发现这是个很低级的错误而在悔恨自己时已经浪费了很多时间,这种时间上的浪费一点都不值得,正所谓得不偿失。

  测试效果:根据以往的测试经验来看,单元测试的效果是非常明显的,首先它是测试阶段的基础,做好了单元测试,在做后期的集成测试和系统测试时就很顺利。其次在单元测试过程中能发现一些很深层次的问题,同时还会发现一些很容易发现而在集成测试和系统测 试很难发现的问题。再次单元测试关注的范围也特殊,它不仅仅是证明这些代码做了什么,最重要的是代码是如何做的,是否做了它该做的事情而没有做不该做的事情。

  测试成本:在单元测试时某些问题就很容易发现,如果在后期的测试中发现问题所花的成本将成倍数上升。比如在单元测试时发现1个问题需要1个小时,则在集成测试时发现该问题需要2个小时,在系统测试时发现则需要3个小时,同理还有定位问题和解决问题的 费用也是成倍数上升的,这就是我们要尽可能早的排除尽可能多的bug来减少后期成本的因素之一。

  产品质量:单元测试的好与坏直接影响到产品的质量,可能就是由于代码中的某一个小错误就导致了整个产品的质量降低一个指标,或者导致更严重的后果,如果我们做好了单元测试这种情况是可以完全避免的。

  综上所述,单元测试是构筑产品质量的基石,我们不要因为节约单元测试的时间不做单元测试或随便做而让我们在后期浪费太多的不值得的时间,我们也不愿意因为由于节约那些时间导致开发出来的整个产品失败或重来!

IT 女生的测试生涯

发表于 2012-05-06 11:24 浏览次数:4,242 views 来源:

周明慧  现任职于极地银河信息科技有限公司  软件测试工程师  月薪公司要求保密

IT女生的测试生涯




返回首页 | 关于我们 | 联系我们 | 乘车路线| 地铁路线| 学生住宿| 周边环境| 人才招聘 | 网站地图 | 友情链接 | 版权声明