预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共60页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

软件测试(cèshì)面向对象测试(cèshì)技术一、面向对象测试(cèshì)概述一、面向对象测试(cèshì)概述一、面向对象测试(cèshì)概述一、面向对象测试(cèshì)概述一、面向对象测试(cèshì)概述面向对象软件开发方法与传统(chuántǒng)的软件开发方法的区别:面向对象软件开发过程(guòchéng)面向对象测试(cèshì)面向对象测试(cèshì)二、面向对象模型(móxíng)二、面向对象模型(móxíng)二、面向对象模型(móxíng)三、面向对象分析和设计(shèjì)的测试三、面向对象分析和设计(shèjì)的测试三、面向对象分析和设计(shèjì)的测试三、面向对象分析和设计(shèjì)的测试三、面向对象分析和设计(shèjì)的测试五、面向对象编程的测试(cèshì)五、面向对象编程的测试(cèshì)面向对象程序是把功能的实现分布在类中。能正确实现功能的类,通过消息传递来协同实现设计要求的功能。正是这种面向对象程序风格,将出现的错误能精确的确定在某一具体的类。因此,在面向对象编程(OOP)阶段,忽略类功能实现的细则(xìzé),将测试的目光集中在类功能的实现和相应的面向对象程序风格,主要体现为以下两个方面(假设编程使用C++语言):☆数据成员是否满足数据封装的要求☆类是否实现了要求的功能六、面向对象的单元测试六、面向对象的单元测试1、单元测试的内容面向对象的单元就是类,单元测试实际测试的就是对类的测试。类测试的目的主要确保一个类的代码(dàimǎ)能够完全满足类的说明所描述的要求。2、单元测试开始的时间单元测试开始的时间一般在完全说明了这个类,并且准备对其编码后不久。单元测试开始时要制定一个测试计划。在反复迭代的过程中,类的实现和说明在进程中可能会发生变化,所以应该在软件的其他部件使用该类之前(zhīqián)对类进行测试,同时还有必要执行回归测试。3、单元测试(cèshì)的人员由另一个类的开发人员编写测试(cèshì)计划,由该类的开发人员完成测试(cèshì),避免对类说明的错误理解4、单元测试方法单元测试的方法有代码检查和执行测试用例。在某些情况下,用代码检查代替基于执行的测试方法是可行的,但是,代码检查也存在以下两个不利之处:代码检查容易受人为因素影响代码检查在回归测试方面(fāngmiàn)明显需要更多的工作量类测试按顺序分为以下三部分:基于属性的测试:类中所有属性的设置和访问的测试。基于服务的测试:测试类中的每个方法。基于状态的测试:除了类的每个操作要进行测试,类的行为(xíngwéi)也要进行测试,所有能引起状态变化的事件都要模拟到。类的行为(xíngwéi)通常可用状态图来描述,在利用状态图进行类测试时,可考虑覆盖所有状态、状态迁移等覆盖标准,也可考虑从初始状态到终止状态的所有迁移路径的覆盖。5、方法的测试在测试类的功能实现时,应该首先保证类成员函数的正确性。测试时主要考虑封装在类中的一个方法对数据进行的操作,可以采用传统的模块测试方法,通过向所在对象发消息来执行,它的执行与状态有关。传统的针对模块的设计测试用例的技术,如等价划分、边界值分析、因果图、逻辑(luójí)覆盖、路径覆盖等方法,仍然可以作为测试类中每个方法的主要技术。在面向对象的系统中的方法,是通过消息来驱动执行的,要测试类中的方法,必须用一个(yīɡè)驱动程序对被测方法发送一条消息以驱动其执行,如果被测模块或方法中调用了其他模块或方法,则需要设计一个(yīɡè)模拟被调子程序功能的存根程序,驱动程序、存根程序及被测模块或方法组成一个(yīɡè)独立的可执行单元。在面向对象软件中,在保证单个方法功能正确的基础上,还应该处理(chǔlǐ)好测试方法之间的协助关系。为了提高方法的重用性,设计方法的一个准则是提高方法的内聚,即在一个方法中只完成单个功能。对于继承过来的方法,也要加以测试。运行测试用例的时候,必须提供能够实例化的桩类,以及起驱动器作用的“主程序”类,来提供和分析测试用例。6、测试程度可以根据已经测试了多少类的实现和多少类的说明来衡量测试的充分性。通常需要将这两者都考虑到,希望测试到操作和状态转换的各种组合情况。一个对象(duìxiàng)能维持自己的状态,而状态一般来说也会影响操作的含义。类层次的分割测试这种测试可以减少用完全相同的方式检查类测试用例的数目。这很像传统软件测试中的等价类划分测试。分割测试又可分三种:基于状态的分割,按类操作是否改变类的状态来分割(归类);基于属性的分割,按类操作所用到的属性来分割(归类);基于类型的分割,按完成(wánchéng)的功能分割(归类)。举例(jǔlì)举例(jǔlì)举例(jǔlì)七、面向对象的集成(jíchénɡ)测试基于单元测试对成员