您的位置:首页 > 其它

软件测试技术大全——测试基础 流行工具 项目实践

2010-06-09 14:38 961 查看
转自 http://parra.javaeye.com/blog/441824
1、软件测试行业现状?

正蓬勃发展,起步晚,对测试资源的投入、测试人员的培训、测试工具的购买相对缺乏。

2、目前测试人员的能力?

普遍偏低,尤其是在测试用例的设计能力、测试的规范化执行、自动化测试和性能测试等方面。

3、软件测试发展过程?

最早开发人员编写完程序后自己调试,局限性大,存在公正性和权威性的问题;组建独立的测试小组,独立测试,形成测试职业;学者专门研究测试技术和理论,开
发人员开发出专门的测试工具来帮助测试人员进行测试。

4、软件测试发展方向?

逐渐出现更多更好的测试工具,自动化测试越来越普遍,开发人员的测试意识将不断增强,开始与测试人员一起讨论测试的设计,并做更多的单元测试。

5、什么制约了软件测试的发展?

测试更讲究测试人员对需求的理解、验证,对软件行为正确与否的判断,依赖经验,难免手工测试;缺乏其他学科(数学、人工智能)的支持,测试工具待进一步改
进。

6、所在测试组织是怎样工作的?

微软以前也无独立测试组,开发人员自己测试或请别人协助测试,Bug仍然存在,成立独立的测试部门。组织方式两大类:一是测试人员跟随项目,好处是熟悉项
目的业务知识,缺点是交流障碍,测试经验不能传递;二是测试人员由测试部门经理管理,好处是资源统一管理交流多,多点事不利于项目知识深入理解。

7、如何融入团队进入工作状态?

尽快熟悉项目工作环境;虚心学习熟悉资料;启动阶段多参与会议了解需求;阅读已有测试用例、缺陷库中旧有的bug。

8、如何带领测试团队?

建立学习、培训机制;建立共享氛围和学习习惯(测试知识库、内部杂志);制定工作规范和指引;明确人员职责、组织结构、工作流程。

9、测试人员应该具备那些素质?

沟通能力、软件相关的知识、文档编写能力、自信、怀疑精神。

10、QA与QC

QA即质量保证,QC即质量控制,目标都是提高软件质量和竞争力。测试人员需要积极配合QA人员记录好缺陷、分析统计缺陷,为质量保证提供各种基础数据。
两者都是查找错误,QC查找的产品中的错误,QA查找的是过程中的错误;两者都是对质量进行管理。

11、对软件工程的了解

软件工程的目的是提高软件的质量和生产率最终实现软件的工业化生产。采用软件工程模型的目的是为了确保项目的成功,成功是有成本、进度、质量三者共同决定
的,软件工程考虑这三方面因素,测试主要负责质量方面。

12、软件测试的目的?

发现软件存在的缺陷,建立起对软件的信心。测试也是一种服务——为客户服务,帮客户避免充满缺陷的软件;为项目组服务,提供缺陷信息,及时更正,提高产品
质量;为项目经理判断软件质量提供参考信息。

13、软件测试原则

Good
enough原则;Pareto原则(80-20原则:80%的Bug在分析、设计、评审阶段就能被发现和修正,16%需要由系统的软件测试发现,4%的
bug只有在用户长期使用过程中才能暴露);尽可能早地开展测试(越早发现错误,修改的代价越小,越迟代价越高;在发现较多错误的地方投入更多的测试;同
化效应(测试人员受开发人员影响同意其某些观点,测试人员越熟悉软件越容易忽略看似小的问题)

14、软件测试的学派

分析学派:测试是严格的技术性的。

标准学派:测试是用于衡量进度的一种方式,强调成本度量和可重复的标准。

质量学派:强调过程,像警察一样审判开发人员,像守门员一样保证质量。

上下文驱动学派:强调人的作用,寻找利益相关的bug。

敏捷学派:用测试来验证开发是否完成,强调自动化测试。

15、微软的测试方法

强调测试人员与开发人员的配合,测试人员要与开发人员一起参与到需求和设计的评审中,测试人员从测试的角度对需求文档、设计文档进行可测试性、明确性、完
整性、正确性等方面的审查。测试人员会在项目的里程碑阶段的末期进行Bug
Bash(bug大扫除)。项目经理负责定义需求、编写需求规格说明书和设计文档;开发人员负责编写代码来实现需求设计的规格定义;测试人员负责测试开发
人员编写的代码是否复合项目经理定义的规格。三者没有必然的上下级关系,分工合作。

16、IBM的测试方法

基于RUP(Rational统一过程模型),强调迭代开发、持续集成。注重回归测试,相同的测试要重复多次,所以要投入精力将回归测试自动化。

采用测试覆盖率和质量来对测试进行度量。覆盖是对测试完全程度的评价(测试需求的覆盖、测试用例的覆盖、测试执行代码的覆盖),质量是对测试对象的可靠性
稳定性及性能的评价。

用例驱动。一个用例就是系统的一个功能。用例贯穿于整个软件开发的生命周期(需求分析——用例描述、系统设计——用例分析、编码——用例实现、测试——用
例检验)。

测试类型:可靠性(完整性、结构性)、功能性(配置、功能、安装、安全——预期主角才能使用、容量)、性能(基准、竞争、负载、性能曲线、强度)。

单元测试——>集成测试——>系统测试——>验收测试。

17、Parasoft的自动错误预防(AEP——Automated Error Prevention)

以防止错误发生为主要目的。

18、测试过程包括哪些阶段?

测试需求分析和测试计划制定、测试用例设计、测试环境搭建、测试执行、缺陷分析和报告、测试总结。

19、测试用例设计方法?

等价类划分法、边界值分析法、基本路径分析法、因果图法、场景设计法、错误猜测法;有效减少测试用例个数的方法:正交表法、均匀试验法、组合覆盖法。分类
树法辅助进行测试用例设计。

20、测试环境?

测试数据、测试工具、测试机器及操作系统、安装包、网络环境、服务器配置与搭建。

21、测试工具如何引入?

测试工具似一把剑,测试人员要先“品剑”(测试工具的选型、测试工具的试用),再“练剑”(测试工具的培训),然后“用剑”(测试工具的使用)“论剑”
(积累使用经验)。

22、各种测试工具简介

测试管理工具——TestDirector,包括测试需求管理、测试用例管理、测试过程管理、缺陷跟踪管理、测试报告管理5方面。

自动化功能测试工具——TestComplete,由美国AutomatedQA公司生产,支持对Win32、.NET、WPF、Web类型的应用程序的
测试,支持多平台多语言。QTP(QuickTest
Professional)具有关键字驱动测试特性,在增强测试创建和维护方面很有优势。

性能测试工具——LoadRunner,业界公认的权威性能测试工具,被誉为“工业级”的性能测试工具,支持广泛的协议和平台,3个功能模
块:Virtual User
Generator(录制和编写协议脚本)、Controller(创建测试场景、执行性能测试)、Analysis(分析测试结果、形成测试报告)。

内存问题测试工具——BoundsChecker,优秀的内存检测工具,尤其是非托管程序的内存泄漏问题的检测非常有效,采用“Code
Injection”技术截获对分配内存和释放内存的函数的调用。

微软的单元测试工具——MSTest,在Visual Studio.NET
2005中进行了整合,利用反射机制可以访问private类型的属性和方法,并可以自动创建基础的测试代码框架。

测试用例设计工具——CTE XL,利用分类树方法设计测试用例。

23、开源测试工具的发展?

超过300个,覆盖了单元测试、性能测试、自动化功能测试、测试管理等。

24、开源测试工具简介

管理类工具——Bugzilla(Bug跟踪系统,功能强大,但安装麻烦)、Mantis(缺陷跟踪系统,安装方便,扩展性强)、BugFree(缺陷管
理系统,PHP+MySQL编写,轻量级,中国人的开源项目,本土优势)。

单元测试类工具——XUnit是一个大的框架系列,Java的JUnit,.NET的NUnit,Delphi的DUnit;NMock是.NET的动态
模拟对象库;NunitForms是NUnit的扩展,专为Windows
Forms应用程序的单元测试和接收测试而设计。

性能测试类工具——集中在Web性能测试方面,OpenSTA、TestMaker、JMeter、DBMonster

自动化功能测试类工具——针对Java的Abbott Java GUI Test
Framework;针对C#的SharpRobo,用于.NET的WinForm程序的功能测试和录制;针对html的Samie(Simple
Automation
Module For Internet Explorer),专用于IE自动化测试的Perl模块。

25、Windows自带小测试工具

“运行”中输入“Perfmon”,启动性能监控工具,提供的计数器日志记录功能可以方便的记录测试过程中某些对象的性能变化情况。

26、如何建立团队学习气氛?

把学习内容作为工作考核的一部分;把学习计划作为项目计划的一部分;把学习和技术研究任务任务化、专门化;建立一帮一导师制;建立持续的培训体系。

27、测试人员的发展路线——管理路线、技术路线

初级测试工程师:集中在手工测试和基本的功能验证性测试方面

中级测试工程师:集中在黑盒测试的执行及其测试用例的设计方面,制定测试计划、测试报告

高级测试工程师:具备较强的测试用例设计能力,理论融入实践,黑盒、白盒、性能测试

测试组长:组织、沟通能力,任务分配、资源安排、分工、具备风险意识,Bug评审、缺陷分析

测试主管:管理多个测试项目,协调部门工作,监控测试进度,关注氛围、凝聚力

质量主管:整体架构、测试工具选型是否合理,关注流程的质量,负责管理体系的建立与维护
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: