You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Robot Framework实现聊天应用图片上传问题求助

Robot Framework实现聊天应用图片上传方案

优先方案:直接操作隐藏的文件上传控件

很多聊天网页的自定义文件按钮背后,其实都藏着一个<input type="file">原生控件。你不用管弹出的系统文件管理器,直接定位这个控件就能完成上传:

  • 用浏览器F12开发者工具,找到页面里的<input type="file">元素(可能是隐藏状态),拿到它的定位器(比如XPath、ID)
  • 用SeleniumLibrary的Choose File关键字直接传入图片绝对路径,示例代码:
*** Test Cases ***
上传聊天图片
    Choose File    //input[@type='file']    D:/test_images/chat_pic.png
    # 如果需要手动触发上传,再点击对应的发送按钮
    Click Element    //xpath/to/send/button

备选方案:用AutoItLibrary控制系统文件管理器

如果页面完全封装了上传控件,找不到原生的input,就用AutoIt来操控系统弹窗:

  1. 先安装依赖:
pip install robotframework-autoitlibrary
  1. 测试用例里导入库,然后编写流程:
*** Settings ***
Library    SeleniumLibrary
Library    AutoItLibrary

*** Test Cases ***
通过系统管理器上传图片
    # 点击文件发送按钮,唤起管理器
    Click Element    //xpath/to/file/button
    # 等待“打开”窗口激活(Windows系统默认标题是“打开”,Mac需要调整)
    Win Wait Active    打开    10
    # 把图片路径输入到文件名输入框
    Control Set Text    打开    Edit1    D:/test_images/chat_pic.png
    # 点击“打开”按钮完成选择
    Control Click    打开    Button1

提示:如果窗口标题或控件ID不对,用AutoIt自带的AutoIt Window Info工具抓取对应信息,不同系统/语言的管理器窗口参数不一样。

其他注意事项

  • 图片路径必须用绝对路径,避免找不到文件
  • Mac系统无法用AutoIt,可替换成robotframework-sikulilibrary做图像识别操作
  • 测试时别开其他弹窗,确保文件管理器能正常被激活

内容的提问来源于stack exchange,提问作者Jacob Duktig

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 08:57:09