Selenide v7.9.0 版本发布:增强测试稳定性和交互能力
Selenide 是一个基于 Selenium WebDriver 的轻量级测试框架,它通过简洁的 API 和自动化的等待机制,显著简化了 Web 应用程序的自动化测试流程。Selenide 的设计理念是让测试代码更加简洁、可读性更强,同时提供强大的内置功能来处理常见的测试挑战。
核心功能更新
1. Selenium 和 CDP 版本升级
本次更新将 Selenium 从 4.30.0 升级到了 4.31.0 版本,同时将 Chrome DevTools Protocol (CDP) 从 134 升级到了 135。这些底层依赖的升级带来了浏览器自动化能力的增强和潜在的性能优化,为测试脚本提供了更稳定的执行环境。
2. 文件路径输出格式优化
针对持续集成环境(如 Jenkins 和 GitLab)的特殊需求,v7.9.0 改进了文件路径的输出格式。现在,这些系统能够正确识别并处理测试过程中生成的文件附件,使得测试报告中的文件链接更加直观和可用。这一改进特别有利于团队协作和问题排查。
3. 空文本检查增强
框架增加了对空预期文本的显式检查逻辑。这一改进防止了在断言空文本时可能出现的意外行为,使得测试更加健壮。开发者现在可以更安全地验证元素是否确实不包含任何文本内容。
新增交互能力
组合键点击操作
v7.9.0 引入了一个重要的新功能:支持在按住修饰键(如 ALT、SHIFT、CONTROL 或 META)的同时点击元素。这个功能通过新的 API 方法实现,为测试复杂的用户交互场景提供了可能。例如,测试需要按住 Shift 键进行多选的操作,或者使用 Ctrl 键进行跨元素选择等场景。
性能与稳定性改进
消除冗余警告
开发团队移除了一个长期存在的冗余警告信息:"No listeners found for thread '1'",这个改进减少了测试日志中的噪音,使得测试输出更加干净,重点问题更加突出。
依赖项全面更新
本次发布包含了多项依赖库的版本更新:
- Netty 升级到 4.2.0.Final
- Commons IO 升级到 2.19.0
- Guava 升级到 33.4.8-jre
- Commons Text 升级到 1.13.1
这些依赖更新不仅带来了性能改进和安全修复,也确保了 Selenide 能够与最新的 Java 生态系统保持兼容。
技术价值分析
Selenide v7.9.0 的发布体现了框架持续优化的几个关键方向:
-
开发者体验优先:通过消除冗余警告和改进文件路径处理,使得测试输出更加整洁和实用。
-
交互能力扩展:新增的组合键点击功能填补了 Web 应用测试中的一个常见空白,使得测试能够覆盖更真实的用户操作场景。
-
底层稳定性:通过核心依赖的定期更新,确保框架能够充分利用最新的浏览器自动化技术,同时保持向后兼容。
对于已经使用 Selenide 的团队,建议评估新版本中的组合键点击功能是否能够简化现有的复杂交互测试场景。同时,文件路径处理的改进也值得在持续集成流程中进行验证,以提升测试报告的可读性。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0191
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0117
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
JoyAI-EchoJoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致性。其性能的核心在于,一个跨模态视听记忆库能够在长达五分钟的视频中保持角色外观和语音音色的一致性。同时,一个训练后处理流程将基于记忆的强化学习与分布匹配蒸馏相结合,实现了7.5倍的速度提升,显著增强了视觉质量和对齐效果。00
omega-aiOmega-AI:基于java打造的深度学习框架,帮助你快速搭建神经网络,实现模型推理与训练,引擎支持自动求导,多线程与GPU运算,GPU支持CUDA,CUDNN。Java04
llm-universe本项目是一个面向小白开发者的大模型应用开发教程,在线阅读地址:https://datawhalechina.github.io/llm-universe/Jupyter Notebook09