无线适配智能化测试-以图像识别之名

本文涉及的产品
图像搜索,7款服务类型 1个月
简介: 随着当下国内外手机厂商的百花齐放,Android和ios都呈现出一定的碎片化。同时,作为App应用载体的无线终端,在不同的系统版本、品牌、分辨率和容器等各方面也都相差甚远。因此,为了保证大多数手机用户的体验,我们在实际业务迭代变更中出现新页面、模块发布时所需要进行的适配工作也愈加繁重。

背景

随着当下国内外手机厂商的百花齐放,Android和ios都呈现出一定的碎片化。同时,作为App应用载体的无线终端,在不同的系统版本、品牌、分辨率和容器等各方面也都相差甚远。因此,为了保证大多数手机用户的体验,我们在实际业务迭代变更中出现新页面、模块发布时所需要进行的适配工作也愈加繁重。

image.png

如上图所示,我们可以看到,在适配工作的整个流转机制中,研发和测试之间最为积累的往往是bug修复、验证以及期间的沟通成本。尽管样式问题往往'食之无味',一来二去的沟通通常也会是 项目Delay人员陷入测试疲劳期 的罪魁祸首,但bug未能及时修复依然令人'夜不能寐'。 由此我们看到,适配工作亟待提效的部分,首先就需要减少测试与开发之间往复的bug修复和验收环节。减少这个环节的前置条件即,提交给测试或外包同学做质量验收的功能页面/模块在多数主流机型中已得到较为充分的自测。

除此外,我们收集了几个前台导购型项目的大改版适配bug池,发现了以下两个要素,这两大问题也直接引导我们一期方案的落地。

  • ①.研发同学缺乏自测所需的大多数主流机型,无法较为全面的了解当前页面的质量表现
  • ②.适配过程往往是发现和解决一些常见的页面问题,且这些问题基本集中在安卓手机中

    • 加载性能差(白屏、模糊、持续加载)
    • 数据/模块加载失效(空窗)
    • 组件加载失败(安卓的中低端机型常见)

一种基于图像识别提效适配工作的方法

得益于测试智能化的趋势性启发,我们看到了 图像识别 在适配中能够作为的可能性。因为既然要减少"往复"沟通的积累,又要从适配最相关的UI Check涉及的UI自动化“脚本维护成本高”的历史诟病中挣脱,还要尽可能多的检查出适配工作的常见问题。所以,我们制定出了以下的智能适配流程。

  • 流程图
    image.png
  • 步骤

    • Step1.确定 基线图 (即最标准的页面视觉图)
    • Step2:由自动化截图工具获得当前机型和系统下适配的页面,即 对比图
    • Step3:对step2中的截图进行 预处理检查(白屏、模糊、空窗等) ,如有异常,则直接过滤
    • Step4:通过直方图对比的方式 对比基线图和对比图大致的相似性 ,相似性低,则直接过滤
    • Step5:通过 图像特征对比 ,检查并标识出两张图片中存在 差异的模块
    • Step6:返回检查结果,继续适配下一个机型的对比图

在整个流程的最上层,是由我们的无线适配平台提供当前功能页面在不同机型、系统、App版本的运行截图,除了在各种真机和模拟机上所使用的截图和轮播技术略有技术方面的差别,其余无论是预处理流程还是对比检查环节,均不涉及任何脚本的维护。研发同学在适配流程前,可在我们的平台前置运行预交付功能页面,尤其可重点关注的中低端机型中的问题并提前fix。基于此,再将质量已进一步保障的页面流转给测试同学验收。整个工作的流程,在图像识别助力之下,使 '发现问题->解决问题->验收问题' 的过程得以缩减,实现提效。

核心算法技术

  • 基于直方图的图像相似性预处理技术

    • 概述

      • 先获取图像的直方图数据(即图像各像素点的数量Array)
      • 对比基准图和对比图各像素分布差异(算法处理逻辑见贴图代码)
      • 输出相似性百分比
    • 技术实现方案
      image.png
  • 基于FAST+SIFT+FLANN算法处理图像相似特征技术

    • 概述

      • 通过FAST+SIFT算法计算得到对比图和基线图的特征点向量描述算子, ReferKeyPints、CompareKeyPoints.
      • 基于FLANN特征向量匹配得到两张图片的相似特征向量 MatchPoints
      • 通过计算公式:差异特征向量=基线图特征向量-相似特征向量 得到差异特征
      • 将差异特征绘制在对比图中(即描绘出差异、缺失等情况下的模块特征点)
      • 通过比例分割对比图ROI区域,以形状显示的模式绘制差异区域
    • 技术实现方案
      image.png

落地效果

目标明确,一期方案也在我们满怀期待中浮出水面。实际落地时,我们看到,目前基于图像识别能够检测到的问题,已经较为完整地覆盖了适配测试中常见的异常。无论是开发自测,还是外包同学正式介入验收,都能够借助我们的平台,对当前的功能页面做一次针对多机的适配测试,让往日需要来回沟通的常见适配问题得以前置,也间接推进项目进度,缩减适配环节人力和精力 。

  • 常见异常问题检查
    image.png
  • 中低端机常见模块加载问题检查

    • icon缺失且有数据加载差异
      image.png


- 模块缺失

image.png

展望

经过'图像识别'去提效适配工作让我们初次感受到'智能化'真正的魅力,近来年,深度学习的概念与应用也越来越火。我们也发现:由无监督学习、聚类算法等构建起来的神经网络架构,其自适应和自学习能力或许比我们的图像特征识别来的更加智能。同时,集团也有bu对此作出一定的研究和场景应用。但尝试对比后,我们发现无论是测试领域还是我们集团,由适配场景所积累的样本几乎为0,故对于深度学习(无监督、半监督学习)而言,即缺乏其运作的养料;与此同时,适配是一项讲究速成速得的工作,于是我们初期无论是试错与否,都无法容忍深度学习(无监督、半监督学习)较长的训练周期。

也正是如此,我们发现,由我们平台所带来的,除了基于图像识别去解决适配的问题,我们还能形成一个自取自存的页面异常大数据样本库。而形成这个库的时间和人力成本,不过是举手之劳而已( 将适配平台中标识error的页面留存即可,见下图右部 ) 。有了这个大数据样本库,似乎感受到了深度学习在适配提效未来以及我们大数据库开源的可能性。

激动之余,不忘再复习一下无线适配的定义。即验证所需功能在不同机型、系统中功能、交互、性能、安全等指标的正常表现。所以,我们所做的基于图像识别提效无线适配的方法,仅仅只是无线适配工作所覆盖的一部分。所以,真正能将适配能力建立一套较为完整的解决方案,让页面功能冒烟、页面在不同终端的性能表现、页面的安全指数等指标都能归一地输出给研发、测试、外包甚至PM,相信这会是一件功德圆满的事情。

image.png

很高兴地是,以上的设想,已由我们的天云平台小组成员合力设计产出,设计的简要模式如上图所示,大家可以见个预告。目前天云平台已在逐个功能模块发布内测,相信不久的未来,天云平台会给大家带来一份更大的惊喜。

项目成员

基于图像识别提效适配的方法(专利)

  • 御之、赚俭、玄扬、初枝

天云平台

  • 西涯、玄扬、赚俭、园直、静阳、御之
  • 如有合作需求和疑问,欢迎联系我们
目录
相关文章
|
5月前
|
机器学习/深度学习 敏捷开发 存储
深入理解自动化测试中的数据驱动策略深度学习在图像识别中的应用与挑战
【5月更文挑战第20天】 在现代软件开发过程中,自动化测试已成为确保产品质量和加快市场投放速度的关键因素。数据驱动测试(DDT)作为一种高效的自动化测试策略,它允许测试用例与测试数据分离,从而增强测试案例的可重用性并提高测试覆盖率。本文将探讨数据驱动策略的核心概念、实现方法以及在实际测试中的应用,旨在为软件测试工程师提供一种系统化和模块化的测试手段。 【5月更文挑战第20天】 随着人工智能技术的飞速发展,深度学习已经成为了图像识别领域的核心技术。本文将探讨深度学习在图像识别中的应用,以及在实际应用中所面临的挑战。我们将介绍卷积神经网络(CNN)的基本概念,以及如何利用深度学习进行图像分类、目
|
2月前
|
存储 安全 API
"解锁企业级黑科技!用阿里云视觉智能打造钉钉级人脸打卡系统,安全高效,让考勤管理秒变智能范儿!"
【8月更文挑战第14天】随着数字化办公的发展,人脸打卡成为企业考勤的新标准。利用阿里云视觉智能开放平台构建类似钉钉的人脸打卡系统,其关键在于:高精度人脸识别API支持复杂场景下的快速检测与比对;活体检测技术防止非生物特征欺骗,确保安全性;云端存储与计算能力满足大数据处理需求;丰富的SDK与API简化集成过程,实现高效、安全的考勤管理。
60 2
|
2月前
|
机器学习/深度学习 算法 搜索推荐
"震撼揭秘!阿里云AIGC智能图像识别:黑科技如何颠覆你的视界,让图像识别秒变超能力,生活工作全面革新!"
【8月更文挑战第12天】在数字化浪潮中,图像数据激增,高效准确处理成为关键。阿里云智能图像识别服务(AIGC)应运而生,依托深度学习与计算机视觉技术,实现图像特征精确提取与理解。通过大规模数据训练及优化算法,AIGC在图像分类、目标检测等方面表现出色。其应用场景广泛,从电商的商品识别到内容安全审核,再到智能交通和医疗影像分析,均展现出巨大潜力。示例代码展示了AIGC图像生成的基本流程,彰显其技术实力与未来前景。
58 1
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
软件测试的未来之路:自动化与智能化的融合之旅
随着技术的飞速发展,软件测试领域正经历着一场革命。传统的手动测试方法逐渐让位于更加高效、智能的自动化测试策略。本文将探讨自动化测试工具的演进,以及人工智能如何赋能未来的软件测试实践,提升测试效率和准确性。我们将通过实例分析,了解自动化测试工具的现状,探索AI技术在测试中的应用,并展望未来软件测试的趋势。
44 2
|
2月前
|
测试技术
一款功能完善的智能匹配1V1视频聊天App应该通过的测试CASE
文章列举了一系列针对1V1视频聊天App的测试用例,包括UI样式、权限请求、登录流程、匹配逻辑、消息处理、充值功能等多个方面的测试点,并标注了每个测试用例的执行状态,如通过(PASS)、失败(FAIL)或需要进一步处理(延期修改、待定、方案再定等)。
39 0
|
2月前
|
机器学习/深度学习 边缘计算 人工智能
软件测试的演化之路:从手动到智能化
【8月更文挑战第6天】在数字化浪潮不断推进的今天,软件测试作为保障软件质量的重要环节,经历了从原始的手动测试到现在的智能化测试的转变。本文将探讨这一演变过程,分析其背后的驱动力和未来趋势,以及这些变化给软件产业带来的深远影响。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
软件测试的未来:自动化与智能化的融合
随着科技的发展,软件测试领域正在经历一场革命。传统的手动测试方法正逐渐被自动化和智能化技术所取代。本文将探讨这一趋势如何影响软件测试的未来,以及它为提高软件质量和开发效率带来的机遇。
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
探索软件测试的未来:自动化与智能化的交汇点
随着技术的迅猛发展,软件测试领域正站在一个崭新的十字路口。本文将深入探讨自动化测试和人工智能(AI)如何共同塑造软件测试的未来,提升测试效率与准确性。通过分析当前趋势和未来预测,我们将揭示这些技术如何影响测试策略、工具选择以及质量保证流程,进而推动软件开发的整体进步。
58 1
|
3月前
|
人工智能 运维 自然语言处理
操作系统智能助手OS Copilot体验与测试结果
OS Copilot是基于大模型构建的操作系统智能助手,支持命令行自然语言问答、辅助命令执行、阿里云CLI调用、系统运维和调优等功能,帮助您更好地使用Alibaba Cloud Linux,提高Alibaba Cloud Linux的使用效率。
操作系统智能助手OS Copilot体验与测试结果
|
4月前
|
人工智能 分布式计算 DataWorks
首批!阿里云 MaxCompute 完成中国信通院数据智能平台专项测试
2024年5月31日,在中国信通院组织的首批数据智能平台专项测试中,阿里云数据智能平台解决方案(MaxCompute、DataWorks、PAI)顺利完成测试。
243 5
首批!阿里云 MaxCompute 完成中国信通院数据智能平台专项测试
下一篇
无影云桌面