一文搞定Web 自动化之文件上传!

程序员雨果 2024-10-17 17:03:01 阅读 54

在做web自动化时,我们经常会碰到一些场景需要进行文件上传,而文件上传打开的窗口属于windows控件,通过Selenium是操作不了的,此篇文章给大家介绍几种实现方法。

方法一:sendKeys

前提条件:文件上传元素是input标签,并且type为file才可以使用此种方法

以我在本地的fileupload.html文件为例:

图片

测试代码如下:

图片

此方法的核心在于元素是input类型,可以借由sendKeys方法去输入上传文件的路径即可

方法二:AutoIT

针对不是input类型的元素,我们可以使用第三方的自动化工具,比如:Auto,对windows控件元素进行操作

以下是其官网介绍:

图片

翻译过来就是:

AutoIT是类似于Basic脚本语言的免费软件,利用它我们可以实现对windows的GUI界面进行自动化操作,balabala...

官网地址:

https://www.autoitscript.com/site/autoit/

强烈建议先去看官方文档:https://www.autoitscript.com/autoit3/docs/,对工具的使用和脚本编写语法描述的非常详细

step1:下载安装

下载页面在这里:

https://www.autoitscript.com/site/autoit/downloads/

点击下载即可,下载完下一步直到安装完毕

图片

安装完毕会有如下几个应用:

图片

其中我们用得到的有:

AutoIT Window Info 识别Windows元素信息

Complie Script to .exe 将AutoIT编写的脚本编译成exe可执行文件

Run Script 运行AutoIT脚本

SciTE Script Editor 编写AutoIT脚本

注意:官方推荐使用X86版本,这样兼容性问题会少些

step2:使用AutoIT

1、将上传的Windows窗口打开

2、打开AutoIT Window Info 工具,Finder Tool下的图标一直按住,选择窗口中要识别的元素(文件名后面的输入框以及打开按钮),分别记录下此时的Tile、Class等信息

图片

3、打开SciTE Script Editor,开始进行脚本编写(注意元素的定位是由Class和Instance进行拼接的,如Class为Edit,Instance为1,那么定位表达式为Edit1)

图片

4、选择工具栏上面的 Tools-Go 先去运行下脚本,试运行OK之后将脚本保存,后缀为au3

5、选择Complie Script to .exe工具把脚本编译为exe文件

6、Java代码本地执行exe文件

图片

来看看运行效果

图片

 总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:

这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。