开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 11820|回复: 370
收起左侧

[易源码分享] 队长模块_谷歌web自动化测试框架6.2

  [复制链接]
发表于 2024-4-8 17:30:41 | 显示全部楼层 |阅读模式   河北省保定市
分享源码
界面截图:
是否带模块: 调用了模块
备注说明: -
队长模块_谷歌web自动化测试框架6.2,简洁、稳定、开源

精易6.2首发
原理:

基于谷歌开放协议(CDP),借助HP_socket和谷歌浏览器远程调试服务端进行通信,利用json格式数据进行数据交互,实现了谷歌WEB自动化测试。通CDP,开发者可以构建自己的工具或库,实现自动化测试、性能分析、页面抓取、调试等功能。它为开发者提供了更高级的控制和访问权限,使得开发者能够更好地理解和优化他们的网页或应用程序。
本模块是基于谷歌开发者协议编写的仿谷歌F12工具的易语言模块!


模块架构:


1.一个调试端口对应一个浏览器,N个调试端口对应N个浏览器(对应到模块的浏览器类)
2.一个调试端口+标签ID对应一个浏览器的一个标签页,一个调试端口+N个标签ID对应一个浏览器的N个标签页(对应到模块的标签页类)
3.一个标签页下面有1到N框架,定位网页元素框架,对元素操作



简化队长chrome类介绍:

队长chrome类本来是简化队长浏览器类和队长标签页类,实现单类的简便使用,尤其是方便新手使用,但是随着越来越多人使用,最近反馈无法满足多个标签页同时操作,比如操作谷歌浏览器插件,插件页面会动态开启和关闭,于是升级了部分命令功能,要是想控制多个标签页,还嫌弃队长浏览器类和队长标签页类组合麻烦,可以尝试使用队长浏览_*子程序命令和队长标签页类组合,
目前3种控制浏览器自动化测试的3种组合方式,
1.队长浏览器类和队长标签页类组合(总有一种方式适合你的),
2.队长浏览器_*子程序命令和队长标签页类组合,
3.队长chome类


模块简介(复制粘贴):

· 免费、简洁、稳定、开源 · 模块需要配合谷歌浏览器,支持最新版114版,但win10已经有谷歌内核的edge浏览器了 · 支持多线程多进程,实现web自动化测试,独立ck,独立缓存 · * 不重启浏览器实时换呆梨(插件实现) ,而且http和https支持密码认证。S4和S5只支持无密码 · 脚本断点与条件断点 · 拦截并修改请求数据 · 无感选择文件,不会弹出选择文件的窗口。接管选择接口 · 支持多框架网页,不用考虑跨域,也支持特殊框架(某些外部填表无法枚举出来的网页) · ws网络请求事件拦截 · http网络请求事件拦截 · 浏览器消息框拦截并操作 · 手工级的键盘和鼠标,并非系统命令而是谷歌命令,稳,支持多线程多进程同时操作 ·下载文件拦截,可从浏览器接管下载 · ck操作,增删改查 · 模拟触摸,滑动速度可调,可抛拽 · 页面截图,可指定位置与大小 · 两种网页判断就绪命令,精准 · 各种伪装:UA、地理位置、移动模式、屏幕大小、设备方向、cpu节流、触摸支持 · 资源提取,js、图片、音频等 · 执行js脚本,同步执行带返回值 · 无感添加文件到input元素,这个是直接添加不是上面的拦截选择文件 · 可加载自定义指纹插件或注入自定义指纹js,实现js层伪装指纹 · 三种谷歌级模拟输入文本模式,总有一个适合你。完美输入 · 元素命令支持Selector选择器与XPath选择器 · 元素命令提取网页图片验正码 · 脚本注入,注入的脚本优先于网页js · 轻松加载自己的浏览器插件,自己写的或者商店下载的都可以。 · console事件,巧妙应用可实现易语言和网页进行交互,比如让你软件响应网页按钮等。 · *队长浏览器类.清除缓存(插件实现) 。完美的清除缓存功能,等同于手动在浏览器设置页里的清除缓存 · ws对象操作,直接操作网页js里的ws对象。ws对象相关操作,可以发送、拦截修改、拦截后阻止、或者拦截后用自定义函数来处理数据等操作,就是说真的可以为所欲为。 · *动态加载队长插件(谷歌插件),命令快捷加载。队长插件功能:完美的浏览器全局js注入、完美的清除缓存 · *动态加载油猴插件,增强对浏览器或者网页的操控。 · 更多功能,敬请期待...

更新细节如下:
2023/7/166.2
' 队长模块_谷歌web自动化测试框架6.2
' 1.修复元素_取可视状态,元素_取可见状态,一直返回假错误的问题,队长标签类.元素_取可视状态(),队长标签类.元素_取可见状态(),队长chrome类.取可视状态(),队长chrome类.元素_取可见状态()同步更新
' 2.优化页面_执行脚本,当返回值是双精度小数时,结果.数值结果返回一个不正常的整数的状态,队长标签类.页面_执行脚本(),队长chrome类.页面_执行脚本()同步更新,队长标签类.页面_执行脚本返回文本 (),队长标签类.页面_执行脚本返回JSON(),队长chrome类.页面_执行脚本返回文本 (),队长chrome类.页面_执行脚本返回JSON()不受影响

2023/7/156.1
' 队长模块_谷歌web自动化测试框架6.1
' 1.优化队长浏览器_取标签页列表(),队长浏览器_取标签页信息列表(),队长浏览器_取标签页ID列表(),队长浏览器_取标签页_指定网页() 支持非开发者工具窗口标签页,比如打印标签页
2023/7/10
6.0
' 队长模块_谷歌web自动化测试框架6.0
' 1.修复元素_添加子节点,xpath选择器模式下的错误,队长标签页类.元素_添加子节点(),队长chrome类.元素_添加子节点()同步更新
' 2.优化元素_取可视状态,增加加强判断参数,可以判断父元素部分隐藏子元素隐藏的状态,队长标签页类.元素_取可视状态(),队长chrome类.元素_取可视状态()同步更新
' 3.优化队长chrome类.初始化(),去掉内部队长浏览器_连接浏览器()命令,减少初始化对队长标签页类的申请和释放,减少对队长长标签页类的以赖,去掉标签页_手动绑定()改为队长浏览器_取标签页ID列表(),直接获取激活标签页ID,初始化参数
' 4.修复元素_取img图片(),元素_取坐标(),在多线程中同时操作同一个标签页类或队长chrome类时,有一定概率崩溃,队长标签页类.元素_取img图片(),队长标签页类.元素_取坐标(),队长chrome类.元素_取img图片(),队长chrome类.元素_取坐标()
' 5.优化注入_脚本(),注入_删除(),注入清空(),ws_覆写对象(),ws_还原对象(),在多线程中同时操作同一个标签页类或队长chrome类时,有一定概率崩溃,
' 6.删除队长标签类和队长chrome类部分成员变量,更好的适应多线程
' 7.增加队长chrome类.浏览器_关闭标签页() 用来关闭指定标签页
' 8.队长chrome类.标签页_切换到指定网页()增加参数用来返回队长chrome类,可以用另外的队长chrome类控制指定标签页,实现多标签控制,尤其是控制一些自动打开关闭的插件
' 9.队长chrome类.标签页_新建标签页()增加参数用来返回队长chrome类,可以用另外的队长chrome类控制新建标签页,不影响原标签页,实现多个队长chrome类控制多个标签页
' 10.队长chrome类本来是简化队长浏览器类和队长标签页类,实现简便使用,但是随着使用,无法满足多个标签页同时操作,于是升级了部分命令功能,要是想控制多个标签页,还嫌弃标签页多,可以尝试使用队长浏览_*子程序命令和队长标签页类组合,目前3种组合方式,1.队长浏览器类和队长标签页类组合,2.队长浏览器_*子程序命令和队长标签页类组合,3.队长chome类,
' 11.增加鼠标_拖动,方便研究鼠标拖动一段距离放开,队长标签页类.鼠标_拖动(),队长chrome类.鼠标_拖动()同步更新
' 12.优化触摸_滑动,方便研究触摸滑动一段距离放开,队长标签页类.触摸_滑动(),队长chrome类.触摸_滑动()同步更新
' 13.优化队长标签页类和队长chrome类的一些内部参数
部分

谢谢您对队长模块的支持,如果觉得不错请给个好评↓↓↓,谢谢
队长模块最全的测试工具例子源码:

队长填表模块入门教程持续更新中: 队长填表模块 入门教程:https://space.bilibili.com/670228149
附件源码回复可见:
队长模块_谷歌web自动化测试框架6.2源码打包.zip (1.63 MB, 下载次数: 618)

点评

等会*风填表就来复制粘贴了 “同步更新”   广东省广州市  发表于 2024-4-15 13:44
等会*风填表就来复制粘贴了 “同步更新”   山东省泰安市  发表于 2024-4-8 18:04

评分

参与人数 21好评 +4 精币 +28 收起 理由
不错就是好 + 1 + 2 YYDS~!
龍貓 + 1 + 2 开源精神必须支持~
pj小黑屋 + 1 感谢分享,很给力!~
风雨3137 + 1 感谢分享,很给力!~
qiyuer + 1 感谢分享,很给力!~
ewake + 1 感谢分享,很给力!~
Zźh926 + 1 感谢分享,很给力!~
YzZA + 1 感谢分享,很给力!~
keyi5566 + 1 感谢分享,很给力!~
无尘666 + 1 感谢分享,很给力!~
t176 + 1 感谢分享,很给力!~
望尘莫及 + 1 感谢分享,很给力!~
qweipuq + 1 感谢分享,很给力!~
1828902364 + 1 感谢分享,很给力!~
※逍遥游※ + 1 感谢分享,很给力!~
聿聿 + 1 感谢分享,很给力!~
ican8 + 1 感谢分享,很给力!~
XXGL2005 + 1 感谢分享,很给力!~
yuan71058 + 1 + 2 没有最新版吗
財財 + 1 感谢分享,很给力!~
yb666 + 1 + 5 YYDS~!

查看全部评分


签到天数: 2 天

发表于 4 小时前 | 显示全部楼层   广东省汕头市
附件源码回复可见:
回复 支持 反对

使用道具 举报

签到天数: 2 天

发表于 4 小时前 | 显示全部楼层   广东省汕头市
附件源码回复可见:
回复 支持 反对

使用道具 举报

结帖率:0% (0/2)

签到天数: 12 天

发表于 2024-11-10 20:54:53 | 显示全部楼层   福建省漳州市
模块里的 触摸_滑动()是怎么使用的,x,y的坐标是根据哪个,x距离 y距离是根据x y的坐标吗?
回复 支持 反对

使用道具 举报

发表于 2024-10-27 03:38:06 | 显示全部楼层   江西省吉安市
666666666666666666666666666
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 9 天

发表于 2024-10-26 18:27:28 | 显示全部楼层   新疆维吾尔自治区阿克苏地区
好东西啊
回复 支持 反对

使用道具 举报

签到天数: 9 天

发表于 2024-10-9 00:21:51 | 显示全部楼层   黑龙江省佳木斯市
感谢分享
回复 支持 反对

使用道具 举报

签到天数: 17 天

发表于 2024-10-6 09:50:17 | 显示全部楼层   西班牙
6666666666666666
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 1 天

发表于 2024-9-29 19:58:32 | 显示全部楼层   广西壮族自治区柳州市
感谢分享,学习
回复 支持 反对

使用道具 举报

结帖率:25% (1/4)

签到天数: 15 天

发表于 2024-9-29 08:49:41 | 显示全部楼层   四川省泸州市
谢谢您对队长模块的支持
回复 支持 反对

使用道具 举报

签到天数: 3 天

发表于 2024-9-28 08:20:31 | 显示全部楼层   广东省江门市
学习了,哈哈
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表