欢迎来到天天文库
浏览记录
ID:39284967
大小:94.97 KB
页数:3页
时间:2019-06-29
《练习和实验:面向对象技术的类状态测试》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、练习和实验:面向对象技术的类状态测试一.下图是选课系统中的课程(course)类的状态图,根据下图完成1.给出类course的定义,包括属性和方法。2.例出所有需要测试的类状态3.列出所有需要测试状态的事件和转换4.从课程开始状态,到没有分配老师的状态,然后触发事件addProfessor到分配老师的状态,然后学生选课人数达到10人到满员的状态,最后触发closeRegistration事件到提交状态。请为这个状态场景的测试,开发一个测试驱动类,要编写出伪码。1.Course类定义Classcourse{Studentnumberintegerprofessorstri
2、ngissubmitbooleanNewCourse()AddProfessor()RemoveProfessor()AddStudent()RemoveStudent()Close()CloseRegistration()Cancel()Getprofessor()Getstudentnum()Getissubmit()}2.类的测试状态Unassigned,Assigned,Full,Cancel,Committed3.测试状态的事件和转换状态A事件和转换状态BUnassignedAddProfessor()AssignedRemoveProfessor()Unas
3、signedAddStudent()FullUnassignedClose()CancelCloseRegistration()Cancel()AssignedAddStudent()FullAssignedClose()CancelCancel()AssignedClose()committedCloseRegistration()fullClose()committedCloseRegistration()fullCancel()cancel4.状态场景的测试类classtestscenarioStudentNumProfessorIsSubmitstep1OKBo
4、oleanstep2OKBooleanstep3OKBooleanstep4OKBooleanmain(){testcase=instantiatenewcourse()testcase.addprofessor(“zhangshan”)professor=testcase.getprofessor()ifprofessor=”zhangshan”thenstep1OK=trueelsestep1OK=falseendiffor(I=1;10;I++){testcase.addstudent()}studentnum=testcase.getstudentnum()if
5、studentnum=10thenstep2OK=trueelsestep2OK=falseendiftestcase.close()issubmit=test.getissubmit()ifissubmit==Truethenstep3OK=trueelsestep3OK=falseendififstep1OK=trueandstep2OK=trueandstep3OK=truethenreturntrueelsereturnfalseendif}
此文档下载收益归作者所有