消除识别测试对象过程中的二义性情形(3)

发表于:2011-12-13来源:未知作者:娃娃点击数: 标签:
选择合适的对象识别方法 显然,默认的方法拥有丰厚的工具支持。Rational Functional Tester 提供了强大的工具,例如 Test Object Map 和 Script Assure ,可以轻松解决

  选择合适的对象识别方法

  显然,默认的方法拥有丰厚的工具支持。Rational Functional Tester 提供了强大的工具,例如 Test Object Map 和 Script Assure ,可以轻松解决脚本开发的复杂性问题,并降低开发所需的时间。但是,有一些脚本开发员所抱怨的正是简单性。他们认为工具隐藏了一些他们想要控制的细节。find() 方法是灵活和简单的。它使脚本开发员能够更强地控制测试脚本。这就是为什么在脚本开发中它得到广泛的应用,以替换默认方法的原因。基于导航对象识别方法非常有效和简单。有一点非常重要:它几乎可以在任何场所使用。但是,使用 UI 结构还是十分敏感的。

  我们将会向您展示怎样使用 find() 方法,以及替代性的基于导航方法,同时享受使用工具所带来的便捷之处。

  脚本组织的建议

  回忆一下 Rational Functional Tester 对象结构的第一部分。我们知道所有的对象搜索方法默认条件下都是在辅助类中执行。例如,搜索 Place Order 按钮的默认方法如列表 4 所示。

  列表 4. 默认的 Place Order 按钮代码

public abstract class BaseCaseHelper extends RationalTestScript {
	/**
	* PlaceOrder: with default state.
	* .class : javax.swing.JButton
	* accessibleContext.accessibleName : Place Order
	* name : placeOrderButton2
	* .classIndex : 0
	*/
	protected GuiTestObject placeOrder() {
		return new GuiTestObject(getMappedTestObject("placeOrder"));
	}
	
	/**
	* Schubert4_14Jpg: with default state.
	* .class : javax.swing.JLabel
	* iconDescription : Schubert4_14.jpg
	* .classIndex : 2
	*/
	protected GuiTestObject schubert4_14Jpg() {
		return new GuiTestObject(
			getMappedTestObject("schubert4_14Jpg"));
	}
}

  然后您创建一个辅助类,该类扩展了默认的辅助类并超越了默认的方法。它如列表 5 中的代码所示。

  列表 5. 创建辅助类的代码

public class BaseCaseUserHelper extends BaseCaseHelper {
// This method is used to find the button Place Order
public GuiTestObject PlaceOrder() throws TestObjectNotLocatedException{
		// The path we specified to find the button from the album image
		// First move up 3 times, then move down to the fifth child
		String pathString = "P3;C5";
		Path path = null;
		try{
			path = new Path(pathString);
		}catch(IllegalPathStringException illegalpath){
			logError(illegalpath.getMessage());
		}
		
		// schubert4_14Jpg() is object for the cover image
		return new GuiTestObject(
			ObjectFinder.locateTestObject(schubert4_14Jpg(), path));
	}
}
			

  最后,让脚本类扩展用户定义的类。通过这种方法,您不需要编辑任何已存在的对象搜索方法。您只是超越了它们,将已存在的对象搜索方法的最强部分结合起来。

  下载

描述 名字 大小 下载方法
示例脚本
RBAT_Impl.zip
10KB
HTTP

  参考资料

  学习

  查看 Rational Functional Tester 信息中心,在那里,您也可以查看一段短的 演示视频

  调查 Rational Functional Tester Plus,它是一个软件应用程序测试包。

  参与 developerWorks 上 的 Rational Functional Tester 学习路线图,介绍更深入的信息。

  在 IBM Rational 软件交付平台 中了解其它应用程序,包括适用于并行开发和地域分布式团队的协作工具,以及用于架构管理、资产管理、变更和发布管理,集成需求管理、过程和组合管理,和质量管理。您可以在 IBM Rational 在线文档中心 查找产品手册、安装指南以及其它文档。

  访问 developerWorks 上的 Rational 专区,了解有关 Rational 软件交付平台产品的技术资源和最佳实践。

  查找 Rational 基于计算机,基于 Web,以及在线指导课程。训练您的技能,并学习更多有关 Rational 工具的课程,包括入门级和高级课程。在此目录上的课程可进行购买,包括基于计算机的和基于 Web培训。此外,一些“入门”课程是免费的。

  订阅 IBM developerWorks 时事通讯,获得有关最佳的 developerWorks 教程、文章、下载、社区活动、网络广播和事件的每周更新。

  浏览 技术书店,获得有关这些和其它技术主题的书籍。

  获得产品和技术

  下载免费的 IBM Rational Functional Tester 试用版。

  下载 IBM Rational 软件的试用版。

  下载这些 IBM 产品评估版,并着手使用来自于 DB2®,Lotus®,Tivoli®,以及 WebSphere® 的应用程序开发工具和中间件产品。

  讨论

原文转自:http://www.ltesting.net