自动化测试Python + selenium + pywin32 实现非input表单文件上传功能
前言:本次仅记录自动化测试功能,如用本技术用于任和非法用途与作者无关。
在做自动化测试时,遇到需要上传文件而且不是input表单形式的,需要从windows文件中选择文件,如下图:
遇到这种情况将可以使用pywin35库,调用windows库实现文件上传,代码与环境如下:
1.环境
- python 3.7
- selenium 4.4.3
- pywin32 304
2. 代码
from selenium import webdriver
import win32com.client
# 找到上传文件的位置并点击
driver.find_element(by=By.XPATH, value='your xpath').click()
shell = win32com.client.Dispatch("WScript.Shell")
#有些系统加上\r即可 有些需要加上\r\n
shell.Sendkeys(r'filepath' + '{ENTER}' + '\r\n')
经过测试在该环境下,可以实现自动化测试的文件上传功能。