自动化测试——Selenium借助pywinauto实现文件上传(下载)

在利用Selenium进行Web自动化测试,遇到如下的Windows窗口进行上传、下载操作时,可以通过pywinauto进行操作。上传窗口如下:

技术分享

使用pywinauto,需知Windows窗口控件的class,方可对其进行操作,通过Microsoft Spy++,即可获取控件的class,如下图:

技术分享

示例代码如下:

from pywinauto import application
...
    # 使用pywinauto进行上传操作
    app = application.Application()
    window = app.window_(class_name = "#32770")
    # 文件所在路径不能含有空格
    window["Edit"].TypeKeys(r"C:\test.jpg")
    window["ScrollBar"].Click()
    window[u"打开(O)"].Click()
...

下载操作同理。

注:在实际操作过程中,当输入图片所在路径时,弹出窗口可能会出现失去焦点,导致点击打开按钮无效的情况,此时可以通过点击Windows弹出页面的某一控件使页面重新获得焦点,如点击滚动条。

文章来自:http://www.cnblogs.com/desperado0807/p/4829178.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3