正文

软件测试---白盒测试指南(一一)2007-06-27 12:52:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/lym51/27156.html

分享到:

8.1).  ValubleObject:数值对象

一个VO类包装一组代表业务含义的数据,负责在系统各层之间传递业务数据。通常一个VO对应一个数据库表,但也可以对应多个数据库表,或对应一个数据库表的部分字段。

   

序号

测试项

测试内容

质量保证标准

问题属性

出错频率

VO1

继承性

该类是否继承于VO

正确性

错误

 

VO2

get()set()方法是否齐全

VO类是否包含每个需要持久化属性的setXXXgetXXX方法。

set方法中是否对属性进行合法性校验,校验失败抛出ValidationException异常

正确性

错误

 

VO3

构造子

该类应包含无参构造子、只含参数OID的构造子

正确性

错误

 

VO5

参数

全参构造子中参数的顺序是否与set语句的顺序一致?(去掉)

正确性

错误

 

VO6

语句体

在每个set方法中是否有修改对应属性的语句体?

正确性

错误

 

VO7

语句体

在每个get方法中是否有返回对应属性的语句体?

正确性

错误

 

VO8

空值问题

所有为保存操作员的录入数据而创建VO对象的类属性应初始化为null,直到操作员录入数据时才为相应属性分配空间和赋值。在保存到数据库时,把空属性(null)映射为数据库相应字段的null

 

 

 

VO9

IntegerDouble包装类型

由于JavaPrimitive Type类型(如intdouble)不是对象,所以不能使用它们作为类属性类型,应该采用对应的IntegerDouble等相应的包装类型。

 

 

 

 

 

8.2). BO业务对象层:

每个BO类都继承BusinessObject类。BO对象通过操纵DMO对象和其他BO对象完成业务逻辑。

 

序号

测试项

测试内容

质量保证标准

问题属性

出错频率

BO1

 BO类中是否存在名称相同且参数个数相同的方法

一个BO类中不能有名称相同且参数个数相同的两个方法同时存在。因为目前中间件生成工具处理此情况存在问题

 

 

 

BO3

事件监听器和处理事件

不建议使用可视化进行事件处理,请手工注册事件监听器和处理事件

因为可以减少不必要的代码

 

 

 

B4

打印异常

所有异常应打印出来,可使用下述语句:

e.printStackTrace(System.err);

 

 

 

B5

抛出异常

BO的所有业务方法都必须抛出异常:java.rmi.RemoteException;否则将不能生成EJB辅助代码

 

 

 

B6

BO对象中使用其它BO对象或环境变量时

BO对象中如要使用其它BO对象或环境变量,必须使用getBeanHome()getEnvProperty()方法获得,不要直接使用JNDI查询。使用其它BO对象的方法代码示例如下:

              BO2Home home = getBeanHome(BO2Name, BO2Home.class);

              BO2 bo2 = BO2Home.create();

 

 

 

B7

EJB规范

基类BusinessObject包含了SessionBean接口中的setSessionContext()ejbCreate()ejbActivate()ejbPassivate()ejbRemove()方法。这是提供给EJB Server的调用接口,不要在你的BO类中调用这几个方法。

 

 

 

 

B8

工具生成代码是否可用

CodeSeed为一个数据库表生成代码时,你可以选择包含BO类以及homeremote接口、BO_Client(客户端代理)。所有这些代码演示系统各层之间的调用关系,这些类是否根据业务要求加以调整

 

 

 

 

 

B9

BO类的设计要遵循大粒度(coarse-grained)的原则

即尽量将一项业务的所有方法放入同一个BO类中。这是设计EJB(尤其是Stateless Session Bean)的一项原则,它能有效的提高对系统资源的利用。具体到我们的编码实践中,虽然CodeSeed针对每个DMO类生成了一个BO类,但我们要将相关的BO类整合成一个BO类。

 

 

 

B10

BO类中方法的命名是否反映该方法的业务含义

虽然CodeSeed生成的代码中将方法命名为insert()update()等,还应将它们更名为addBill()auditBill()等业务名称

 

 

 

B11

BO类是否生成供客户端调用BS端的代码

当设计完BO类后,需调用NC EJB开发工具集生成和部署代码,生成瘦客户端,供客户端调用BS端的代码。

 

 

 

阅读(2514) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册