走路要向前看,但也不要忘了脚下的路.

测试理论知识总结

上一篇 / 下一篇  2010-04-14 13:26:32 / 个人分类:学习总结

    马上要离开公司了,最近除了忙着考试外,也没别的事情。就是找工作了,闲睱时间在论坛上看到有些人在问一些测试基础理论方面的知识,其实也是在面试时会遇到的一些问题。现在在网上搜集整理了一下。基本上都差不多,少部份是自己写的。一是自己也可以学习温习一遍,二是,以供一些新手参考阅读。还有一些不完善的地方,需要慢慢改进。
    这次主要是针对以下问题给出的解答:
 
    

    1.写一个交易的流程和测试用例

   2.一个测试人员具备的素质

   3.白盒测试的区别

   4.黑盒测试的方法是什么

   5.白盒测试的方法?

   6.什么是集成系统单元测试

   7.什么叫等价类划分什么叫因果法

 

 1.写一个交易的流程和测试用例

基本流  

 

     开端是ATM  处于准备就绪状态。  

    1.准备提款-  客户将银行卡插入ATM  机的读卡机。  

    2.验证银行卡-  ATM  机从银行卡的磁条中读取帐户代码,并检查它是否属  

 于可以接收的银行卡。  

    3.输入PIN  -  ATM  要求客户输入PIN  码(6  位)  

    4.验证帐户代码和PIN  -  验证帐户代码和PIN  以确定该帐户是否有效以及  

 所输入的PIN  对该帐户来说是否正确。对于此事件流,帐户是有效的而且  

 PIN  对此帐户来说正确无误。  

    5.ATM  选项-  ATM  显示在本机上可用的各种选项。在此事件流中,银行  

 客户通常选择“提款”。  

    6.输入金额-  要从ATM  中提取的金额。对于此事件流,客户需选择预设  

 的金额(10  美元、20  美元、50  美元或100  美元)。  

    7.授权-  ATM  通过将卡IDPIN、金额以及帐户信息作为一笔交易发送给  

 银行系统来启动验证过程。对于此事件流,银行系统处于联机状态,而且  

 对授权请求给予答复,批准完成提款过程,并且据此更新帐户余额。  

    8.出钞-  提供现金。  

    9.返回银行卡-  银行卡被返还。  

    10.收据-  打印收据并提供给客户。ATM  还相应地更新内部记录。  

     用例结束时ATM  又回到准备就绪状态。  

 备注流:

2a)银行卡无效在基本流步骤2  -  验证银行卡,如果卡是无效的,则卡被退回,同时会通知相关消息。  

 5aATM  内没有现金在基本流步骤5  -  ATM  选项,如果ATM  内没有现金,则“提款”选项将无法使用。  

 6aATM  内现金不足在基本流步骤6  -  输入金额,如果ATM  机内金额少于请求提取的金额,则将显示一则适当的消息,并且在步骤6  -  输入金额处重新加入基本流。  

 4a)在基本流步骤4  -  验证帐户和PIN,客户有三次机会输入PIN.如果PIN输入有误,ATM  将显示适当的消息;如果还存在输入机会,则此事件流在步骤3  - 输入PIN  处重新加入基本流。如果最后一次尝试输入的PIN码仍然错误,则该卡将被ATM机保留,同时ATM返回到准备就绪状态,本用例终止。  

 4b)帐户不存在在基本流步骤4  -  验证帐户和PIN,如果银行系统返回的代码表明找不到该帐户或禁止从  

 (9a)该帐户中提款,则ATM  显示适当的消息并且在步骤9  -  返回银行卡处重新加入基本流。  

  (7a)帐面金额不足在基本流步骤7  -  授权中,银行系统返回代码表明帐户余额少于在基本流步骤6  -  输入金额内输入的金额,则ATM  显示适当的消息并且在步骤6  -  输入金额处重新加入基本流。

 (7c)达到每日最大的提款金额在基本流步骤7  -  授权中,银行系统返回的代码表明包括本提款请求在内,客户已经或将超过在24小时内允许提取的最多金额,则ATM  显示适当的消息并在步骤6  -  输入金额上重新加入基本流。  

 (10)记录错误如果在基本流步骤10  -  收据中,记录无法更新,则ATM  进入“安全模式”,在此模式下所有功能都将暂停使用。同时向银行系统发送一条适当的警报信息表明ATM  已经暂停工作.退出客户可随时决定终止交易(退出)。交易终止,银行卡随之退出。  

 “翘起”  ATM  包含大量的传感器,用以监控各种功能,如电源检测器、不同的门和出入口处的测压器以及动作检测器等。在任一时刻,如果某个传感器被激活,则警报信号将发送给警方而且ATM  进入“安全模式”,在此模式下所有功能都暂停使用,直到采取适当的重启/重新初始化的措施。  

 PIN  有误  

 基础数据  

     PIN:4987  

     账号:809498  

     账户余额:自由假设  

     ATM内现金:自由假设  

样式TC

(测试用例)ID

场景/条件PIN

帐号输入的金额/选择的金额

帐面金额ATM内的金额

预期结果

CW1

498786

5000

50000

成功提款,帐户余额被更新为450.00

 

2.一个测试人员具备的素质

测试人员应该具有的素质包括:

一、踏实细心和积极主动

        我觉得作为一名测试人员首先要踏实细心。测试人员每天都要面对着枯燥的程序,从事着大量的重复工作,还要尽量发现产品中的bug。如果不踏实,你就坐不住,总想干别的,就无法净下心来想用户有可能怎么用,需求对产品是怎么要求的,现在产品中是怎么做的,哪里可能存在问题。不细心,就特别容易一些产品中微笑的错误,而恰恰就是这些错误是最影响产品形象的问题。至于积极主动就不多说了。这是每个人都应该具有的素质。

二、怀疑的精神

        不抱着怀疑一切的态度就不是一名合格的测试人员。经过你手测试的产品面对的是直接用户。你不认真负责,不抱着怀疑一切的态度。总想着这个功能本版没动应该没什么问题,这个功能没什么用户用不用认真测了。这样发出的产品,我是不敢让用户用。因为用户用起产品来是千奇百怪,有些用户的水平和对产品的理解比咱们还要深。所以一定要抱着怀疑一切的态度,认为产品每个功能都可能有问题,认真地测试产品的每一个测试点。

三、协作和团队感

        协作和团队感也是十分重要的。要意识到测试、开发、需求是一个团队,一个整体。离了谁,产品的质量都无法保证。诚然有个别开发人员责任心不强,经常将未经任何验证的代码编译后发给测试进行验证。耽误了测试人员不少的时间。但越这样,测试人员越应该负责,否则产品发出去影响的是公司的形象。

        还有个别开发人员开不起测试。此时就需要你通过各种方法去证明你自己的能力。比如测试出他根本就没考虑过的问题等等。以实际行动证明你离不开我,咱们是一个水平的。只有这样加强协作和团队建设,加强整个团队的质量意识,才能提高开发效率,保证产品质量。

四、自我提高和总结的能力

        测试人员经常很迷茫,不知道自己的发展方向在哪里。测试技术还是专业知识。领导们所谓的个人发展方向考虑也经常是画一个饼在那里。这时就只能靠我们自己了。看你想今后从事哪方面的工作。一般情况下,如果升不到管理层就只有两条路可选了。一是业务精通,将来可以向需求或是售前、实施方向发展。一是技术精通,多掌握几种测试工具,有能力可以学习一些编程方面的知识。将来还继续从事测试方面的工作。随着中国软件开发的规范化,这条路也是很有发展的。

        另外,我觉得作为一名合格的测试人员,一定要注意进行总结。通过总结可以对自己的工作进行一个回顾分析,看看那些做得不错,下次还继续这么做。那些工作还有改进的余地。对自己能力的提高是一个很好的帮助。

五、洞察力  思维要灵活。

六、沟通的能力和技巧

3.黑白盒测试的区别

        首先纠正这个问题不属于“硬件”类的

        什么是黑盒测试和白盒测试?

        任何工程产品(注意是任何工程产品)都可以使用以下两种方法之一进行测试。

        黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。

        白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。

        软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒    测试主要是为了发现以下几类错误:

 

        1、是否有不正确或遗漏的功能?

        2、在接口上,输入是否能正确的接受?能否输出正确的结果?

        3、是否有数据结构错误或外部信息(例如数据文件)访问错误?

        4、性能上是否能够满足要求?

        5、是否有初始化或终止性错误?

        软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是想对程序模块进行如下检查:

        1、对程序模块的所有独立的执行路径至少测试一遍。

        2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。

        3、在循环的边界和运行的界限内执行循环体。

        4、测试内部数据结构的有效性,等等。

        

        以上事实说明,软件测试有一个致命的缺陷,即测试的不完全、不彻底性。由于任何程序只能进行少量(相对于穷举的巨大数量而言)的有限的测试,在未发现错误时,不能说明程序中没有错误。

 

4.黑盒测试方法是什么?

        黑盒测试方法主要有等价类划分边值分析因—果图错误推测等,主要用于软件确认测试。

5、白盒测试的方法?

        白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。

6.什么是集成系统单元测试

        集成测试,也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图〕组装成为子系统或系统,进行集成测试。实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现

 

        系统测试是将已经确认的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案.。它的任务是尽可能彻底地检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统"做得怎样?"。这阶段又可分为三个步骤:模块测试,测试每个模块的程序是否有错误;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。该阶段结束应交付测试报告,说明测试数据的选择,测试用例以及测试结果是否符合预期结果。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。

系统测试的对象不仅仅包括需要测试的产品系统的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。因此,必须将系统中的软件与各种依赖的资源结合起来,在系统实际运行环境下来进行测试

单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。

 

7.什么叫等价类划分边界值、错误推测、因果法

等价类划分

  是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法.

  1)划分等价类:等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.<SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-


TAG:

 

评分:0

我来说两句

Open Toolbar