发布新日志

  • 黑盒测试方法分类

    2008-02-22 16:08:33

    共有:等价类划分法、边界值分析法、判定表法、因果图法、状态迁移图法、流程分析法、正交试验法、输入域测试法、输出域覆盖法、异常分析法、错误猜测法

     

     

  • 认真的态度去工作

    2008-01-21 16:11:21

     

    昨天看龙的传人时,中间有三位评委的现场讨论。其中有一个各方面条件都很好的人,被淘汰掉。只有一个原因:今晚表现的不认真。

    认真是一个人很重要的品质。在工作中能力是一方面但是工作态度也是很重要的一个方面。做事认真就可以避免很多工作中的错误。

    作为测试人员,更要认真。因为粗心,会放过很多bug。因为粗心,会让test case比较粗糙。因为粗心,会在review时问题百出。同时这也是工作不负责任的一种表现。

    另外,作为一个测试人员,其实不管是在工作还是平时生活,都应该 think more than what u do. 不应该 do what are asked. 只有一个简单的response 而没有思考和动物没有区别。

    另外和developer的沟通要很重要

    就拿最近做的这个feature而言,一直觉得各种概念算法的定义是developer的事情,但从来没有doubt过。

    并且拿没有参加design doc review来给自己借口。每次有什么改动,都是follow developer的意思,这样做是错误的。 Manager曾经很多次说,dont trust developer! test 要有自己的观点,要和developer argue 得出最后的结论。并次每次的bug要知道为什么错的。如果developer没有列出来也要ask for it! 这些也算是做这个feature的最大的感受拉!

  • 学习Alpha和Beta测试

    2008-01-11 17:08:36

    Alpha测试:

    由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际环境下进行的受控测试,Alpha测试不能由程序员或测试人员完成。 Alpha 测试发现的错误,可以在现场立刻反馈给开发人员,由开发人员及时分析和处理。目的是评价软件产品的功能,可使用性,可靠性,性能和支持。 尤其注重产品的界面和特色。

    Alpha测试可以从软件产品编码结束后开始,或在模块(子系统)测试完成后开始,也可以在测试过程中产品达到一定的稳定和可靠程度后再开始。有关的手册等应该在Alpha测试前准备好。

     

    Beta测试:

    软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场。Beta测试不能由程序员或测试人员完成。 Beta是在开发者无法控制的环境下进行软件现场应用。 在BETA测试中, 用户记下遇到的所有问题,包括真实的以及主管认定的,定期向开发者报告, 开发者在综合用户的报告后,做出修改,最后将软件产品交给全体用户使用。 BETA测试的主要目的是测试可支持性,所以beta测试应该尽可能由主持产品发行的人员来管理。

    Alpha测试要在BETA测试之前。

    由于上面二中的测试 组织难度大,费用高, 随机性强,周期跨度大,测试的质量和效率难以保证,所以,很多专业的软件可能不再进行beta测试。 很多软件的Beta测试外包给这些专业测试机构进行测试。

     

  • 冒烟测试

    2008-01-11 16:41:17

    冒烟测试:开发人员在个人版本上的软件上执行目前的冒烟测试项目,确定新的程序代码不出故障。

    顾名思义,冒烟测试可以理解为, 该种测试耗时短,仅用一袋烟工夫足够了。

    冒烟测试的对象是在每一个新编译的需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作。 执行者是编译人员,

    随机测试主要是对被测软件的一些重要功能进行复测,也包括测试那些当前的测试样例(TestCase)没有覆盖到的部分。

    另外,对于软件更新和新增加的功能要重点测试。重点对一些特殊点情况点、特殊的使用环境、并发性、进行检查。尤其对以前测试发现的重大Bug,进行再次测试,可以结合回归测试(Regressive testing)一起进行。

    理论上,每一个被测软件版本都需要执行随机测试,尤其对于最后的将要发布的版本更要重视随机测试。随机测试最好由具有丰富测试经验的熟悉被测软件的测试人员进行测试。对于被测试的软件越熟悉,执行随机测试越容易

  • 黑盒测试 z

    2008-01-11 16:30:22

    1。 越早越好--一边开发一边测试。 不要等到开发完了在测试。会增大很多开发人员修改和维护的代价

    2。 一套完整的测试应该由五个阶段组成:

      1.测试计划

      首先,根据用户需求报告中关于功能要求和性能指标的规格说明书,定义相应的测试需求报告,即制订黑盒测试的最高标准,以后所有的测试工作都将围绕着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同时,还要适当选择测试内容,合理安排测试人员、测试时间及测试资源等。

      2.测试设计

      将测试计划阶段制订的测试需求分解、细化为若干个可执行的测试过程,并为每个测试过程选择适当的测试用例(测试用例选择的好坏将直接影响到测试结果的有效性)。

      3.测试开发

      建立可重复使用的自动测试过程。

      4.测试执行

      执行测试开发阶段建立的自动测试过程,并对所发现的缺陷进行跟踪管理。测试执行一般由单元测试、组合测试、集成测试、系统联调及回归测试等步骤组成,测试人员应本着科学负责的态度,一步一个脚印地进行测试。

      5.测试评估

      结合量化的测试覆盖域及缺陷跟踪报告,对于应用软件的质量和开发团队的工作进度及工作效率进行综合评价。

      显然,黑盒测试只有严格按照步骤进行,才可能对应用程序的质量进行把关。然而,如果没有一种优秀的测试工具的帮助,单纯凭借手工测试,不但将耗费大量的人力、物力和财力,而且有很多测试工作是难以实现甚至是无法实现的。

      三、手工测试与自动测试的比较

      手工测试无法保证黑盒测试的科学性与严密性,这是因为:

      ●测试人员要负责大量文档、报表的制订和整理工作,会变得力不从心;

      ●受软件分发日期、开发成本及人员、资源等诸多方面因素的限制,难以进行全面的测试;

      ●如果修正缺陷所花费的时间相当长,回归测试将变得异常困难;

      ●对测试过程中发现的大量缺陷缺乏科学、有效的管理手段,责任变得含混不清,没有人能向决策层提供精确的数据以度量当前的工作进度及工作效率;

      ●反复测试带来的倦怠情绪及其他人为因素使得测试标准前后不一,测试花费的时间越长,测试的严格性也就越低;

      ●难以对不可视对象或对象的不可视属性进行测试。

      因此,自动测试成为最佳的解决方案。所谓自动测试,实际上是将大量的重复性工作交给计算机去完成,一个优秀的自动测试工具,不但可以满足科学测试的基本要求,而且可以节约大量的时间、成本、人员和资源,并且测试脚本可以被重复利用(包括被不同的项目所利用)。

我的栏目

数据统计

  • 访问量: 7752
  • 日志数: 18
  • 建立时间: 2007-12-26
  • 更新时间: 2008-07-10

RSS订阅

Open Toolbar