- 浏览: 29860 次
最新评论
从市场上金融企业对app的重视程度,自然看出其在市场、用户和企业眼中的重要性。甚至有测试部门要求拿着圆规比对icon圆是不是正圆,拿着尺子去量icon尺寸是不是正确!软件质量要求最高的的金融行业,在对待app自动化这件事自然是走在业内前列。
而当前金融行业app做自动化的问题已经不是是否用UI自动化的方式,也不是说是录制、回放还是写脚本的方式。答案很明显:app最注重用户体验,自然要做UI自动化,不能让测试人员写脚本。写脚本对测试人员要求极高,也增加了企业成本。
世人眼中的UI自动化
手工测试人员:UI自动化实现了,测试就可以不用测了自动工程师:最大的难点是维护成本极高,验证功能而非UI,能获得多少收益关键看被测系统本身的稳定性以及自动化技术能力
今天就来说说,为了达到一定高的自动化率,我们都遇到过哪些坑。
在做app自动化过程中,有两大通用性问题不可回避;
1、 屏幕分辨率和系统差异
业内人士一定知道,做app的自动化一定不能依靠坐标,最多作为辅助手段。图像识别也被人诟病,极客们通常是“从入门到放弃”。原因是大家用的开源算法,或许做了点优化,但仍然不能适应多样化的app以及app版本的迭代。
示例:采用坐标点击方式不能适配不同机型
因此这种方式必不可取。
2、 iOS&Android两套完全不同的系统
用例几乎不分两套系统,可是这两套系统却决定了自动化脚本必须是两套。
[img][/img]
对金融企业科技部来讲,要自研这两套系统的app自动化系统,投入太大时间太久,更不用说操作系统升级后的更新(要知道乔爸爸血统一次更新可能就是换血)。
第一大类:影响自动化执行(操作)准确性
H5技术运用越来越多
H5技术的诞生,给开发者带来了福音,却给自动化开发者带来了强烈的冲击。许多原本已经做好app自动化框架大公司也不得重新考虑。而不管选择哪种机制都必然会遇到一些意外:
采用非原生webview控件
为了使产品更加完美,开发人员使用了各种非原生的webview控件,示例:这是开发人员在页面设计时调用了腾讯X5的内核浏览器,就无法用统一的技术获取到页面layout
使用了iframe标签
诸如此类的问题还有很多,H5的layout获取不到、不准确,都将导致自动化执行失败和预期结果检查出错。
键盘加密、验证码获取
乱序加密键盘
这是金融行业最一致的问题,为了让每用例脚本互不影响,初始状态都从登录开始。这些乱序加密键盘不可能获取到layout,那必须采用特定算法精确找到数字区域并自动点击。
手势密码
还有银行通常使用的手势密码
验证码获取
部分金融企业采用了验证码方式:正常验证码、艺术验证码
都需要用特定技术手段获取到准确的验证码内容,同时自动化工具有灵活机制实时填入。
3、 日期控件,不同系统版本、不同手机厂商、不同app开发团队
不管是银行还是证券,对历史记录的查询是不可缺少的测试案例。例如测试前几年某个月的记录,那就需要滑动、点击很多次。这就导致执行准确度低、用例执行效率低。
这需要定制化研发一整套(两套系统,多个版本,多种机型)日期自动化设置小工具,才能实现这些用例的自动化。
第二大类:阻塞结果校验正确行
提取控件部分内容
示例:如图所示的alert内容,需要提取作为预期结果检查,但合同号“5”是变化的。则只能检查“您的申请已提交,合同号为:”。“5”则要单独提取作为查询的索引。
安卓提示采用Toast机制
toast提示难以抓取,就无法从APP端验证流程正确性。这是评价app自动化工具强大的一个标准。
特殊计算
示例:需要计算持仓1/4、1/3的整数份。例如:持仓800股(每手为100股),卖出1/3,则卖出数量为:800/3(取整)=200股(2手)。
如何有效应对版本更新带来的批量脚本更新问题
以上问题都建立在app的页面layout信息不变的情况,而实际上是可能变化的,即使是以稳定为主的金融企业,也会因为创新业务需求,改变页面设计。这就导致一个问题,现在已有大量的测试脚本,这种基于layout的录制方式,页面设计改动后,如何高效更新大量的测试脚本,让自动测试真正的快起来?
TestBird眼中的UI自动化(轻量、简单、高效率)
不写脚本
用例的自动化率达到一定高的程度才能获得收益
维护成本一定要降低到可接受范围
app的自动化是适配多终端、多系统的
发表评论
-
移动互联网时代,传统金融行业的转变?
2017-10-16 16:57 326互联网正不断与越来越 ... -
移动APP领域的新战场—用户争夺战
2017-10-12 15:01 376之前,工信部发布的“ ... -
浅谈移动端性能测试的方法和应用
2017-08-30 11:34 371随着移动设备的普及 ... -
谷歌正式发布Android 8.0,TestBird支持Android Oreo测试
2017-08-24 16:57 4188月22日凌晨,谷歌发布了 Android 8.0 操作系统的 ... -
重度游戏热度居高不下,中轻度游戏如何突出重围?
2017-08-22 17:06 395据当乐网报道,早 ... -
Android性能测试之流畅度测试
2017-07-18 18:13 499流畅度测试简单的来说就是Android页面绘制。Andro ... -
移动web性能测试要点
2017-07-07 17:47 380性能测试 1.连接速度测试 用户连接到Web应用系统的 ... -
对于性能测试的那些需要注意的事
2017-07-06 18:12 486之前有做过几次做性能 ... -
Android app安全性能测试
2017-07-04 18:18 7861.安装包测试 (1)能否反编译代码(源代码泄露问题): ... -
一般app测试的最佳方法
2017-06-23 17:39 332一提到软件测试,测试员基本想到的就是去检查文件,功能,AP ... -
App测试中需要考虑网络因素的测试点
2017-06-16 18:10 409当前app的网络环境比 ... -
移动应用安全测试方法总结
2017-06-09 15:27 3151.软件权限 1)扣费风 ... -
Android应用功能测试策略
2017-06-06 17:27 274根据软件说明或用户需求验证App的各个功能实现 ,采用如下 ... -
品质化时代 CP如何把控手游产品质量关
2017-05-31 17:41 322近年来,手游业发展迅 ... -
对移动测试领域来说,精准测试是否重要
2017-05-26 17:33 364是否在做回归测试的时候常常会因为范围评估不准而遗漏一些bu ... -
移动app测试之怎么避免bug漏测
2017-05-17 17:49 385下面分析出现缺陷漏 ... -
移动app如何进行自动化和探索性测试
2017-05-12 16:48 399在测试设计时最主要依据的就是测试金字塔的测试结构。如果在项目 ... -
详解iOS和Android在测试上的不同
2017-05-11 16:52 307只有了解iOS和Android操作系统的不同设计理念,才能 ... -
移动app增量升级测试需注意的问题
2017-05-04 17:43 443作为一个用户,测试 ... -
Android app开发捷径,让你少去踩坑
2017-04-28 15:10 316最近一朋友提了几个And ...
相关推荐
本项目名为“app自动化-美团自动化测试项目”,主要目标是教授如何使用JAVA语言进行安卓应用的自动化测试。项目的核心工具是APPIUM,一个广泛使用的跨平台移动自动化测试框架,支持Android和iOS应用的自动化。APPIUM...
总的来说,这个"app自动化测试代码包"可能包含了一整套的Python自动化测试解决方案,从编写测试脚本、运行测试、收集结果到整合到CI/CD流程,都为我们提供了一个完整的参考示例。通过学习和理解这些内容,我们可以...
【标题】中的“自动化测试框架,支持接口自动化、WEB UI自动化、APP UI自动化”涉及到的是软件测试领域的一个重要话题。这个框架集成了多种自动化测试的能力,涵盖了从后端API到前端UI的全方位测试。 首先,接口...
在构建App-UI自动化测试框架时,Python语言与Selenium、Appium、Pytest和YAML等工具结合,可以提供高效且灵活的解决方案。这里我们将深入探讨这些技术以及如何利用它们来实现Android应用的自动化测试。 首先,让...
通过对以上各种移动APP自动化测试框架的介绍与对比,我们可以看出不同的框架各有优势。例如,XCUITest和Espresso作为官方推荐的测试工具,它们在稳定性和集成度方面表现出色;而Appium则以其强大的跨平台能力赢得了...
在这个过程中,主要涉及的技术工具有Java开发环境(JDK)、Appium自动化测试框架以及Android SDK。接下来,我们将详细讨论这些工具的安装与配置。 首先,`jdk-8u211-windows-x64.exe` 是Java Development Kit的安装...
自动化测试框架,支持接口自动化、WEB UI自动化、APP UI自动化、性能测试;支持多系统相互调用;支持接口与UI相互调用;支持dubbo接口调用.zip 适合学习/练手、毕业设计、课程设计、期末/期中/大作业、工程实训、...
在IT行业中,自动化测试是提升效率、确保产品质量的关键环节,特别是在移动应用开发中,APP UI自动化测试已经成为不可或缺的一部分。本文将深入探讨APP UI自动化测试的相关知识点,并基于提供的压缩包文件"APP UI ...
基于appium+java 的APP UI自动化测试框架.zip基于appium+java 的APP UI自动化测试框架.zip基于appium+java 的APP UI自动化测试框架.zip基于appium+java 的APP UI自动化测试框架.zip基于appium+java 的APP UI自动化...
自动化测试-Web、App、接口自动化测试实战Python版(第二版)
这个主题“App自动化实例(IOS+Android)”聚焦于如何在iOS和Android平台上实现自动化测试,特别是通过使用appium-1.6-XCUITest-demo和android-uiautomator-server这两个工具。 首先,我们来了解一下XCUITest。...
下面我们将详细探讨Android自动化APP的文件结构以及与UI自动化测试相关的元素。 1. **项目结构**: - `app`: 这是主要的模块,包含了应用的主要代码、资源文件和AndroidManifest.xml。 - `build.gradle`: 这是每...
在iOS应用开发中,自动化测试是确保产品质量和提高开发效率的关键环节。本文将详细介绍如何搭建一个iOS App的自动化测试环境,主要包括Xcode集成测试、UI自动化测试以及持续集成的配置。 首先,我们要了解自动化...
【appcrawler自动化测试实践】 appcrawler是一款用于移动应用自动化测试的工具,尤其适用于进行稳定性测试。它基于Scala编程语言,并运行在Java虚拟机(JVM)上,利用“UI遍历”的理念,对应用程序的界面元素进行...
这个项目的核心是利用各种自动化测试框架和技术,确保应用程序在不同的设备和使用场景下都能稳定运行。 首先,我们需要了解自动化测试的基本概念。自动化测试是通过编写脚本和使用测试工具来执行一系列预先定义的...
将UI自动化测试框架建立在SpringBoot之上,意味着我们可以利用Spring的依赖注入、AOP(面向切面编程)等功能,以及其强大的社区支持和丰富的生态系统。 对于APP测试,框架可能采用了像Appium这样的工具,它支持多种...
Appium App UI自动化测试 Appium App UI自动化测试是指使用Appium框架对移动应用程序的用户界面进行自动化测试。Appium是一款开源的自动化测试工具,支持多种移动平台,包括iOS和Android。 一、Appium App UI自动...
接下来,我们将重点关注一些常用的APP自动化测试工具: 1. **Appium**:这是一个跨平台的开源工具,支持Android和iOS,使用Java、Python等多种语言编写脚本。其基于Web服务器架构,通过REST接口与客户端交互,执行...
【基于关键字驱动的APP自动化测试方案】是一种针对移动应用程序(APP)进行高效自动化测试的方法,旨在提高测试质量,提升测试效率。随着移动互联网的迅速发展,APP版本迭代更新频繁,测试工作量大且重复性高,成为...
"金蝶称重app项目"就是这样一个专注于金融股票领域的应用,它利用uni-app这一跨平台开发框架,为用户提供了一流的股票交易体验。本文将深入探讨该项目的技术栈、设计思路以及uni-app在金融股票app开发中的应用。 一...