zoukankan      html  css  js  c++  java
  • selenium 基于Autolt工具对于Windows窗口上传文件操作

    1.在selenium 自动化过程中,时长遇到需要进行上传文件操作。 这里推荐使用Autoit 工具。
    首先下载相关工具: https://www.autoitscript.com/site/autoit/downloads/
    在AutoIt和AutoIt Editor处下拉菜单

    2.点击“AutoIT”下载选项。

    3.点击“Download AutoIt”按钮下载“Autoit”

    4.现在通过点击“Download”按钮下载“Autoit Editor”。

    5.如下所示点击链接。

    6.下载之后我们将会得到如下图所示的两个安装文件,一个是autoit-v3-setup,另一个是SciTE4AutoIt3。


    7.成功安装后,打开AutoIT Editor

    8.打开元素识别器

    9.通过元素识别器查找元素并在AutoIt编辑器上编辑脚本
    在这一部分,我们将看到以下内容,通过AutoIt识别器,如何在文件上传窗口找到元素(元素识别器是一个类似selenium IDE的工具,元素识别器找到窗口GUI或非HTML弹出窗口的元素,并提供元素的属性,比如 title, class, instance),以及如何使用3个方法在AutoIT Editor中编写脚本。
    例子:页面上传图片

    10.打开文件识别器 Au3Info.exe

    现在打开文件上传窗口,点击“选择文件”,这是windows活动

     

     

     

     

    11.我们可以得到属性的值。title=‘打开’, class=‘Edit’ 和 instance=‘1’ 。这些值在步骤4中用于编写AutoIT脚本。

     

    现在打开AutoIT script editor。
    在AutoIT编辑器中,我们选择了“control focus”方法。在上面的步骤3中,元素识别器已经打开并最小化,而且元素已经确定了。现在我们打开元素识别器,并最大化显示。

    现在,我们将通过元素识别器获取上面三种方法的参数值,从“File name”文本框获取’ControlFocus’ 和 ‘ControlSetText’ 方法的参数,从“open”按钮获取“ControlClick”方法的参数值。

    ControlFocus方法参数值:
    此方法将焦点集中到文件上传器窗口的“File name”文本框。
    第一个参数标题为“open”。
    我们忽略第二个参数,这个地方不需要。
    第三个参数控制是class ='Edit '和Instance ='1 '的组合。就是“Edit1”。

    ControlSetText方法参数值:
    这个方法用于定义我们需要在“File name”文本框中上传的文件的路径。换句话说,我们可以说这个方法设置输入的文本为输入元素。
    第一个参数标题为“open”。
    忽略第二个参数,此处不需要。
    第三个参数控制是class ='Edit '和Instance ='1 '的组合。就是“Edit1”。
    第四个参数new text,我们输入需要上传的文件路径。

    ControlClick方法的参数值:
    1、第一个参数标题为“open”。
    2、忽略第二个参数,此处不需要。
    3、第三个参数是class ='Button’和Instance ='1 '的组合。就是“Button1”。


    下面可以看到,处理文件上传程序的AutoIT脚本已经完成。现在可以关闭元素识别器并将脚本以“FileUpload”的名字保存在给定位置

    现在不能直接执行这个脚本,首先需要编译这个脚本。对于编译这个脚本,你有两个选项 " compile script x64 " and " compile script x86 ",如果你是32位的机器就选择 " compile script x86 “,64位机器就选择” compile script x64 "。


    如下图所示,编译后生成文件“FileUpload exe”。现在就可以在selenium webdriver程序中使用这个文件。

     

    现在我们将在Selenium webdriver中使用这个AutoIT脚本。检查后面的输出。

    原文链接:https://blog.csdn.net/qq_35451939/article/details/83029946

  • 相关阅读:
    供安全工程师实用的SOC模型
    Windows-NTFS-ADS在渗透测试中的利用
    域安全的基础知识上
    Linux下利用动态链接劫持库函数并注入代码
    多线程sshd爆破程序代码
    Windows NTLM Hash和Hash传递、Key传递攻击
    替换linux系统文件etc下passwd文件的字段获取真正的root权限
    攻防对抗中常用的windows命令(渗透测试和应急响应)
    获取权限后权限维持的方法
    RocketMQ启动mqbroker.cmd没反应
  • 原文地址:https://www.cnblogs.com/longronglang/p/13197076.html
Copyright © 2011-2022 走看看