Selenium + AutoIT。Windows测试自动化Windows

我叫Ivan Sidorenko,我是Digital Design的测试工程师。

我的任务是使用Java中的Selenium WebDriver工具为我们的项目之一开发自动测试。您可以在我的上一篇文章中了解有关此内容的更多信息

。Selenium是一种用于在各种浏览器中自动化Web应用程序的工具。在自动测试的开发过程中,我遇到了一个场景,您需要与Windows窗口进行交互才能下载文件。不幸的是,Selenium无法使用Windows窗口,因此必须找到替代解决方案。



在搜索过程中,选择取决于AutoIT。该工具旨在自动执行Microsoft Windows中的任务。在本文中,我将介绍使用AutoIT解决任务的方法。假定您已经使用连接的Selenium WebDriver部署了开发环境。作为示例,将使用用于将照片上传到照片编辑站点之一的窗口。因此,让我们开始吧。

1. 下载并安装AutoIT。2

.例如,在此处转到下载照片的服务之一在这里,您需要单击“下载照片”按钮以获取这样的Windows窗口



。3.现在转到AutoIT3文件夹并选择Au3Info.exe。



4. Au3Info是一个工具,可让您获取有关所需的自动化窗口的信息。要获取有关特定元素的信息,只需从Finder工具块拖动到窗口元素上即可。我们将获取



`` 文件名''元素的输入字段属性的值。要在AutoIT脚本中使用,我们需要属性Title ='Open'和Class ='

Edit'5.转到AutoIt3 \ SciTE文件夹并选择SciTE,这里我们将编写一个简单的脚本,



这里ControlFocus是一种方法,将焦点放在窗口元素“文件名”上

-第一个参数是所需窗口的“标题”值,在我们的例子中是“ Open”
-第二个参数是可选的
-第三个参数是属性Class和Instance的值的组合,即 原来是Edit1



ControlSetText-一种将文本输入到元素“ File Name”的输入中的方法

  • 第一个参数是Title的值
  • 第二个参数是可选的
  • 第三个参数是Class和Instance属性的值的组合,即 原来是Edit1
  • 第四个参数是将在输入中输入的文本,这里我们将路径写入将附加的文件

ControlClick-单击“打开”按钮

  • 第一个参数是Title的值
  • 第二个参数是可选的
  • 第三个参数是Class和Instance属性的值的组合,即 它变成了Button1



6.将脚本另存为Autoit。7



.现在,要运行脚本,需要对其进行编译。要编译脚本,有两个选项-用于64位系统或用于86。为您的操作系统选择适当的选项。



8.我们得到了一个已编译的AutoItScript.exe文件。我们将检查其性能-转到< www.iloveimg.com/zh-cn/photo-editor “>照片编辑服务,然后单击“选择图像”。现在运行AutoItScript.exe



9.现在,您可以添加此脚本例如在Selenium中,对于Java,这样的添加看起来像这样:

Runtime.getRuntime().exec(":\\auto\\AutoItScript.exe");

该解决方案非常稳定。同样,由于我们最终得到一个可执行文件,因此该解决方案可以与其他编程语言一起使用。缺点是无法在无头模式下使用这种脚本,无头模式是浏览器无法启动的模式。

希望本文对自动化测试有所帮助!

All Articles