测试知识

原创 2007年10月10日 17:19:00
测试用例

测试用例的重要性是毋庸置疑的,它是软件测试全部过程的核心,是测试执行环节的基本依据。

生产管理系统中的功能测试用例直接使用需求规格说明书和软件功能点及对每个功能点进行操作上的细化、生产管理系统界面原型图,对工作流的测试用例还包含流程图和权限配置信息。

压力测试用例的选择可在实施现场定义,使用LoadRunner等测试工具在现场录制测试脚本,选择用例时应该消除客户端执行脚本的影响因素。

性能测试用例主要选择那些交互多、数据量大的功能,比如图形交互操作,记录自动生成等。

测试分类

  系统测试应该由若干个不同测试组成,目的是充分运行系统,验证系统各部件是否都能正常工作并完成所赋予的任务。测试分为以下几类。

1.  功能测试

  功能测试用来测试系统的单个功能,这里的功能定义为当用户在界面上点击功能菜单的某一菜单项时,系统给出的交互界面所包含的一组操作的集合。最简单的单一功能表现为一个浏览器编辑表单。

   功能测试的测试用例可以使用生产管理系统界面原型图,再结合检查对应的数据库记录的方式。

   功能测试测试是为了保证系统提供的单个功能项的正确性,比如一次设备台帐登记。在此基础上在联合其他相关的功能进行组合测试。

2.  组合功能测试(集成测试)

  单一功能测试只能保证最小范围内的基本功能的正确性,而不能保证当这些基本功能联合在一起实现一个完整应用是的正确性。组合功能测试就是建立在单一功能测试的基础上,测试逻辑相关的一组单一功能组成一个完整应用的实际效果。

   联合功能测试的测试用例由数据模型的关联关系、相关的流程图、生产管理系统界面原型图组成,对于工作流的测试,必须同时测试操作权限。

3.  压力测试

压力测试是指模拟巨大的工作负荷以查看应用程序在峰值使用情况下如何执行操作。压力测试应该是较短时间的、模拟巨大的工作负荷的、使应用程序的使用达到峰值的测试。压力测试是用来测试应用服务器并发能力的测试。

测试时使应用程序的使用达到峰值,如果超过这个界限则应用程序会崩溃或错误率激增,这个峰值是针对某一时刻来说的,也是针对某个临界的压力来说的,转变为场景设置中的说法就是能够支持的最大并发用户数。

压力测试需要在特定的硬件环境下进行,系统安装后,使用LoadRunner等测试工具。

4.  性能测试

对有些数据量大,操作复杂的功能,软件部分即使满足功能要求,也未必能够满足性能要求,虽然从单元测试起,每一测试步骤都包含性能测试,但只有当系统真正集成之后,在真实环境中才能全面、可靠地测试运行性能。系统性能测试是为了完成这一任务。性能测试有时与压力测试相结合,经常需要其他软硬件的配套支持。

测试结论和bug管理

1)        测试结论

测试结论要客观,用数据说话,尽量不要添加个人主管臆测,不带个人感觉或感情色彩,从多种角度考虑。

2)        使用bug管理系统或bug工具管理bug

为了使bug的管理系统化和规范化,便于查阅和更新,采用BugFree等专门管理Bug的工具来管理bug

3)        确定bug的等级

    按照CMM5中定义的规范,BUG一般分致命、严重、一般和提示。致命是严重影响产品的BUG,比如操作手册的错误,需求的错误等。严重是产品中使功能无法实现的BUG,比如某个功能无法运行,GUI长时间僵死没有响应。一般是某个BUG的发生,只影响了一个功能,而其他功能可以正常运行。提示就是一些 GUI的问题,或者友好性的问题。

    bug划分为不同的等级后,对致命和严重的bug需要立即处理,对一般和提示bug再细分为不同的优先级,按优先级的顺序分别进行处理。

4)        bug编写技巧

为了提交准确简洁的、彻底校订的、精心构思的、高质量的技术文档,请参考以下的技巧:

         组织Structure:测试人员应该采用深思熟虑的,小心谨慎的方法执行测试,并且做详尽的记录。这样可以促使他们对测试下的系统有很好的认识。当错误发生的时候,一个有组织的测试人员能够知道最早出现问题的地方。

         重现Reproduce测试人员在编写bug report之前必须在检查问题是否可重现。如果错误不可再重现,仍然应该写下来,但是必须说明问题的偶然性。一个好的处理原则就是在编写bug report之前反复尝试3次。

         隔离Isolate在尝试编写bug report之前,必须试着隔离错误。可以采用改变一些变量的方法,如系统的配置,它可能可以改变错误的症状。这些信息可以为开发人员着手调试提供思路。

         归纳Generalize在测试人员发现了一个已隔离的,可重现的问题后,应该对问题进行归纳。同一个问题是否出现在其他的模块或其他的地方?同一个故障是否有更加严重的问题?

         对比Compare如果测试人员以前曾经验证过现在出错的测试用例,那么他就应该检查以前的测试结果以检查相同的条件是否通过以前的测试。如果是的话,那么这个问题就象是一个回归的错误。注意由于同一测试条件有可能出现在多个测试用例中,这个步骤就不仅仅只是检查一个测试用例在以前的多个结果。

         总结Summarizebug report的第一行写上错误的总结是非常关键的。测试人员要花些时间思考已发现的错误对客户有何影响。这不仅仅要求测试人员编写的报告要能够吸引读者,使和管理层的沟通清晰,还要能够帮助设置错误修复的优先级别。

         精简Condensebug report的初稿完成后,测试人员应该反复阅读它,集中剔除那些没有关系的步骤或词语。隐含的或模糊的说明和那些由于对没有任何关系的细节或者那些在重现错误过程中不需要的步骤而消磨报告欢迎程度的无穷唠叨都不是bug report的目标。

         消除歧义Disambiguate测试人员在精简空话的同时或其之后随即应该再仔细检查报告是否有会产生误解的地方。测试人员应该尽量避免使用模糊的,会产生歧义的和主观的词语。目标是使用能够表述事实,清楚的,不会产生争执的词语。

         中立Neutralize作为坏消息的传递人,和善地提交消息是一个挑战。如同所有的错误总结一样,独立的bug report在措辞方面应该保持公正。攻击开发人员,指责潜在的错误,企图诙谐或使用挖苦将引起开发人员的憎恶,并且使注意力从“提高产品质量”这个大的目标上转移开了。谨慎的测试人员只用Bug report来描述事实。

         检查Review一旦测试人员感觉bug report是他能够编写的最好版本,他应该将报告再给一个或多个同行进行检查。他的同事们也应该给出一些建议,为了澄清问题不断地提问,如果适当的话,甚至可以挑战“错误成灾”的结论。在允许的时间里,测试小组应该尽可能提交最好的bug report

一个Bug有7种解法:
By Design - 就是这么设计的,无效的Bug
Duplicate - 这个问题别人已经发现了,重复的Bug
External - 是个外部因素(比如浏览器、操作系统、其他第3方软件)造成的问题
Fixed - 问题被修理掉了。Tester要尽可能找到这种Bug
Not Repro - 无法复现你这个问题,无效的Bug
Postponed - 是个问题,但是目前不必修理了,推迟到以后再解
Won't Fix - 是个问题,但是不值得修理了,不管它吧

软件测试知识框架图-偏web性能测试

软件测试知识框架图
  • typing_yes_no
  • typing_yes_no
  • 2016年02月19日 16:59
  • 757

自动化测试知识体系及总结

自动化测试一般分为以下三类: 1、基于代码的自动化测试(Code-Based) 优点:易于实施和控制,容易快速看到效果,结合TDD将代码质量提高一个量级 缺点:要求有较强的编码能力和...
  • wmguo2015
  • wmguo2015
  • 2016年07月27日 14:01
  • 461

性能测试体系知识

开始性能测试前需要了解的内容: 1、项目具体需求。 2、指标:响应时间在多少以内,并发数多少,tps多少,总tps多少,稳定性交易总量多少,事务成功率,交易波动范围,稳定运行时长,资源利用...
  • u014480530
  • u014480530
  • 2016年12月06日 23:26
  • 415

手机测试一些知识点

手机上的app分为基于HTML5的app(类似于pc上的b/S应用)和本地app(类似于C/S结构)。 所以测试上我们也可以充分吸收web的b/s和c/s测试经验。但是不同于pc上的应用测试,手机上...
  • ling499185749
  • ling499185749
  • 2015年06月02日 16:19
  • 754

如何建立测试部门的知识库体系

如何建立测试部门的知识库体系                  领测软件测试网对于一个部门来说,如何积累项目经验,如何提高成员的知识水平是非常重要的,每个企业都有自己的企业文化,每个部门应该也要...
  • liushi558
  • liushi558
  • 2015年06月19日 09:03
  • 883

app功能测试知识汇总

1 APP测试基本流程 2 1.1流程图 2 1.2测试周期 3 1.3测试资源 3 1.4日报及产品上线报告 3 2 App测试点 3 2.1安全测试 3 2.1.1软件...
  • g695144224
  • g695144224
  • 2016年06月13日 09:44
  • 4292

测试的基本知识点

目录 一.知识总结... 2 1.软件工程要点... 2 1.1软件... 2 1.2软件危机... 3 1.3软件工程... 3 1.4应用软件生命周期管理... 3 2....
  • JiaMeichen
  • JiaMeichen
  • 2015年09月27日 15:55
  • 762

软件测试理论知识总结

基本概念: 测试是为了发现程序中的错误而执行程序的过程 软件测试工程师在一家软件企业中担当的是“质量管理”角色,及时纠错及时更正,确保产品的正常运作 据了解,软件测试人员必须具有创新性和综合...
  • txx9010
  • txx9010
  • 2013年01月22日 12:32
  • 53041

Jmeter基础知识

一、Jmeter工具简介 Jmeter是Apache组织开发的基于Java的性能测试工具。用于对软件做性能测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域。 它可以用于测试静态和动态资源...
  • jiaoli_82
  • jiaoli_82
  • 2017年03月23日 20:22
  • 225

web测试常用的用例及知识(全)

http://www.51testing.com/html/31/15081031-3686284.html web测试中关于登录的测试搜索功能测试用例设计翻页功能测试用例输入框的测试web测试...
  • yuki_ying
  • yuki_ying
  • 2017年02月09日 13:55
  • 2142
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:测试知识
举报原因:
原因补充:

(最多只允许输入30个字)