软件工程基础:面向对象单元测试_第1页
软件工程基础:面向对象单元测试_第2页
软件工程基础:面向对象单元测试_第3页
软件工程基础:面向对象单元测试_第4页
软件工程基础:面向对象单元测试_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

补充:面向对象单元测试最小的可测试单元是类,包含一组不同操作。对面向对象软件的类测试等价于结构化软件的单元测试。类测试方法:基于故障的测试、随机测试和划分测试。基于故障的测试设计最有可能发现似乎可能的故障的测试。对于每个可能的故障设计迫使不正确的表达式失败的测试用例。如果分析和设计模型可以提供对什么可能出错的洞察,则基于故障的测试可以以相当低的工作量发现大量的错误。随机测试对类中操作的随机顺序进行测试,以测试不同的类实例生命历程。划分测试采用划分测试可以减少测试类所需的测试用例数量。如:

基于类状态的划分基于属性的划分基于类型的划分例子:Junit框架(Java类测试)Junit框架使用junitMyClassTestCaseexercise1..*TestRunnerrun1..*MyClassTesttestMethod()…setUp()

tearDown()Method()TestCaseClassMyClassTestextendsTestCase{publicFooTest(Stringmethodname){super(methodname);}protectedvoidsetup(){//产生对象

varC=newMyClass(…);//…..}protectedvoidtearDown(){}//删除对象

publicvoidtestMethod(){//测试驱动程序

//……

assertEquals(varC.method(),…)}PublicstaticTestsuite(){

TestSuitesuite=newTestSuite();suite.addTest(newMyClassTest(“testMethod”));returnsuite;}publicstaticvoidmain(String[]args){

junit.textui.TestRunner.run(suite());}}//endMyClassTest面向对象集成测试由于面向对象软件没有层次结构,结构化方法的集成策略没有意义。面向对象集成测试策略:

基于线程的测试:集成对回应系统的一个输入或事件所需的一组类,每个线程被集成并分别测试,应用回归测试以保证没有产生副作用。

基于使用的测试:通过测试独立类而开始构造系统,然后测试依赖类,尽可能避免使用驱动器和桩。面向对象的集成测试能够检测出相对独立的单元测试无法检测出的那些类相互作用时才会产生的错误。面向对象系统测试系统测试时,应该参考OOA分析的结果,对应描述的对象、属性和各种服务,检测软件是否能够完全“再现”问题空间。系统测试不仅是检测软件的整体行为表现,从另一个侧面看,也是对软件开发设计的再确认。测试用例可以从对象/行为模型和事件流图中导出。测试工程师对一个系统进行有效的测试所需要的技能绝对不比进行软件开发需要的少,事实上,测试者将获得极

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论