UI自动化之

您所在的位置:网站首页 网络键盘使用方法 UI自动化之

UI自动化之

2024-07-12 14:48:40| 来源: 网络整理| 查看: 265

一,场景描述

最近在做web端的UI自动化测试,涉及与第三方页面的交互,发现selenium对带有安全控件,U盾的输入框使用senkeys方法不起作用,无法正常输入内容,此时放弃selenium的输入,更换其他思路。

python模拟鼠标键盘操作pymouse、pykeyboard,失败!python win32con,win32api中的键盘,鼠标方法,失败!系统事件的拷贝和粘贴,Ctrl+C,Crtl+V,失败!操作系统的键盘事件输入,DD插件,成功!

问题总结,测试的时候发现,当使用U盾时,任务管理器的进程中会启动多个安全输入的进程,当杀死进程时,手动输入密码也不会成功,因此想到会不会是程序级的操作鼠标键盘层级太高,被监测到而无法输入,因此想到使用较为底层的DD插件,经过尝试发现是可行的,但是输入成功率较低

在这里插入图片描述

二,解决方法 采用第三方虚拟键盘DD XOFT,通过系统的键鼠事件输入,控件键鼠完成安全控件的输入 官网地址 http://www.ddxoft.com 下载一个名为DD81200x64.64.dll的插件(其实就是在它官方群的文件中下载的)。以下是官方的Python Demo代码,先在本地尝试能否运行 from ctypes import * import time print("Load DD!") path = r'C:\Users\Administrator\Downloads\master-master\master-master\Example\App_python\vs2017\DD\DD94687.64.dll' dd_dll = windll.LoadLibrary(path) time.sleep(2) print("dd_dll:",dd_dll) st = dd_dll.DD_btn(0) #DD Initialize print("st:",st) if st==1: print("OK") else: print("Error") exit(101) print("Keyboard Left win") #LWin is 601 in ddcode, 1=down, 2=up. dd_dll.DD_key(601, 1) dd_dll.DD_key(601, 2) time.sleep(2) print("Mouse move abs.") dd_dll.DD_mov(200, 200) time.sleep(2) print("Mouse move rel.") dd_dll.DD_movR(50, 50) time.sleep(2) print("Mouse Right button ") #1==L.down, 2==L.up, 4==R.down, 8==R.up, 16==M.down, 32==M.up dd_dll.DD_btn(4) dd_dll.DD_btn(8) time.sleep(2) 代码运行条件: 3.1 电脑安装DirectX C++库 3.2 使用管理员打开Pycharm工具或者使用管理员打开cmd窗口,运行Python文件 3.3 进入BIOS,查找“secure boot”选项,设置成“disable”,或改以传统方式启动。Demo文件运行成功,就可以将按键输入与自动化的代码组合在一起进行代码编写了 在这里插入图片描述以下是比较全的使用DD实现账号密码输入 from ctypes import * import time import os import win32api class op_keyboard(): def __init__(self): parentDirPath = os.path.dirname(os.path.abspath(__file__)) path = parentDirPath + ("\\DD94687.64.dll") # 这个dll是当前路径下面的 print(path) self.dd_dll = windll.LoadLibrary(path) # DD虚拟码,可以用DD内置函数转换。 self.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的按键。 self.vk2 = {'"': "'", '#': '3', ')': '0', '^': '6', '?': '/', '>': '.', '


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭