使用RationalFunctionalTester测试自定义Java控件:getProperty与invoke方法

0 下载量 80 浏览量 更新于2024-08-30 收藏 357KB PDF 举报
"本文主要介绍了如何使用IBM Rational Functional Tester(RFT)的getProperty和invoke方法来测试定制的Java控件,这些控件可能不在标准Java库中。文章内容包括对象图(ObjectMap)的使用、获取控件属性、调用控件方法、复杂案例的处理以及最佳实践。通过这两个方法,测试人员可以对非标准控件进行自动化测试,即使RFT无法直接提供相应的接口。文中还以一个Java applet示例,即LotusNotes中的Editor applet,来阐述这个问题,并指出对于这类自定义控件,RFT提供了getProperty和invoke方法作为解决之道。" 在自动化测试中,遇到定制的Java控件是一个常见的挑战,因为这些控件可能具有独特的行为和方法,不被常规的自动化工具所支持。Rational Functional Tester(RFT)为这种情况提供了解决方案,主要依赖于`getProperty`和`invoke`两个方法。 1. **对象图(ObjectMap)**:在RFT中,对象图是一种映射机制,用于关联UI对象与测试对象的属性。它允许测试脚本通过对象名称而不是直接引用控件来操作它们,简化了测试代码的编写和维护。当处理定制控件时,可以在对象图中定义这些控件,以便于后续的测试步骤。 2. **获取控件属性**:`getProperty`方法用于从控件中获取特定属性的值。这对于检查控件的状态或读取其内容至关重要。例如,对于定制的Java applet,可能需要获取按钮的文本、颜色等属性,即使RFT没有预定义的接口来获取这些信息,`getProperty`可以动态地获取这些属性。 3. **调用控件方法**:`invoke`方法则用于执行控件上的方法。在RFT中,可以使用此方法模拟用户交互,如点击按钮、选择列表项等。对于那些非标准控件,`invoke`可以用来执行自定义控件特有的操作,比如在Editor applet中激活某个特定功能。 4. **一个更复杂的案例**:在复杂的场景下,可能需要将多个组件组合在一个小窗口中,这时可以创建一个自定义的类来封装这些组件的操作,通过`getProperty`和`invoke`在测试脚本中调用该类的方法,实现对整个组件集合的控制。 5. **最佳实践**:在实施自动化测试时,应遵循一些最佳实践,如确保测试脚本的可读性、可维护性和可扩展性,合理使用对象图,以及适当地记录和处理异常情况。 6. **参考资料**:文中提到的参考资料可能包含了更多关于使用RFT进行自动化测试的详细信息,包括如何有效地应用`getProperty`和`invoke`,以及针对定制控件的其他策略。 通过理解并熟练运用`getProperty`和`invoke`,测试人员可以克服非标准控件带来的自动化测试难题,提高测试覆盖率,确保软件质量。在实际工作中,不断学习和掌握新的工具和技术,以及对特定控件的深入理解,是提升自动化测试效率的关键。