自动化脚本:是否可以在屏幕上查找特定文本?

时间:2012-11-16 11:59:26

标签: java testing automation screenshot robot

我正在使用T-Plan Robot创建自动脚本,这是一种基于Java的工具,可以登录到SUT机器。

目前我正在处理鼠标光标应该点击的方式是使用“waittomatch”或“compareto”方法使用迷你位置截图。

示例:

compareTo(new File[] { new File("C:\\Users\\User\\Google Drive\\Testing\\Automation\\Robot\\ImageTemplates\\LabelFirstName.png") }, "search2");
      if (getContext().getExitCode() > 0) {
          exit(1);
      } else {
mouseClick(new Point(getVariableAsInt("_COMPARETO_CLICK_X"), getVariableAsInt("_COMPARETO_CLICK_Y")));
      }

但是,所有这些匹配都是我期望的元素。字段标签不会经常更改并保持不变,因此脚本始终可以找到它们。

我现在面临的问题是我希望在保存后在屏幕上找到特定的申请人记录。它有一个不断变化的名称,而不是一个固定的名称,所以它不是一个简单的截取屏幕并匹配它的情况。例如,它在结尾添加日期和时间:

type("PrimaryApplicant_" + getVariableAsString("_CURDATE"), "100");

有没有办法将鼠标光标移动到这个确切的文本?

也许可以将这些信息存储为字符串然后将其与屏幕上的内容进行匹配?这是怎么做到的?

希望这是有道理的。如果不展示它就很难解释!

由于

1 个答案:

答案 0 :(得分:0)

如果标签标识符始终为“PrimaryApplicant_ddmmyyyy”,那么您应该能够使用一些只忽略日期的正则表来获取标签,除非我误解了这个问题? (我本来是这个评论而不是答案,但我认为我还没有足够的声誉......)