软件测试是一个系列过程活动,包括软件测试需求分析、测试计划设计、测试用例设计、执行测试、因此,软件测试贯穿于软件项目的整个生命过程。
一般来说,初级测试员需要掌握手工测试缺陷管理工具的配置。缺陷管理工具多种多样,根据公司具体情况,目前需要掌握QC的配置。详情请参见《QC的安装过程》。
测试计划的制定者要基于资源的可用性和开发日程表来确定测试日程表,要比较日程表与最后期限、平衡资源与需要的工作量、定义主要的检查点,并制定应变计划。
测试计划的制定人员后管理人员要安排一次评审会议,与主要的团队成员一起详细评审测试计划,以保证它的完整性和可用性,并获得批准继续执行。
在一般的手工测试中,测试计划包括四个步骤:
<!--[if !supportLists]-->1)<!--[endif]-->定义测试目标
<!--[if !supportLists]-->2)<!--[endif]-->确定测试方法
<!--[if !supportLists]-->3)<!--[endif]-->定义测试环境
<!--[if !supportLists]-->4)<!--[endif]-->制定测试规约
在测试的初级阶段,一般建议用excel写,按照测试标题、操作、输入数据、预期结果、实际结果、是否通过几个板块来填入用例。熟练后可直接在缺陷管理工具中进行创建。
执行产品测试是整个测试生命周期的一部分,在这里所指的执行测试,是具体到对手工测试和缺陷管理工具的使用。我们可以用手工测试的方法,去校对界面缺陷、功能模块缺陷、连接缺陷等。
在执行测试期间,务必不怕麻烦,对于一个简单的界面测试也应该重复多次,拿出必杀的决心。
测试记录就是对bug的管理,所谓维护就是在整个项目中,对固定bug的追踪。详细内容可参见《使用QC管理的整个流程》。
我们可以这样理解,bug的解决情况就是bug的生命周期。整个生命周期中有六个生命状态。详细如下:
bug的六个生命状态:
1. 新建状态(New)
2. 打开状态(Open)
3. 固定状态(Fixed)
4. 已关闭状态(Close)
5. 已否决状态(Rejected)
6. 重现打开状态(Reopen)
在整个生命状态中,有测试员、测试组长以及开发人员的共同参与,才能走完整个生命状态的流程。其中次序请参加下图:
在新建bug的时候一定要详细写明bug出现的情况。否则在开发人员审核bug的时候,不容易找到bug的出处。若bug确实无法重现,可以协助开发人员重现bug。甚至帮助开发人员去解决。
根据公司情况,我们所使用的自动化测试工具一般指QTP,在这里也只要求QTP自动化测试工具的配置。具体配置请参见《QC与QTP的完美结合》。
自动化测试包括单元自动化测试、性能自动化测试、功能自动化测试。在整个测试过程中能使用QTP进行脚本录制、回放、复用、修改等基本操作。
编写测试脚本是自动化测试里举足轻重的一部分,初级测试工程师应具备基本的编写VBScript脚本的能力。
VBScript是微软开发的一种脚本语言,可以看作是VB语言的简化版,与VBA的关系也非常密切。它具有原语言容易学习的特性。目前这种语言广泛应用于网页和ASP程序制作,同时还可以直接作为一个可执行程序。用于调试简单的VB语句非常方便。
Quality Center是一个基于Web的测试管理工具,可以组织和管理应用程序测试流程的所有阶段,包括指定测试需求、计划测试、执行测试和跟踪缺陷,如下图所示。此外,通过Quality Center还可以创建报告和图来监控测试流程。
Quality Center是一个强大的测试管理工具,合理的使用Quality Center可以提高测试的工作效率,节省时间,起到事半功倍的效果。
利用HP-Mercury Quality Center,您可以:
1.制定可靠的部署决策。
2.管理整个质量流程并使其标准化。
3.降低应用程序部署风险。
4.提高应用程序质量和可用性。
5.通过手动和自动化功能测试管理应用程序变更影响。
6.确保战略采购方案中的质量。
7.存储重要应用程序质量项目数据。
8.针对功能和性能测试面向服务的基础架构服务。
9.确保支持所有环境,包括J2EE、.NET、Oracle和SAP。
使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试那些功能、操作步骤、输入数据和期望的输出数据等。
Mercury QuickTest企业级自动化测试工具!
QuickTest 9.0 Pro最新正式版发行,QTP 9.0是一个B/S系统的自动化功能测试的利器,软件程序测试工具。Mercury的自动化功能测试软件QuickTest Professional 9.0,可以覆盖绝大多数的软件开发技术,简单高效,并具备测试用例可重用的特点。
1、制定测试计划
自动测试的测试计划是根据被测项目的具体需求,以及所使用的测试工具而制定的,完全用于指导测试全工程。
QTP是一个功能测试工具,主要帮助测试人员完成软件的功能测试,,与其他测试工具一样,QTP不能完全取代测试人员的手工操作,但是在某个功能点上,使用QTP的确能够帮助测试人员做很多工作。在测试计划阶段,首先要做的就是分析被测应用的特点,决定应该对哪些功能点进行测试,可以考虑细化到具体页面或者具体控件。对于一个普通的应用程序来说,QTP应用在某些界面变化不大的回归测试中是非常有效的。
2、创建测试脚本
当测试人员浏览站点或在应用程序上操作的时候,QTP的自动录制机制能够将测试人员的每一个操作步骤及被操作的对象记录下来,自动生成测试脚本语句。与其他自动测试工具录制脚本有所不同的是,QTP除了以VBScript脚本语言的方式生成脚本语句以外,还将被操作的对象及相应的动作按照层次和顺序保存在一个基于表格的关键字视图中。比如,当测试人员单击一个链接,然后选择一个CheckBox或者提交一个表单,这样的操作流程都会被记录在关键字视图中。
3、增强测试脚本的功能
录制脚本只是实现创建或者设计脚本的第一步,基本的脚本录制完毕后,测试人员可以根据需要增加一些扩展功能,QTP允许测试人员通过在脚本中增加或更改测试步骤来修正或自定义测试流程,如增加多种类型的检查点功能,既可以让QTP检查一下在程序的某个特定位置或对话框中是否出现了需要的文字,还可以检查一个链接是否返回了正确的URL地址等,还可以通过参数化功能,使用多组不同的数据驱动整个测试过程。
4、运行测试
QTP从脚本的第一行开始执行语句,运行过程中会对设置的检查点进行验证,用实际数据代替参数值,并给出相应的输出结构信息。测试过程中测试人员还可以调试自己的脚本,直到脚本完全符合要求。
5、分析测试
运行结束后系统会自动生成一份详细完整的测试结果报告。
JIRA是澳大利亚Atlassian公司开发的一款优秀的问题跟踪管理软件工具,可以对各种类型的问题进行跟踪管理,包括缺陷、任务、需求、改进等。JIRA采用J2EE技术,能够跨平台部署。它正被广泛的开源软件组织,以及全球著名的公司使用。
JIRA产品非常完善且功能强大,安装配置简单,多语言支持、界面十分友好,和其他系统如CVS、Subversion(SVN)、VSS、LDAP、邮件服务整合得相当好,文档齐全,可用性以及可扩展性方面都十分出色,拥有完整的用户权限管理。
您可在JIRA中国网站http://www.fangwai.net/上了解到JIRA更为详细的信息。
此文档主要介绍了JIRA产品的特性、安装配置、基本概念及操作。为您评估使用JIRA提供一个基本的指南。另外,本文档中介绍的部分功能是JIRA企业版独有的,如:项目类别管理功能、设置模块负责人。
跟踪并管理在项目开发和维护过程中出现的问题(如:缺陷、新特性、任务、改进等)是项目管理很重要的任务,但是很少有团队能做的很好。JIRA作为一个专业的问题跟踪系统可以帮助您把缺陷管理起来,让跟踪和管理在项目中发现的问题变得简单,而且充分利用JIRA的灵活配置和扩展特性,可以将JIRA作为一个项目管理系统或者IT支持系统。
JIRA介绍:
JIRA的特性
1)管理缺陷,新特性、任务、改进或者其他任何问题
2)干净和强大的用户界面
3)灵活的工作流定制
4)全文搜索和强大的过滤器
5)企业级的权限和安全控制
6)非常灵活的邮件通知配置
7)可以创建子任务
8)方便的扩展及与其他系统集成:包括email、LDAP和源码控制工具等;
9)丰富插件库
10) 项目类别和组件/模块管理
11) 可以在几乎所有硬件、操作系统和数据库平台上运行
TD是test director的简称。是在windows平台上基于B/S框架的测试管理工具。TD的最高版本是8.2.现在的QC是TD的升级版本。而且QC支持多版本的操作平台。如:windows ,solar's unlix等。而且QC有四大模块:需求管理、测试计划、测试执行、缺陷管理。介意使用QC。
软件工程的概念包括软件的相关概念、软件的特点、软件危机与软件工程等基本概念等,在此不做详细描述。
软件测试的概念包括软件测试方法的划分,如执行主体划分、状态划分、技术划分等。熟悉静态测试、动态测试、手工测试、自动化测试、单元测试、集成测试、系统测试、性能测试、验收测试等的基本概念和方法。
MSSQL、MYSQL、ACCESS、ORACLE、Microsoft SQL Server等较为常用,现在主要介绍下Microsoft SQL Server。
SQL Server是一个关系数据库管理系统。它最初是由Microsoft Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2版本。在Windows NT推出后,Microsoft与Sybase在SQL Server的开发上就分道扬镳了,Microsoft将SQL Server移植到Windows NT系统上,专注于开发推广SQL Server的Windows NT版本。Sybase则较专注于SQL Server在UNIX操作系统上的应用。
Microsoft SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使得它成为至今为止的最强大和最全面的Microsoft SQL Server版本。这篇文章详细介绍了Microsoft SQL Server 2008中的新的特性、优点和功能……
微软的这个数据平台满足这些数据爆炸和下一代数据驱动应用程序的需求,支持数据平台愿景:关键任务企业数据平台、动态开发、关系数据和商业智能。
Visual Basic从1991年诞生以来,现在已经18年了。BASIC是微软的起家产品,微软当然不忘了这位功臣。随着每一次微软技术的浪潮,Visual Basic都会随之获得新生。可以预见,将来无论微软又发明了什么技术或平台,Visual Basic一定会首先以新的姿态登上去的。如果你想紧跟微软,永远在最新的技术上最快速地开发,你就应该选择Visual Basic。
VB的特点:
1.面向对象
2.事件驱动
3.软件Software集成式开发
4.结构化设计语言
5.强大数据库访问功能
6.支持对象链接和嵌入技术
7.网络功能
8.多个应用向导
9.支持动态交换、动态链接技术.
lO.联机帮助功能
C#(C Sharp)是微软(Microsoft)为.NET Framework量身订做的程序语言,C#拥有C/C++的强大功能以及Visual Basic简易使用的特性,是第一个组件导向(Component-oriented)的程序语言,和C++与Java一样亦为对象导向(object-oriented)程序语言。
特点:
微软c#语言定义主要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点.C#在设计者从C++继承的可选选项方面比Java要广泛一些(比如说structs),它还增加了自己新的特点(比方说源代码版本定义).但它还太不成熟,不可能挤垮Java.C#还需要进化成一种开发者能够接受和采用的语言.而微软当前为它的这种新语言大造声势也是值得注意的.目前大家的反应是:"这是对Java的反击."
C#更象Java一些,虽然微软在这个问题上保持沉默.这也是意料中的事情,我觉得,因为Java近来很成功而使用Java的公司都报告说它们在生产效率上比C++获得了提高.
Java所带来的巨大影响和大家对它的广泛接受已经由工作于这种语言和平台之上的程序员数量明显的说明了(估计世界范围内共有两百五十万程序员使用Java).由这种语言写成的应用程序的数量是令人惊讶的并已经渗透了每一个级别的计算,包括无线计算和移动电话(比如日本发明的Java电话).C#能够在用户领域获得这样的礼遇吗?我们必须等待并观望,就象已经由SSI公司的CEO和主席Kalpathi S. Suresh指出来的那样,"我发现所有这些都是渐进的.如果C#不存在,我们总能回到Java或C和C++.这些都不完全是新技术;它们在更大的意义上来说只是大公司制造的市场噱头.我们必须给他们时间安顿下来看看这些是不是真的对IT工业有什么影响."
Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet