zoukankan      html  css  js  c++  java
  • 关于不同版本软件复用同一个脚本的问题

    由于项目的软件版本会逐渐递增,原来的测试脚本在新版本上执行的时候会出现

    错误1.“The "App(1.0.1.0)-T(0.0.0." Dialog object was not found in the Object Repository.

    错误2.“Cannot identify the object "App(1.0.1.0)-T(1.1.4" (of class Dialog). Verify that this object's properties match an object currently displayed in your application.

    经过我一番研究,发现在下面的语句中

    Dialog("App(1.0.1.0)-T(0.0.0").Activate    

    括号内的“App(1.0.1.0)-T(0.0.0”其实是对象库里的对象名,而不是对象里的属性text:

    (图1)

    因为我尝试将该语句改为Dialog("text:=App(1.0.1.0)-T(0.0.0.1").Activate,运行时会出现错误1。

    (图2)

    但是text的value值也是很重要的,下面请看解释:我们可以查看Tools->Object Identification的Dialog对象的Mandatory Properties属性:

    (图3)

    Mandatory Properties属性是对象模型的必要属性,这个区域设置的属性在实际被测对象与对象库匹配时,只要有一个属性不一致就会报错。

    这里规定匹配dialog时要匹配上text,所以如果text在对象库(如图2)中的值跟实际软件的text值不一致的话,就算是语句Dialog("App(1.0.1.0)-T(0.0.0").Activate中的对象写对了,也会出现错误2.(如果直接在Mandatory Properties属性区域去掉text检测项,运行时有可能出现匹配失败的情况)

    因此总结一下就是:如果软件的版本号改变了,那么对应对象库的某些属性值(比如在上面的项目中指text的值)也要跟着改变。否则在新版本软件中执行该脚本就会出错。

     关于如何更新属性值,可以使用对象库界面上的“Update from Application”功能(如图4),点击该按钮可以随意更新同种类的控件。如果在做项目过程中出现对象其实没有改变,但是仍然由于对象识别不了而脚本报错,也可以使用对象更新功能,更新一下就好了。

    (图4)

  • 相关阅读:
    MySql基础教程(三)——查询训练
    MySql基础教程(二)
    MySql基础教程(一)
    解决Eclipse闪退问题的方法总结
    MySQL图形工具 MySQL GUI Tools的安装使用方法
    MySql5.6版修改用户登录密码
    Windows下MySQL解压版的配置
    js 数组容易弄混的那些方法
    如何使CSS--better(系列二)
    如何使CSS--better(系列一)
  • 原文地址:https://www.cnblogs.com/bangbangjiang/p/3767585.html
Copyright © 2011-2022 走看看