web自动化之selenium(三)文件上传
1.上传标签为input
#若上传文件的标签为<input>可以直接定位标签,然后send_keys(文件路径)可以直接上传
2.利用第三方软件Autoit上传
1.下载Autoit:https://www.autoitscript.com/site/autoit/downloads/并安装
2.复制以下内容至SciTE Script Editor,修改文件地址,保存
3.将保存的文件用Compile Script to.exe进行编译成可执行文件
4.在需要进行文件操作的地方进行调用
#_______________________________复制以下内容SciTE Script Editor
#用来识别windows窗口的
ControlFocus("[Class:#32770]","","Edit1")
#用来设置等待时间等待windows窗口的显示
WinWait("[Class:#32770]","",5)
#用来在“文件名”框内输入上传的文件路径
ControlSetText("[Class:#32770]","","Edit1","C:\Users\Administrator\Desktop\44.png")
Sleep(2000)
#用于单击上传窗口中的“打开”按纽
ControlClick("[Class:#32770]","","Button1")
#_______________________________复制以上内容SciTE Script Editor
title:表示为要加载的文件
标题的class为“#32770”
文件名输入框的class为“Edit”,instance为‘1’
第一步:打开Autolt Windows info 单击 Finder TOOl 按住鼠标左键,将其拖动到需要识别的控制上(用于识别windows控制信息的)
第二步:打开Scite Script Editor 编辑器,写入脚本(编写Autolt脚本的)
第三步:通过菜单栏上的Tools->Go运行脚本(注意此时需要将上传窗口打开)
第四步:打开Compile Script to.exe,将刚才的脚本生成.exe文件(将编写Autolt脚本的转成exe文件的)
第五步:在自动化的代码中运行.exe文件
Autolt是用来进行windowsGUI(图形用户界面)的自动化测试的,它利用模拟键盘按键、鼠标移动和窗口控件的组合来实现自动化的
执行
#前提是先通过selenium打开文件上传对话框,再执行上传
os.system(r"E:\Users\Administrator\Desktop\aa.exe")
缺点:
步骤繁琐,上传的文件要先传参,打包成可执行文件后,就不能灵活的修改文件名称,不能动态的进行文件的上传
3、安装第三方库pywinauto(目前仅支持windows)
pip install pywinauto -i https://pypi.tuna.tsinghua.edu.cn/simple
运行
app = Application()
#定位到"打开"窗口,以句柄的形式
app1 = app.connet(title_re="打开",class_name="#32770")
#定位到文件输入框
app1["打开"]["EDit1"].set_edit_text(r"Users\Administrator\Desktop\1.png")
#定位到确定按钮,需要双击两次
app1["打开"]["Button1"].double_click()
web自动化之selenium(三)文件上传的更多相关文章
- 使用.NET框架、Web service实现Android的文件上传(二)
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYUAAAKpCAIAAADcx6fPAAAgAElEQVR4nOydd1hT5+LHg1attbfr1t ...
- Web攻防系列教程之文件上传攻防解析(转载)
Web攻防系列教程之文件上传攻防解析: 文件上传是WEB应用很常见的一种功能,本身是一项正常的业务需求,不存在什么问题.但如果在上传时没有对文件进行正确处理,则很可能会发生安全问题.本文将对文件上传的 ...
- 一个简单的QQ隐藏图生成算法 通过jQuery和C#分别实现对.NET Core Web Api的访问以及文件上传
一个简单的QQ隐藏图生成算法 隐藏图不是什么新鲜的东西,具体表现在大部分社交软件中,预览图看到的是一张图,而点开后看到的又是另一张图.虽然很早就看到过这类图片,但是一直没有仔细研究过它的原理,今天 ...
- Kindeditor+web.py+SAE Storage 实现文件上传 - 开源中国社区
Kindeditor+web.py+SAE Storage 实现文件上传 - 开源中国社区 Kindeditor+web.py+SAE Storage 实现文件上传
- selenium+python-autoit文件上传
前言 关于非input文件上传,点上传按钮后,这个弹出的windows的控件了,已经跳出三界之外了,不属于selenium的管辖范围(selenium不是万能的,只能操作web上元素).autoit工 ...
- 通过jQuery和C#分别实现对.NET Core Web Api的访问以及文件上传
准备工作: 建立.NET Core Web Api项目 新建一个用于Api请求的UserInfo类 public class UserInfo { public string name { get; ...
- selenium之 文件上传所有方法整理总结【转】
本文转自:https://blog.csdn.net/huilan_same/article/details/52439546 文件上传是所有UI自动化测试都要面对的一个头疼问题,今天博主在这里给大家 ...
- selenium实现文件上传方法汇总(AutoIt、win32GUI、sengkeys)---基于python
在使用selenium进行UI自动化测试时,经常会遇到一个关于本地文件上传的问题,解决此问题一般分两种情况: 1. 元素标签为input 2.非input型上传 下面我们分别对着两种情况进行实例分析 ...
- selenium之 文件上传方法
文件上传是所有UI自动化测试都要面对的一个头疼问题 首先,我们要区分出上传按钮的种类,大体上可以分为两种,一种是input框,另外一种就比较复杂,通过js.flash等实现,标签非input 我们分别 ...
随机推荐
- TCP连接的状态转换图深度剖析
转载请注明来源:https://www.cnblogs.com/hookjc/ 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接,如图1所示. (1)第一次握手:建立连接时 ...
- 计算机辅助数据绘图(matlab\python\js)
1. matlab绘图 官方说明:https://ww2.mathworks.cn/help/matlab/creating_plots/types-of-matlab-plots.html 基本图形 ...
- Java经典案例之用三种方法求1~100以内素数之和
素数,不能被除了1和本身以外整除的数被称为素数.接下来我用三种方式求得1~100以内素数. 方式一 外层每循环一次,内层就计算出这个数有几个因子,我们都知道素数的因子只有两个,所以如果个数为2就加进总 ...
- Ubuntu18关机时出现 A stop job is running for ...导致关机很慢
1. 修改/etc/systemd/system.conf sudo vim /etc/systemd/system.conf 2. 找到一下两行 #DefaultTimeoutStartSec=90 ...
- 使用VMware安装win10虚拟机
(1)打开VMware: (2)打开左上角的文件,点击新建虚拟机: (3)选择典型,下一步: (4)选择稍后安装操作系统,下一步: (5)选择win10×64,下一步: (6)可随意修改虚拟机名称,位 ...
- 2、前端--初见前后端交互、CSS简介、基本选择器、组合选择器、属性选择器、分组与嵌套、伪类选择器
今日内容概要 初窥后端框架 css简介 css选择器 今日内容详细 初次体验前后端交互 # 代码无需掌握 只看效果即可 """后端框架:可以简单的理解为别人写好的一个非常 ...
- 数据缓存Cache
在MyBatis - 随笔分类 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中有关于Mybatis中Cache技术实现及应用介绍.Cache技术实现都是implements Cache ...
- k8s-cka考试题库
本次测试的所有问题都必须在指定的cluster配置环境中完成.为尽量减少切换,系统已对问题进行分组,同一cluster内的所有问题将连续显示. 开启TAB补全 做题前先配置k8s自动补齐功能,否则无法 ...
- Renix软件如何发送CRC错误的报文——网络测试仪实操
我们在日常使用Renix软件时,有时候需要发送CRC错误的报文,那么如何操作呢?接下来为你详细介绍一下操作步骤. 1.打开Renix软件,连接机框并预约测试端口: 2.添加流模板 3.给P1设置CRC ...
- Spring Cloud Gateway现高风险漏洞,建议采取措施加强防护
大家好,我是DD 3月1日,Spring官方博客发布了一篇关于Spring Cloud Gateway的CVE报告. 其中包含一个高风险漏洞和一个中风险漏洞,建议有使用Spring Cloud Gat ...