Detox项目发布20.37.0版本:全面支持React Native 0.77新架构
Detox是一个由Wix开发的端到端测试框架,专门为React Native应用设计。它允许开发者在模拟器或真实设备上运行自动化测试,验证应用在不同场景下的行为表现。与传统的单元测试不同,Detox关注的是用户视角下的完整应用流程测试,能够模拟真实用户操作并验证UI状态变化。
近日,Detox团队发布了20.37.0版本,这一版本最重要的改进是正式支持React Native 0.77及其新架构特性。对于React Native开发者而言,这意味着可以在最新的RN版本上无缝使用Detox进行全面的端到端测试,而不用担心兼容性问题。
新版本核心特性
1. React Native 0.77全面兼容
20.37.0版本最显著的改进是增加了对React Native 0.77的官方支持。这一支持不仅限于基本功能的兼容,还包括了对RN 0.77新架构特性的完整支持。新架构是React Native团队近年来最重要的技术革新,它通过引入TurboModules和Fabric渲染器,显著提升了应用的性能和响应速度。
对于测试框架而言,支持新架构意味着需要处理更复杂的底层交互。Detox团队通过内部适配,确保了测试脚本能够正确识别和操作由新架构渲染的组件,保持测试的稳定性和准确性。
2. 继承20.34.0版本的兼容性基础
值得注意的是,20.37.0版本是在20.34.0版本的基础上构建的,后者已经提供了对React Native 0.76的兼容支持。这种渐进式的兼容性更新策略,使得Detox能够紧跟React Native的发展步伐,同时保持每个版本的稳定性。
技术实现细节
为了实现与React Native 0.77的兼容,Detox团队主要进行了以下技术调整:
-
底层依赖更新:更新了与React Native相关的所有底层依赖,确保它们与0.77版本的API和架构保持同步。
-
新架构适配:针对TurboModules和Fabric渲染器进行了专门的适配工作,确保测试引擎能够正确识别和操作由新架构渲染的UI组件。
-
测试基础设施升级:更新了内部的测试运行环境,以验证Detox在新架构下的各种测试场景。
升级建议
对于正在使用Detox的React Native开发者,如果计划升级到RN 0.77,建议同步升级Detox到20.37.0版本。升级过程中需要注意以下几点:
-
渐进式升级:如果从较旧版本升级,建议先升级到20.34.0版本,验证基本功能后再升级到20.37.0。
-
测试覆盖:升级后应全面运行现有的测试套件,确保所有测试用例在新环境下仍能正常工作。
-
新特性验证:如果有使用RN 0.77的新特性,应添加相应的测试用例来验证这些特性在Detox环境下的表现。
未来展望
随着React Native新架构的逐步成熟,Detox团队表示将继续跟进RN核心团队的发展路线图。未来版本可能会进一步优化在新架构下的测试性能,并可能引入针对新架构特性的专属测试工具和方法。
对于依赖Detox进行质量保障的React Native团队来说,20.37.0版本的发布消除了升级到RN 0.77的技术障碍,使得他们能够同时享受RN新架构的性能优势和Detox强大的测试能力。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0134
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00