开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 17730|回复: 322
收起左侧

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

  [复制链接]
发表于 2023-4-24 13:29:25 | 显示全部楼层 |阅读模式   山西省晋中市
分享源码
界面截图:
是否带模块: -
备注说明: -
队长模块_谷歌web自动化测试框架5.5,简洁、稳定、开源

精易5.5首发
原理:
基于谷歌开放协议(DCP),借助HP_socket和谷歌浏览器交互,利用json格式数据进行数据交互,实现了谷歌WEB自动化测试。
本模块是基于谷歌开发者协议编写的仿谷歌F12工具的易语言模块!

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

模块主要更新内容:
1.更新对支持对谷歌浏览器111以上版本,新建标签页相关命令失效的操作
2.优化插件,更加稳定
3.对选择器类型自动判断,防止判断不准确,也支持指定选择器类型,支持CSS选择器,XPATH选择器,JS表达式选择器,更加智能和灵活
4.元素对象表达式选择器,可以通过F12,右键点击[copy JS path]复制,元素_*支持shadowRoot表达式的使用
数据交互流程图示.jpg 递进控制图示.jpg

模块简介(复制粘贴):· 免费、简洁、稳定、开源· 模块需要配合谷歌浏览器,支持最新版107版,但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/4/21
5.5
' 队长模块_谷歌web自动化测试框架5.5
1.增加类_切换选择器EX(),默认为自动匹配选择,防止选择器判断不准确,同时支持切换指定选择器,有css选择器,xpath选择器,元素对象js表达式选择器,选择器类型参考[#元素选择器_*], 影响队长标签页类和队长chrome类以元素_*开头的相关命令
' 2.类_切换选择器(),该命令调整为兼容命令模式,这个只支持css选择器和xpath选择器之间的切换,再没有调用该命令时,默认选择器类型为自动类型模式,使用该命令后需要切换到自动类型模式或者元素对象js表达式选择器类型模式,需要使用类_切换选择器EX()
' 3.当元素选择器是元素对象js表达式选择器时,元素_取匹配数()可能会受到一定影响,比如[document.querySelector('a')]该选择器元素_取匹配数()会返回1,比如[document.querySelectorAll('a')[0]]该选择器元素_取匹配数()会返回[document.querySelectorAll('a')]匹配到的真实长度,请注意
' 4.修复网络_拦截,当拦截PUT类型时POST提交内容返回空的问题
' 5.元素对象表达式选择器,可以通过F12,右键点击[copy JS path]复制而来,也可以通过探测工具3.46来获取,主要更新了shadRoot节点树生成元素对象表达式选择器的探测和测试
2023/3/29
5.4
' 队长模块_谷歌web自动化测试框架5.4
' 1.优化队长浏览器_插件切换代理,以前当代理账号,密码中含有"&"字符会导致设置代理出错,导致出现弹窗认证;当前版本测试代理账号"yhi6&%#!@#$%&~*()_+<>"可以正常代理,目前已知账号密码中含有":"字符会仍然设置失败,弹窗,手动设置也会失败,导致弹窗认证问题,请自己测试,请尽量减少特殊字符的使用,影响命令有队长浏览器类.切换代理(),队长chrome类.浏览器_插件切换代理(),注意:不兼容旧版插件
' 2.优化代理插件到1.2版,点击插件助手图标时会点亮选择的代理类型,当使用队长标签页类.页面_清除缓存()和队长chrome类.页面_清除缓存(),用队长浏览器_插件切换代理()能正常切换代理,1.2版只能用于队长模块_谷歌web自动化测试框架5.4版以上,插件请到综合测试工具源码包里面获取,注意:不兼容旧版本模块
' 3.优化油猴_获取脚本列表(),油猴_删除脚本(),油猴_添加脚本(),支持谷歌浏览器111以上版本,队长chrome类.*和队长浏览器类.*相关命令影响
' 4.优化队长标签页类.页面_是否加载完成(),页面_是否已加载完毕,应对动态加载的框架的就绪判断
' 5.队长浏览器_取标签页_指定网页(),参数网址和标题都不为空时,只有网址和标题都比对成功才算成功,队长浏览器_取标签ID_指定网页 ()同样如此
' 6.优化队长插件到1.17,加快队长浏览器_插件清除缓存的速度,影响队长浏览器类.页面_清除缓存(),队长chrome类.页面_清除缓存()
2023/3/12
5.3

队长模块_谷歌web自动化测试框架5.3
1.优化队长浏览器_新建标签,当网址带有多个参数,会丢参数的问题,影响队长浏览器类.新建标签页(),队长chroem类.标签页_新建标签页()

2023/3/10
5.2

队长模块_谷歌web自动化测试框架5.2
1.优化队长chrome类.框架_指定索引是否就绪(),队长chrome类.框架_指定网页是否就绪(),队长chrome类.框架_指定索引取脚本环境id(),队长chrome类.框架_指定网页取脚本环境id(),对脚本环境id进行判断,防止动态加载框架,框架对应的脚本环境id没有创建,导致就绪判断到主框架,就绪出错脚本环境id为空;队长标签页类相同命令同步修改

2023/3/10
5.1
' * 队长模块_谷歌web自动化测试框架5.1
' *1.优化队长浏览器_插件切换代理(),解决谷歌浏览器111版切换代理失效问题,影响的有队长浏览器类.切换代理() ,队长chrome类.浏览器_插件切换代理()
2023/3/9
5.0
' 队长模块_谷歌web自动化测试框架5.0
' 1.优化http访问对象,解决谷歌浏览器111版本部分浏览器类命令无法访问远程服务端的问题,影响的有队长浏览器_*相关命令,队长浏览器类下的命令,队长chrome类部分命令
2023/3/7
4.9
' 队长模块_谷歌web自动化测试框架4.9
' 1.增加队长chrome类.元素_枚举属性(),队长标签页类.元素_枚举属性(),用来枚举相同选择器的元素内部属性
' 2.增加队长chrome类.元素_枚举对象属性(),队长标签页类.元素_枚举对象属性(),用来枚举相同选择器的元素对象下成员属性值
2023/2/2
4.8
' 1.优化队长chrome类.存储_枚举(),使其支持最近当前最新谷歌浏览器109版
' 2.队长chrome类.存储_添加或修改 (),使其支持最近当前最新谷歌浏览器109版
' 3.队长chrome类.存储_删除 ( ),使其支持最近当前最新谷歌浏览器109版
' 4.队长chrome类.存储_清空 ( ),使其支持最近当前最新谷歌浏览器109版
' 5.队长标签页类.存储_*相关命令同步进行优化
2023/1/23
4.7
' 1.修复队长浏览器_取标签ID_指定网页(),返回参数是否有效一直为假问题,影响队长chrome类.标签页_切换到指定网页()
' 2.优化队长chrome类.初始化(),当没有进行队长_初始化()时提示并返回假
' 3.优化队长标签页类.元素_添加本地文件(),队长chrome类.元素_添加本地文件(),当选择器参数留空时,自动定位到文件框元素,只需要设置第几个参数就可以定位到哪一个文件框元素



附件源码回复可见:
队长模块_谷歌web自动化测试框架5.5源码打包.zip (1.63 MB, 下载次数: 600)

谢谢您对队长模块的支持,如果觉得不错请给个好评↓↓↓,谢谢

队长周边付费功能演示(打个广告):

队长模块谷歌浏览器元素探测工具(快速定位元素和测试元素功能):
3.47探测工具.png





评分

参与人数 11好评 +7 精币 +23 收起 理由
发大财 + 1 + 2 感谢分享,很给力!~
蓝色形式 + 1 YYDS~!
yjd + 1 + 2 支持开源~!感谢分享
明天自然醒 + 1 + 3 YYDS~!
老男孩0001 + 1 + 2 希望能出个python的库,或者dll调用也行
※逍遥游※ + 1 感谢分享,很给力!~
重新归零 + 1 + 2 支持好用又热心的队长
猥琐小胖子 + 1 + 4 支持开源~!感谢分享
星空漫步 + 1 + 2 开源精神必须支持~
空竹 + 3 前来膜拜
ai185704529 + 1 开源精神必须支持~

查看全部评分


本帖被以下淘专辑推荐:

 楼主| 发表于 2023-4-26 17:59:42 | 显示全部楼层   山西省晋中市
免费QQ群:703017868
回复 支持 反对

使用道具 举报

结帖率:11% (1/9)

签到天数: 11 天

发表于 2024-11-13 20:44:22 | 显示全部楼层   湖北省襄阳市
测试下学习
回复 支持 反对

使用道具 举报

发表于 2024-10-22 15:20:31 | 显示全部楼层   山东省日照市
66666666666666666666666666666666666
回复 支持 反对

使用道具 举报

结帖率:24% (6/25)

签到天数: 2 天

发表于 2024-7-28 00:22:54 | 显示全部楼层   湖南省常德市
支持一下啊
回复 支持 反对

使用道具 举报

发表于 2024-7-13 12:36:26 | 显示全部楼层   河南省驻马店市
很厉害啊佩服的五服投地
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2024-7-12 08:15:43 | 显示全部楼层   山东省济宁市
        支持开源~!感谢分享
回复 支持 反对

使用道具 举报

发表于 2024-4-2 20:57:00 | 显示全部楼层   广东省惠州市
感谢分享,很给力!~
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 9 天

发表于 2024-2-29 23:09:29 | 显示全部楼层   广东省河源市
aaaaaaaaaaaaaaaaaa
回复 支持 反对

使用道具 举报

发表于 2024-2-28 20:26:36 | 显示全部楼层   甘肃省陇南市
太好用了,谢谢分享
回复 支持 反对

使用道具 举报

签到天数: 4 天

发表于 2024-1-27 12:03:25 | 显示全部楼层   浙江省杭州市
学习学习,感谢分享
回复 支持 反对

使用道具 举报

结帖率:41% (7/17)
发表于 2023-12-14 16:55:43 | 显示全部楼层   浙江省嘉兴市
已赞助周边
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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