下面的列表描述了请求的级别:
操作 | 方法 |
---|---|
处理低级别事件 | processMouseEvent |
定位拖动操作的目标 | getMethodSpecForPoint |
验证点支持 | getTestDataTypes getTestData getProperties getStandardProperties getProperty |
层次结构方法 | getMappableParent getParent getChildren getMappableChildren getOwner getOwned |
识别支持 | getRecognitionProperties shouldBeMapped getRole getTestObjectClassName getRecognitionPropertyWeight |
通过使用录制的识别属性,如果测试域可以在 Functional Tester 客户端录制的对象映射层次结构中找到目标对象,那么 Functional Tester 客户端发送请求到所有测试域。
结果 | 操作 |
---|---|
未找到目标对象 | 抛出异常,未找到测试对象。 |
找到几个目标对象 | 对象查找分数用于确定优胜者,找不到优胜者时,此分数不确定。 |
未找到唯一的测试对象 | 回放操作方法会在代理上被调用。例如,录制的回放操作可能是 click() 方法。 |
在模糊阈值内找到多个测试对象 | 抛出模糊异常。 |
Functional Tester 使用识别属性和控件层次结构来识别控件并提供接口。此信息收集存储在对象映射中。回放期间,存储的信息将用来唯一识别 UI 元素。需要时,Functional Tester 还会收集有关屏幕坐标、控件属性和数据、反射详细信息以及控件各部分的信息。Functional Tester 将带有收集的信息的 UI 元素作为一个测试对象提交给脚本端。
录制用户操作(如鼠标单击)时,双击或拖动会作为 TestObject 方法分别录制到测试脚本中。例如,button().click(atPoint(10,10))。回放期间,使用对象映射中存储的信息和在此基础上执行的用户找操作,Functional Tester 会查找相应的 TestObject 方法。