likes
comments
collection
share

eTest自动化测试支持录制文件上传用例

作者站长头像
站长
· 阅读数 34

各位伙伴,好久不见,今天我们带来了新的版本迭代,eTest 上线,得到的好多测试小伙伴的喜欢,再次感谢各位的支持,同时我们也收到的很多功能上的反馈,反馈最多的一个问题就是怎么支持录制上传文件,这个测试场景可能也是很多小伙伴的使用eTest 最大的困扰吧

小伙伴的反馈我们也会想尽办法,解决问题,在经过一系列的技术调研,今天我们发布了版本更新,本次更新带来了两个重大功能,一个是大家心心念念的文件上传功能,另外一个支持mock ,支持通过mock 数据,针对特殊场景的自动化测试

今天我们一起先来学习第一个功能文件上传

快速上手

文件上传这个场景比较特别,我们无法使用脚本录制,涉及到对本地文件的访问,我们可以通过修改测试脚本文件解决这个问题

首先我们要熟悉一下上传对应的字段 测试用例中有些测试场景需要支持文件上传,针对这个测试用例,可能需要开发者code代码

{
	"xpath": "//*[@id=\"page-content\"]/div/div/div[1]/div/div[1]/div[1]/div/div[1]/input",
   "filePath": "/Users/xxx/Desktop/desktop/myproject/load.png",
   "type": "upload",
   "iframe": "",
   "selector": "document",
   "url": "https://www.xiaomiyoupin.com/",
}

关键 key

key描述是否必填
url当前打开的 URL 地址信息Y
filePath上传文件路径地址,支持绝对路径,或者默认桌面文件Y
type获取当前操作的 dom 操作类型 uploadY
xpath获取当前操作的 dom 的唯一地址Y
selector获取当前操作的 dom 的路径信息N
iframe当前网页是否嵌有 iframe 地址N

获取xpath

怎么获取xpath 路径,首先打开浏览器,输入页面,按f12 或者 鼠标右键选择检查 打开开发者模式

eTest自动化测试支持录制文件上传用例

选择elements 然后选择点击作左边的鼠标icon

eTest自动化测试支持录制文件上传用例

点击选中上传按钮信息,获取对应的上传input元素

eTest自动化测试支持录制文件上传用例

然后选择elements对应的dom元素,然后鼠标右键菜单选择copy 选择 copy xpath eTest自动化测试支持录制文件上传用例

注意:获取的xpath 路径信息必须是input 结尾的文件上传控件,不然上传失败,并且对获取的xpath路径信息有"需要转译

//*[@id="page-content"]/div/div/div[1]/div/div[1]/div[1]/div/div[1]/input

转换成下列方式


"xpath": "//*[@id=\"page-content\"]/div/div/div[1]/div/div[1]/div[1]/div/div[1]/input",

文件路径

文件路径支持取本地绝对路径,如果只是一个文件名,则会默认桌面文件查找

 "filePath": "/Users/xxx/Desktop/desktop/myproject/image.jpg",

//或者
 
"filePath": "image.jpg"

eTest自动化测试支持录制文件上传用例

为了方便入手,我们以element-plus为例,做了一个测试demo ,大家可以复制以下的信息,尝试演示,需要注意,必须保证你的桌面有一张image.jpg 的图片, 可以本地新建一个json文件,然后把下面的代码保存到json 文件中,上传到eTest工具中运行

[
	{
		"active": true,
		"audible": false,
		"autoDiscardable": true,
		"discarded": false,
		"favIconUrl": "https://element-plus.org/images/element-plus-logo-small.svg",
		"groupId": -1,
		"height": 759,
		"highlighted": true,
		"id": 84058496,
		"incognito": false,
		"index": 15,
		"lastAccessed": 1709813379812.512,
		"mutedInfo": { "muted": false },
		"pinned": false,
		"selected": true,
		"status": "loading",
		"title": "Upload 上传 | Element Plus",
		"url": "https://element-plus.org/zh-CN/component/upload.html",
		"width": 1920,
		"windowId": 84054912,
		"action": "start",
		"cookies": [],
		"indexNum": 0,
		"date": 1709813400418,
		"localStorage": {
		},
		"sessionStorage": {},
		"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36",
		"isMobile": false,
		"hasTouch": false,
		"deviceScaleFactor": 1,
		"type": "start"
	},
	{
		"xpath": "//html",
		"iframe": "",
		"selector": "document",
		"scrollTop": 168,
		"scrollLeft": 0,
		"type": "scrollWin",
		"url": "https://element-plus.org/zh-CN/component/upload.html",
		"indexNum": 1,
		"date": 1709813414914
	},
	{
		"xpath": "//*[@id=\"page-content\"]/div/div/div[1]/div/div[1]/div[1]/div/div[1]/input",
		"filePath": "image.jpg",
		"type": "upload",
		"iframe": "",
		"selector": "#page-content > div > div > div.doc-content > div > div:nth-child(5) > div.example-showcase > div > div.el-upload.el-upload--text > input",
		"url": "https://element-plus.org/zh-CN/component/upload.html"
	},
]

eTest自动化测试支持录制文件上传用例

欢迎大家去体验一下探索的乐趣👉 乐趣链接eTest,也欢迎大家给个star,⭐️⭐️⭐️有想法可以留言,一定在第一时间回复欢迎骚扰

转载自:https://juejin.cn/post/7343883765539782707
评论
请登录