正文

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

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

分享到:

B12 在BO、DMO类中调用另一个BO对象时是否保证一个事务内的正确实现 在BO和DMO类中,如要使用其它BO对象,必须使用getBeanHome()方法获得。假如BO1的一个方法内要使用BO2,那么示例如下:         BO2Home home = getBeanHome(“BO2Name”, BO2Home.class);         BO2 bo2 = BO2Home.create();         bo2.method1(); 其中,getBeanHome()方法的第一个参数(“BO2Name”)是一个字符串,代表BO2的JNDI名称。我们技术部的中间件默认的JNDI名称由“包名.remote接口名”构成,例如,对上述BO2(假定它位于nc.bs.mypackage包中),默认的JNDI名称是“nc.bs.mypackage.BO2”。 不可直接New一个BO对象的实例,否则中间件将无法控制和确保其事务属性的正确实现       B13 向数据库插入一条记录时,是否为它获得唯一主键(OID) 提供OID的算法由系统管理统一处理,通过在DMO基类的两个接口方法getOID(String pk_corp)和getOIDs(String pk_corp, int amount)提供给业务模块使用。其中,参数pk_corp是此记录所属的公司的主键。如果参数pk_corp为null,则默认为集团公司的数据。       B14 业务级校验 业务级校验方法是否齐全           8.1).  DMO(数据管理对象):     序号 测试项 测试内容 质量保证标准 问题属性 出错频率 DM0 继承类 每个DMO类是否都继承DataManageObject。       DM1 数据库的利用效率 为了提高数据库的利用效率,是否尽量使用PreparedStatement执行SQL操作,不要使用Statement       DM2 DMO类中方法的完整性 1.通常DMO类中应包含insert()、delete()、update()方法。还可以包括其它的查询方法。 2.对一些特殊的继承类,如处理参数设置的DMO类,可能不需要insert()和delete()方法。       DM3 数据库连接 在DMO类中,数据库连接必须通过getConnection()方法获得,不允许直接使用JNDI查询       DM4 数据库资源的获得和释放 应在DMO类每个方法的获得Connection、PreparedStatement两种数据库资源,并在方法的结束位置释放数据库资源。         DM5 库表主键值 在DMO类的一个方法中向数据库插入(insert)数据时,是否使用getOID()方法获得一个自动产生的库表主键值。         DM7 是否尽量使用VO数组 如果DMO类中的方法需要返回业务数据,则通常是VO对象或VO对象的数组(或集合)。当客户端需要多个VO对象时,是否尽量使用VO数组的形式返回,以提高数据库和网络效率,不要将多个VO一个一个的查询和返回         DM9 DMO对象调用另一个BO对象时 如果你在DMO对象中需要使用BO对象(通常是提供公共服务的BO),必须使用getBeanHome获得BO对象的home接口。       DM11 自动生成代码的调整 在CodeSeed生成的代码中包含了delete(VO)、insert(VO)、update(VO)、insertArray(VO[])、queryAll()等方法。是否根据业务需要增加、删除、调整DMO类中的方法。       DM12 参数pk_corp的使用 在DMO中的insert()等方法中,向数据库插入记录时,要通过getOID(String pk_corp)或getOIDs (String pk_corp, int amount)为该记录获得一个记录主键(OID),如果参数pk_corp为null,则默认为集团公司。       DM13 用VO对象写库时 数据库表中加一字段时,执行stmt = con.prepareStatement(sql)后,执行stmt.setString(3, invcl.getInvclasscode()语句中的序号是否与数据库表中字段顺序一致(举例附后)       DM14 条件拚写语句 条件拚写语句是否符合业务逻辑       DM15 DMO类的查询、增加、修改方法 查询:执行完查询Sql语句ResultSet rs = stmt.executeQuery()后,是否对查询vo对象正确地赋值,且赋值属性是否有遗漏 增加:执行完插入Sql语句stmt = con.prepareStatement(sql); 是否对stmt正确地赋值,且赋值属性是否有遗漏,然后执行stmt.executeUpdate()更新数据库 更新:执行完更新Sql语句stmt = con.prepareStatement(sql); 是否对stmt正确地赋值,且赋值属性是否有遗漏,然后执行stmt.executeUpdate()更新数据库      

阅读(2586) | 评论(0)


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

评论

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