python 自动化测试(2):针对密码输入框为密码控件时的解决方案

您所在的位置:网站首页 如何自动输入密码 python 自动化测试(2):针对密码输入框为密码控件时的解决方案

python 自动化测试(2):针对密码输入框为密码控件时的解决方案

2024-07-15 03:13| 来源: 网络整理| 查看: 265

一、前言

        使用selenium进行自动化测试,节约了我们的人工和时间成本,增加测试的便利性。然而有些时候selenium也不能完全帮我们解决一些页面问题。我这篇主要写一下遇到有密码控件的输入框时的解决方案。

二、问题

        我这里出现的是,pc端登录时会有一个密码控件的安装和输入,就像银行那种输支付密码时会有一个插件的安装,安装好之后才会出现一个输入框。我们知道普通的输入框,使用selenium定位之后,直接send_keys(param)就可以输入成功,但是针对这种密码控件的输入时大部分可能是不管用的。

三、解决方案

        使用模拟键盘的方式,将我们所需要的输入的内容输入到密码控件的输入框中即可。而模拟键盘,这里又有很多种方式,我这里采用的是,使用DD插件方式进行输入,相关资源点击 这里 下载。

四、实现

        1、首先,将我们已下载的资源解压,放入我们的项目中,可以专门创建lib文件包放入,如图:

        2、编写一个InputPasswordUtil.py的文件,源码如下:

import time from ctypes import windll lib_path = "\\DD94687.64.dll" # 你存入该文件的路径 dd_dll = windll.LoadLibrary(lib_path) class InputPasswordUtil: """ 模拟键盘输入密码内容 """ def input_password(self, password): vk = { '5': 205, 'c': 503, 'n': 506, 'z': 501, '3': 203, '1': 201, 'd': 403, '0': 210, 'l': 409, '8': 208, 'w': 302, 'u': 307, '4': 204, 'e': 303, '[': 311, 'f': 404, 'y': 306, 'x': 502, 'g': 405, 'v': 504, 'r': 304, 'i': 308, 'a': 401, 'm': 507, 'h': 406, '.': 509, ',': 508, ']': 312, '/': 510, '6': 206, '2': 202, 'b': 505, 'k': 408, '7': 207, 'q': 301, "'": 411, '\\': 313, 'j': 407, '`': 200, '9': 209, 'p': 310, 'o': 309, 't': 305, '-': 211, '=': 212, 's': 402, ';': 410 } # 需要组合shift的按键。 vk2 = { '"': "'", '#': '3', ')': '0', '^': '6', '?': '/', '>': '.', '


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3