创建属性验证点

使用属性验证点来测试应用程序内对象的属性。记录验证点时,将创建数据的基线。然后每次回放脚本时,将比较这些数据以了解是否发生了任何更改(无论是有意的还是无意的)。这对于识别可能存在的缺陷十分有用。您可以在记录脚本时创建验证点,也可随时在脚本中插入验证点。

开始之前

在创建验证点时,您可以使用数据池引用(而非字面值)来提供变量数据以使您的测试更加具有实际意义。可在属性验证点中使用字符串、数字、颜色或布尔值的数据池引用,而非字面值。 对于属性验证点的更加复杂的对象(如字体、点或矩形),不能使用数据池引用代替字面值。
注: 如果 SAP 应用程序中的某个更高级别控件包含多个子控件,请避免在该控件上创建属性验证点。
先决条件:
  • 测试应用程序已启动
  • 如果您正在向现有脚本插入验证点,请打开脚本,将光标置于脚本中要插入验证点的位置。

关于此任务

要创建或插入属性验证点:

过程

  1. 打开“验证点和操作”向导。
    • 如果要在记录时创建验证点,请单击“记录监视器”工具栏上的插入验证点或操作命令按钮 插入验证点或操作命令
    • 如果要在脚本中插入验证点,请单击 Functional Tester 工具栏上的向活动 Functional Tester 脚本插入验证点按钮 插入验证点或操作命令
  2. 在“验证点和操作”向导的选择对象页面上,使用任一对象选择方法来选择应用程序中的对象。 有关更多信息,请参阅选择对象页面相关主题。
    注: 在缺省情况下,将选中“选择对象”页面上的选择对象后前进到下一页复选框。在您选择对象后,将显示“验证点和操作”向导的下一个页面。如果您清除选择对象后前进到下一页复选框,选择对象后您必须单击下一步继续至下一页。
  3. 选择操作页面上,单击执行属性验证点选项,然后单击下一步
  4. 在“插入属性验证点命令”页面上,执行以下步骤:
    1. 如果要为属性验证点包括所选对象的子代,请在包括子代字段中单击直接全部
    2. 验证点名称字段中,接受缺省建议,或输入新名称。 该名称必须遵循标准 Java 命名约定。缺省名称基于您选择测试的对象名和数据值。
    3. 如果需要,选中使用标准属性复选框。 标准属性是在不同平台和浏览器上均能使用的属性。非标准属性可能包括特定于平台的属性。
    4. 使用包含重试参数设置回放期间验证点的重试时间,以检查应用程序中是否存在该验证点。如果回放不能立即在应用程序中找到验证点,重试选项便非常有用。 要设置重试时间,可使用缺省值,或设置您选择的时间。 最长重试时间是 Functional Tester 等待验证点可供重新测试的最长时间(秒)。重试时间间隔是 Functional Tester 在等待期间检查验证点的时间间隔(秒)。
    5. 单击下一步
  5. 在“验证点数据”页面上,编辑所需属性数据。 测试对象属性及其值以树表格式显示。可在属性列中编辑要加以测试的属性,并在列中编辑属性值。
    • 要编辑在回放期间要加以测试的对象属性列表,请使用每个属性旁边的复选框。每次回放带有该验证点的脚本时,将测试选中的属性。使用全部选中全部取消选中按钮以选择或清除列表中的所有属性。
    • 要编辑属性值,双击“值”单元格并对其进行编辑。
  6. 可选: 要将数据池引用(而非字面值)用于属性验证点:
    1. 属性列中,选择属性,右键单击,然后单击将值转换为数据池引用。 将打开“数据池引用转换器”对话框。
    2. 为数据池变量输入新名称,或单击数据池变量箭头以选择验证点要在数据池中引用的变量
    3. 还可以选中将值添加到数据池中的新记录复选框以将验证点的值添加到数据池中的新记录(行)。
    4. 单击确定
  7. 单击完成
    注:
    • 如果在“验证点数据”页面中没有为验证点选择任何属性而直接单击完成,将会显示警告。
    • 您还可以通过手动脚本编制创建验证点。有关更多信息,请参阅添加手动和动态验证点主题。 另请参阅 API 参考主题中的 vpManual() 和 vpDynamic() 方法。 您的脚本可以访问与验证点相同的信息。请参阅 TestObject getProperty() 和 getTestData() 方法。
    • 使用验证点编辑器,您可以将属性值更改为正则表达式或数字范围,或将其中之一更改回其原始属性值。有关更多信息,请参阅将完全匹配属性替换为模式主题
    • 在脚本中不使用记录器而插入验证点的情况下,测试对象不会插入到脚本中。您必须手动插入要为其创建验证点的测试对象。例如,如果在不使用记录器的情况下插入图像验证点,那么将插入 performTest( Screen_imageVP() ); 脚本。您必须将 RootTestObject.getScreenTestObject() 包含到脚本中。 脚本必须是 RootTestObject.getScreenTestObject().performTest( Screen_imageVP() );,验证点才能生效。

反馈