23-selenium-AutoIt文件上传

简介: 23-selenium-AutoIt文件上传

前言

  • 做web ui自动化时,有些非input标签且使用电脑系统是Windows时,可使用autoit编写脚本上传文件

AutoIt下载及安装

  • 一路next安装即可

AutoIt菜单功能介绍

  • SciTE Script Editor 编辑器,在这里编写AutoIt脚本
  • AutoIt Windows Info 元素定位器,用于识Windows控件信息
  • Run Script 执行AutoIt脚本
  • Compile Script to.exe 将AutoIt生成 .exe 可执行文件

AutoIt使用

  • 环境准备:csdn上传资源

  元素定位

  • 双击AutoIt window Info
  • 用鼠标按住Find Tool下的图标,然后拖拽到你想定位的元素上

   编写脚本

  • 打开 SciTE Script Editor编辑器,开始写脚本
1. WinActivate("打开");
2. ControlSetText("打开", "", "Edit1", "baidu.png" );
3. Sleep(2000);
4. ControlClick("打开", "", "Button1");

   常用语法

  • WinActivate("title") 聚焦到指定活动窗口
  • ControlFocus ( "title", "窗口文本", controlID) 设置输入焦点到指定窗口的某个控件上;
  • WinWait ( "title" , "窗口文本" , 超时时间 ) 暂停脚本的执行直至指定窗口存在(出现)为止;
  • ControlSetText ( "title", "窗口文本", controlID, "新文本" ) 修改指定控件的文本;
  • Sleep ( 延迟 ) 使脚本暂停指定时间,单位是毫秒;
  • ControlClick ( "title", "窗口文本", 控件ID , 按钮 , 点击次数 ) 向指定控件发送鼠标点击命令

  参数说明

  • title:AutoIt Window Info识别出的Title字段
  • controlID:AutoIt Window Info识别出的Class和Instance的拼接

   运行

  • Tools-->go 或F5

   打包

  • Tools-->build 或F7

参数化脚本

    test.exe param1 “This is a string parameter” 99

  • $CmdLine[0] 获取的是命令行参数的总数,在上例中$CmdLine[0]=3
  • $CmdLine[1]~$CmdLine[63] 获取的是命令行参数第1到第63位,这个方式最多只能获取63个参数,不过正常情况下是足够用的
  • $CmdLineRaw 获取的是未拆分的所有参数,是一个长字符串,这种情况下不局限与63个参数
1. WinActivate("打开");
2. ControlSetText("打开", "", "Edit1", $CmdLine[1] );
3. Sleep(2000);
4. ControlClick("打开", "", "Button1");
  • 验证

相关文章
|
测试技术
jmeter性能指标分析
使用jmeter压测后,对各项指标进行分析
1615 0
|
JSON JavaScript 前端开发
springboot中使用knife4j访问接口文档的一系列问题
本文作者是一位自学前端两年半的大一学生,分享了在Spring Boot项目中使用Knife4j遇到的问题及解决方案,包括解决Swagger请求404错误、JS错误等,详细介绍了依赖升级、注解替换及配置修改的方法。
2508 1
|
Python
PyQt5-基本控件| 主窗口的类型、创建以及代码如何实现?
PyQt5-基本控件| 主窗口的类型、创建以及代码如何实现?
282 1
|
Web App开发
Chrome 126版本 打印预览失败 #85
Chrome 126版中出现了打印预览功能失效的问题(#85)。目前有两种解决方案:一是在chrome.exe目录为“ALL APPLICATION PACKAGES”用户组设置适当权限;二是等待内核修复,或通过添加启动参数"--disable-features=PrintCompositorLPAC"来暂时解决此问题。
1489 1
|
SQL 关系型数据库 MySQL
mysql命令行工具
【5月更文挑战第22天】mysql命令行工具
301 1
|
监控 Devops 测试技术
Go 语言在 DevOps 中的利器:并发与协程
【8月更文挑战第31天】
212 0
|
存储 资源调度 JavaScript
PNPM(高性能的npm)介绍
PNPM(高性能的npm)介绍
PNPM(高性能的npm)介绍
|
机器学习/深度学习 数据采集 自然语言处理
区间预测 | MATLAB实现基于QRCNN-LSTM-Multihead-Attention多头注意力卷积长短期记忆神经网络多变量时间序列区间预测
区间预测 | MATLAB实现基于QRCNN-LSTM-Multihead-Attention多头注意力卷积长短期记忆神经网络多变量时间序列区间预测
详解Python正则表达式中group与groups的用法
在Python中,正则表达式的group和groups方法是非常有用的函数,用于处理匹配结果的分组信息。 group方法是re.MatchObject类中的一个函数,用于返回匹配对象的整个匹配结果或特定的分组匹配结果。而groups方法同样是re.MatchObject类中的函数,它返回的是所有分组匹配结果组成的元组。在本文中,我们将详细讲解group和groups的用法和使用场景。