QTP如何识别Web元素

时间:2011-11-10 14:57:43

标签: qtp

我想获得有关网络元素的信息。此Web元素始终显示在页面上。但是QTP无法识别,因为有很多具有相同类的web元素。默认情况下,QTP用于通过 InnerText 属性识别此Web元素,但在上一次构建中 InnerText 变为动态变化。并且所需类的web元素的数量正在从构建变为构建。 你知道吗,我怎么能帮助QTP识别这个对象?我试图添加x和y绝对和相对坐标,但它没有用。

1 个答案:

答案 0 :(得分:2)

按位置识别元素非常脆弱,应尽可能避免。

您的问题没有包含足够的信息以便给出具体的答案,但以下是在一般情况下如何实现对象识别:

您必须找到一些属性组合,这些属性使描述具有唯一性和健壮性。如果这很难做到,您可以使用以下高级对象识别技术。

  1. 默认情况下,QTP将所有网络元素直接嵌套在PageFrame下,但可以在任何其他网络元素下嵌套对象。如果您的元素包含在另一个元素中,您可以将其标记为拖放到所述容器下的对象存储库中,那么描述只需要对容器的其他后代元素是唯一的
  2. 假设您正在使用QTP 11(或更高版本),您可以使用视觉关系识别。这在识别对象时非常有用(有关详细信息,请参阅文档)。
  3. 如果所有其他方法都失败了,您可以使用序号标识符,如果3个元素与描述匹配,那么您要查找的元素总是第二个,您可以在对象存储库的序号标识符部分添加此信息。