首页 > 传媒 > 关键词  > Linux操作系统最新资讯  > 正文

统信软件推出“YouQu”综合型自动化测试框架,全面赋能开发者生态

2024-08-13 15:10 · 稿源: 站长之家用户

长期以来,Linux操作系统测试,特别是桌面操作系统测试,缺少一套专业且全面的综合型自动化测试框架,这一现状成为了提升测试效率与质量保证的瓶颈。

随着国内操作系统市场的蓬勃发展,业界对一套既专业又可靠的自动化测试框架的需求愈发凸显。它不仅是技术进步的迫切呼唤,也是确保国产操作系统品质与竞争力的关键所在。因此,开发并推广这样一套测试框架变得尤为重要且紧迫。

为了填补这一行业空白,统信软件精心打造了“YouQu”综合型自动化测试框架。该框架紧密贴合实际需求,专为Linux操作系统量身定制,集管理、分发调度、驱动执行等核心功能于一体,实现了测试流程的全方位覆盖。

YouQu以其简便的环境部署、强大的功能特性脱颖而出,不仅支持UI、WEB、接口及命令行等多种自动化测试场景,还极大地提升了测试效率与质量,为Linux操作系统上的开发测试工作带来了比较罕见的便捷与有效。

01

YouQu揭秘

「统信YouQu」

YouQu(有趣)是由统信软件精心打造的Linux自动化测试框架,涵盖系统与应用测试的各种场景。它不仅是统信UOS开发者工具箱中的璀璨明珠,更是推动开发效能与质量飞跃的关键利器。自2021年7月启动内部孵化,历经三年多的精心打磨与成功实践,直至2023年8月开源,YouQu凭借其先进的架构设计、出色的性能和广泛的应用前景,迅速受到全球知名技术社区如GitHub linuxdeepin、Gitee openEuler等的喜爱和赞誉,吸引了全球开发者和用户的浓厚兴趣和积极参与。

YouQu通过其有效的元素定位和断言机制、灵活的用例管理执行体系(支持标签化)、详尽的日志记录和报告生成功能,极大地提升了测试的效率与质量。此外,YouQu还展现了其在远程交互和多样化驱动执行模式上的灵活性,为Linux操作系统上的开发测试工作带来了更优的测试体验。

YouQu兼容X11与Wayland两大主流显示协议,确保在各种Linux环境中都能运行流畅。其简洁的部署流程,搭配易用的项目初始化工具,即便是测试领域的新手也能迅速上手,轻松享受自动化测试所带来的便捷与有效。

与传统的关键字驱动自动化测试框架相比,YouQu采用前瞻性的工程化设计理念和先进技术,如图像识别、属性定位、OCR文本识别、RGB色彩比对等多元化元素定位策略,不仅有效解决了复杂嵌套结构带来的测试难题,还显著降低了维护成本,同时大幅提升了框架的可扩展性与灵活性。

此外,YouQu已汲取Avocado、Pytest、Unittest等先进测试框架的核心优势,并在创新与超越的征途中取得了显著突破,为整个行业树立了新的标杆与典范。

交互方式:

其他测试框架:主要支持命令行交互,对UI自动化支持度不够。

YouQu:自研了多套 Linux GUI 元素定位和键鼠模拟方案,高度支持UI自动化,同时支持更加丰富的命令行交互方式。

开发模块

其他测试框架:没有脚手架工具,需要测试开发者耗费大量时间从零开始搭建用例工程。

YouQu:内置脚手架工具,实现了一键创建完整的用例工程。在此过程中,导入语句、方法调用、公共方法等基础代码均能自动生成,大大降低了入门门槛,尤其对新手用户极为友好。这不仅加速了自动化项目的启动速度,还为后续的自动化脚本编写带来了极大的便利性。

管理模块

其他测试框架:主要通过在代码中增加装饰器、在代码类或函数中添加注释来管理测试用例,这种方式在初期看似便捷,但随着测试用例数量越来越多,其维护难度也越来越大,且灵活性受限,难以满足复杂项目的需求。

YouQu:采用了创新的标签化管理专利方案,它通过CSV文件管理所有用例标签,不仅支持网络导入和自定义扩展,还支持逻辑组合。其格式设计统一且易于理解,从而确保了高度的可维护性,同时在实际应用中也非常灵活。

执行模块

其他测试框架:远程执行能力通常比较弱,一般都需要依赖外部插件。

YouQu:内置本地和远程双重驱动执行功能,并提供了丰富的执行策略配置选项。其远程驱动执行功能基于SSH协议实现,且远程执行设备无需部署额外的环境。此外,YouQu还支持对批量测试机进行分布式执行。

维护模块

其他测试框架:没有自动日志系统,迫使测试开发者需要手动添加日志输出代码。同时,它们往往不支持失败录屏功能,且测试报告通常需要依赖额外的插件。

YouQu:内置全自动日志系统,能够自动记录并输出测试过程中的详细日志信息。同时,它还内置了执行失败录屏功能,且还能生成详细、美观且易于理解的测试报告。

展望未来,YouQu将继续秉持面向未来、积极创新的理念,不断探索自动化测试的新领域,为Linux操作系统的测试工作注入更多智慧和活力,推动技术进步和产业升级。

欢迎访问统信开发者平台获取更多YouQu信息

02

YouQu特点

支持多种测试类型

Linux桌面应用UI自动化测试

基于Qt属性查找、图像识别、OCR识别、相对位移方案获取元素位置,通过键鼠模拟操控元素进行UI操作。

Web UI自动化测试

基于PlayWright控制浏览器(可自定义)进行Web UI自动化测试。

Linux DBus接口自动化测试

通过框架内置的DBus操控功能,实现对DBus接口访问及获取数据。

命令行自动化测试

基于subprocess、pexpect实现命令行交互。

HTTP接口自动化测试

基于Python标准库urllib,实现网络接口自动化测试流程。

工程化架构设计

核心封装层提供基础能力,业务层根据实际业务需求(测试用例)动态加载核心封装层,执行层加载相应的用例集并控制执行流程。测试平台可以根据实际测试策略组装配置,通过执行层接口驱动框架完成自动化测试执行。

环境部署一键搞定

一键式环境部署解决方案,无缝兼容虚拟化与本机部署模式,并允许用户根据需求灵活定制,实现依赖项的便捷新增与准确裁剪。

在项目根目录下,执行env.sh脚本,即可一键完成环境部署:

若需引入其他Python依赖库,只需在用例工程的根目录下创建一个requirements.txt文件,并在该文件中列出所有必需的依赖库及其版本要求。随后,通过执行简单的命令即可自动安装所有列出的依赖项,确保测试环境的完整性与一致性。

对于仅需最基础依赖的场景,如纯接口自动化测试项目,您可以在用例工程的根目录下创建一个名为BASICENV的标记文件。随后,在执行环境配置脚本env.sh时,该脚本会智能识别BASICENV文件的存在,并据此仅安装项目所需的最基础依赖项,从而简化环境配置过程,提高项目启动效率。

用例工程一键生成

一键创建APP工程,基础模板代码一键生成,帮您快速开始编写测试用例。

键鼠操作高度兼容

YouQu键鼠模块以业界领先的姿态,自主研发了Wayland环境下的键鼠工具,并实现了与X11协议的良好兼容,满足绝大多数场景的自动化键鼠操作需求。

丰富的元素识别方案

YouQu支持大部分主流的元素识别方案,同时在识别技术上一直在做演进和突破。

OpenCV图像识别

包含常规识别、动态气泡识别等多种方案,下图展示的是“音乐”应用中渐隐式气泡提示的识别示例。

Accessibility属性定位

通过对系统中所有已启动应用的Accessbility树进行递归查找,获取到目标元素对象,从而通过键鼠模拟操作元素。

OCR文案识别

鉴于传统的OCR方案,比如谷歌的Tesseract,在中文识别上准确率有限,我们经过深入调研后,选用了PaddleOCR作为核心技术,并在此基础上进行了突破和创新,成功研发了去干扰识别方案。

去干扰前,存在两个相似的鼠标右键识别对象。

去干扰后,能准确识别到鼠标右键菜单对象。

基于设计图的相对坐标参数定位

在UI设计图中我们是可以获取到元素按钮相对于应用边框的边距的,我们可以通过技术手段获取到应用界面在当前屏幕中的位置及应用窗口的大小,从而进行准确定位。

除了上述元素定位方案,我们还自研了一套基于RGB对照的图像识别方案,可以做到不依赖OpenCV也能准确识别图像元素。

断言语句简洁丰富

YouQu内置了多样化的断言语句库,覆盖了广泛的断言场景,能够满足各种测试验证需求,确保测试结果的准确性与全面性。

执行和管理高度配置化

YouQu的执行管理器manage.py提供了丰富的配置和命令行参数,支持本地用例驱动执行、远程用例驱动执行、CSV标签管理和解析、禅道与自动化项目CSV标签关联管理、脚手架等功能。

测试报告易读友好

YouQu测试报告功能全面升级,支持生成多样化的报告类型,包括HTML、JSON及XML格式,不仅确保报告信息的详尽丰富,更在呈现上追求美观与易读性。无论是用户本地直观查看,还是通过第三方接口进行数据交互,YouQu测试报告均能够满足,为用户提供灵活便捷的报告体验。

用例标签化管理

实施了用例标签的集中化管理策略,将所有用例的标签整合至一个统一的表格中,便于标签的集中定义与管理。该标签系统不仅支持无限扩展,以灵活应对各种测试需求,还特别引入了跳过类标签功能,便于在特定情境下跳过特定用例。在日常维护中,仅需聚焦于标签表格的更新与维护,极大地简化了管理流程。此外,这些标签还作为强大的筛选项,在驱动用例执行时发挥关键作用,确保能够比较准确筛选并执行目标用例集,实现测试过程的有效与准确。

全自动日志

无需编写日志打印代码,只需简单应用一个装饰器,即可自动记录并输出类中所有方法的功能说明,实现日志记录的自动化与智能化。

远程交互式控制

用户能够利用YouQu的RPC接口,实现与远程测试机器的实时互动,准确地指挥其执行复杂多变的UI操作及命令行指令。此接口赋予测试设备远程互控的能力,能够有效应对多端交互这种复杂业务场景实现自动化的难题,提升了自动化测试场景覆盖面。

失败录屏

失败录屏功能能够完整的捕捉并记录用例执行过程中的各类细节与异常情况,为迅速锁定并解析用例失败的根本原因提供了强有力的支持。

03

项目实践

YouQu框架已深度融入公司日常运营,成功应用于数十项组件与系统的例行测试与持续集成流程之中,覆盖领域广泛,包括但不限于高度复杂性的系统级应用组件如文件管理器、DDE及窗口管理器等。该框架展现出卓越的稳定性和有效性,持续稳定地实现月均五万条测试用例的无人值守自动化执行,确保了测试工作的有效性与比较准确度。

YouQu框架已正式在GitHub、Gitee等知名开源社区完成项目的全面开源,展现出广泛的兼容性与强大的跨平台能力,无缝适配并优化运行于UOS、deepin、openEuler、Anolis OS等众多主流操作系统之上,为开发者与用户提供了更加灵活多样的选择与应用体验。

04

YouQu官方兴趣小组

YouQu框架的维护与演进展现出极其活跃的态势,其官方兴趣小组汇聚了来自国内外众多优秀开发者,大家携手并进,深入交流自动化领域的比较新趋势与技术攻关挑战,共同推动该框架在技术前沿的持续探索与革新。

统信YouQu官方兴趣小组火热招募中!

推广

特别声明:以上内容(如有图片或视频亦包括在内)均为站长传媒平台用户上传并发布,本平台仅提供信息存储服务,对本页面内容所引致的错误、不确或遗漏,概不负任何法律责任,相关信息仅供参考。站长之家将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。任何单位或个人认为本页面内容可能涉嫌侵犯其知识产权或存在不实内容时,可及时向站长之家提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明(点击查看反馈联系地址)。本网站在收到上述法律文件后,将会依法依规核实信息,沟通删除相关内容或断开相关链接。

  • 相关推荐
  • 银河麒麟V11获L5认证:引领国产操作系统智能化新高度

    银河麒麟桌面操作系统V11近日通过中国软件评测中心评估,达到AIPC操作系统智能化等级L5端云智能解耦级认证标准,即最高智能化等级。该系统具备成熟的端云协同推理能力,支持多种AI模型本地化运算,实现高效、灵活的算力调度体系。通过南向解耦技术实现广泛硬件兼容,北向接口提供标准化AI能力接口,大幅缩短应用开发周期。该系统已在教育、金融等多个行业实现智能化转型应用,未来将持续推动操作系统智能化技术创新。

  • 腾讯爆款手游来了!《金铲铲之战》9月25日正式登陆鸿蒙操作系统5

    今日,华为举办Mate XTs非凡大师及全场景新品发布会,华为Mate XTs非凡大师正式发布。 官方在发布会上宣布,腾讯旗下热门游戏《金铲铲之战》将于9月25日正式登陆鸿蒙操作系统5。 《金铲铲之战》鸿蒙版于今年8月5日上架开启万人删档测试,此次测试不仅是《金铲铲之战》深度融入鸿蒙生态的关键一步,更标志着鸿蒙游戏头部矩阵的再扩容。

  • 安踏集团构筑系统化健康体系 多维度关怀员工身心健康

    安踏集团近日举办“人人学急救,急救为人人”公益讲座,特邀厦门红十字会专业培训师为员工提供心肺复苏、AED使用等系统化急救技能培训。作为持续获得认可的“最佳雇主”,安踏将“与员工共生”理念落到实处,从医疗保障、运动健康、心理支持及家庭关怀等多维度构建全面健康职场环境,2024年员工福利投入超4亿元,计划到2027年持续投入10亿元提升员工幸福感。

  • 雅迪华宇全球首发“天下无山”钠电平台,引领系统化电驱新时代

    9月19日,第二十三届中国国际摩托车博览会在重庆开幕。雅迪集团旗下华宇电池与凌博电子联合发布“天下无山”四电钠动力平台,突破传统电动两轮车技术瓶颈,实现超长续航、极速快充、超强动力等特性。三款搭载该平台的新车型亮相,已完成超2万公里真实路测。该平台通过系统级设计解决行业痛点,推动电动出行向更高效、安全、智能方向发展。

  • 没有操作系统,两轮车永远只是零件拼图

    九号公司发布凌波OS系统,打破两轮车行业技术无法沉淀的痛点。该系统统一底层架构,实现软硬件解耦,支持持续升级和个性化体验。通过打通车端、手机和云端,提升安全性和智能化水平,并推出开发者平台构建开放生态。这标志着两轮车行业进入“软件定义”新阶段,车辆从代步工具转变为可共同进化的智能伙伴。

  • 没有操作系统,两轮车都在“跟着零件走”

    九号公司发布凌波OS(NimbleOS),旨在解决两轮行业长期存在的系统层缺失问题。该系统通过统一架构与数据模型,实现软硬件解耦,提升开发协同与产品迭代效率。其核心价值包括云-边-端打通、时间确定性保障及OTA持续升级能力,推动行业从“零部件堆叠”转向“系统与数据复用”。凌波OS还开放开发者平台,支持二次开发生态,助力两轮车从机械时代迈向软件定义时代。

  • 中国操作系统银河麒麟V11正式发布

    8月26日,麒麟软件在2025中国操作系统产业大会上正式发布银河麒麟操作系统V11。该系统基于6.6内核构建,是国内首个商业版6.6内核操作系统,标志着我国操作系统产业进入高稳定、强安全的核心能力建设新阶段。V11在技术架构、AI融合、安全性及生态兼容方面实现重大突破,支持国内外主流芯片,已适配超700万软硬件产品。该系统已成功应用于天问探火、空间站等国家重大工程,累计实现超10万小时零故障运行,服务用户超7万家,连续十四年保持中国Linux市场占有率第一。

  • 国产化里程碑:思看科技三维数字化软件适配麒麟系统,三维扫描仪筑牢自主可控根基

    随着国产操作系统替代加速,思看科技旗下三维数字化软件DefinSight完成与银河麒麟等国产系统的深度适配,并通过工信部五所信创认证。该软件具备全栈国产适配、运行稳定、数据安全可控等优势,支持本地部署和7×24小时不间断运行。此次认证标志着国产三维检测软件实现重要突破,为行业提供安全可靠的国产化替代方案,助力国家信息安全与产业生态协同发展。

  • Testin云测:“无人测试”新范式,软件质量保障迎来全自动时代

    在数字经济时代,软件质量成为企业竞争力的关键。传统测试面临高人工依赖、高维护成本和高技能门槛的“三高”困境,自动化测试脚本月均失效率高达25%,维护占测试人员60%以上工作量。Testin云测推出XAgent智能测试平台,通过AI技术实现测试效率提升85%,核心场景覆盖率提升300%,脚本维护成本降低30%,重构质量保障体系。该平台已在金融、汽车等行业应用,显著提升测试效能,推动企业数字化转型。

  • 九号公司发布自研凌波OS:行业首个自研全域操作系统

    九号公司8月26日发布国内首款专为两轮短途出行打造的凌波OS(NimbleOS)操作系统。该系统通过统一底层架构,深度融合电机控制、电池管理、多传感器感知等核心模块,实现高效协同运行,显著提升骑行体验。支持整车OTA升级,让电动车从代步工具进化为可成长的“智能伙伴”。凌波OS的推出标志着两轮出行行业正式迈入以操作系统为核心的智能生态新阶段,展现了九号在智能交通领域深耕十年的技术积累。

今日大家都在搜的词: