测试对象映射中的每个对象均有一组识别属性,这组识别属性一般是在录制过程中创建。例如,一个按键有 5 种识别属性:名称、类型、角色、类、索引。回放过程中,要在测试下应用程序中查找某一对象,Rational Functional Tester 会将应用程序中的对象与测试对象中的识别属性进行比较。
每个测试对象的每种属性均有一个相关联的识别权重值,此值在 0 至 100 之间。Rational Functional Tester 使用每个识别属性的此权重值来确定属性的重要性。例如,按键对象的名称、类型、角色和类识别属性的权重为 100,类识别属性的值为 50。
Rational Functional Tester 使用条件为测试下应用程序中的对象分配识别分数。例如,如果对象与测试对象映射中的识别属性完全匹配,对象的分数为 0。如果对象有一属性的权重 (100) 不匹配,那么对象的分数为 10,000。如果对象有两个属性不匹配,其分数为 20,000,以此类推。识别分数越高,匹配度越低。
Rational Functional Tester 要识别测试下应用程序中的对象,对象属性必须与测试对象映射中录制的属性相匹配。如果对象属性不匹配且识别属性的权重较小(假设识别分数在 10,000 以内),那么 Rational Functional Tester 仍将继续进行测试。如果分数超过 10,000 但小于缺省阈值 20,000,Rational Functional Tester 将向日志中写入一条弱识别警告。
也可以输入值来设置识别分数的阈值,如最大可接受识别分数、最低限度的识别分数、不确定的识别分数差别阈值,如果收到的分数大于设定值,那么发出警告。回放期间,测试对象的识别属性的识别分数会增加,分数总计将与 ScriptAssure 页面中设置的阈值进行比较。
如果测试下应用程序中的对象发生了更改,通过使用 ScriptAssure 功能来控制对象匹配灵敏度,仍然可以在 Functional Tester 中回放脚本。
使用 ScriptAssure 的方式有如下两种:
标准 - ScriptAssure Page-Standard 使用滑块控件控制回放期间的对象匹配灵敏度。要在测试下应用程序中的对象之间设置差异容错,请在精确与容错之间移动识别级别滑块。要查找对象和识别属性之间的差异,请在高与无之间移动警告级别滑块。
高级 - ScriptAssure Page-Advanced 设置识别分数的阈值。考虑到要将某个测试对象作为识别的候选对象,可以将分数设置为最大值;也可以请求在侯选对象的分数大于指定阈值时发出警告。