Android自动化测试框架开发(一)自动化测试框架概要

在做Android自动化测试框架开发之前,我们应该先了解目前的发展状况,知道我们的目标是什么,也要了解当前的主流框架,做到知己知彼,取长补短。

首先要思考和了解几个问题:

  • 我们开发自动化框架的目标是什么?如何得到想要的框架?
  • 目前主流自动化框架的优劣势分析
  • 剖析主流自动化框架的源码
  • 如何利用框架进行二次开发?

本篇文章介绍上述第一个问题:

一:Android自动化测试框架目标

  1. 稳定性好:尽可能使用开发人员对控件定义的id等唯一定位信息,减少通过控件index进行节点判断
  2. 可移植性好:尽可能减少通过坐标点进行控件的判断和事件的记录,而monkey和monkeyRunner都是通过坐标信息
  3. 支持跨应用或跨进程交互:测试框架需支持跨应用,而Instrumentation不支持跨应用
  4. 运行效率高:窗口界面跳转监控和窗口定位要准确,而monkey和monkeyRunner不支持此功能
  5. 测试人员易上手:框架容易理解和掌握,测试脚本易编辑,Instrumentation等框架对测试人员有技术要求
  6. 方便调试:框架足够开放,方便调试
  7. 开发效率高:对APP的事件类型封装程度高,覆盖率高
  8. 控件易捕获:对控件识别性高,稳定性强

二:如何得到自己想要的框架

  1. 匹配框架:对目标应用程序(App)进行分析,找到特征点与当前的测试框架进行匹配,找到最合适的
  2. 框架结合搭配:针对大型复杂的应用程序,可以通过对不同框架的搭配结合使用来弥补对方的不足,实现较高的覆盖率和稳定性(例:UIAutomator和Robotium融合,覆盖更多事件,支持跨进程)
  3. 框架二次开发,封装:对于某些框架可进行二次开发和封装,提高利用率和稳定性
  4. 自己开发工具:基于现有框架原理,开发相应的测试工具

在进行后两项的实践之前,我们必须要对当前测试框架进行深入的了解,下篇文章将对当前的主流测试框架进行介绍和分析。

时间: 2024-10-09 16:23:42

Android自动化测试框架开发(一)自动化测试框架概要的相关文章

ssm框架开发中安全框架--在web.xml文件中的配置

<!--委派代理过滤器链--> <!--配置委派代理过滤器,filter-name必须是springSecurityFilterChain--> <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class&

避免重复造轮子的UI自动化测试框架开发

一懒起来就好久没更新文章了,其实懒也还是因为忙,今年上半年的加班赶上了去年一年的加班,加班不息啊,好了吐槽完就写写一直打算继续的自动化开发 目前各种UI测试框架层出不穷,但是万变不离其宗,驱动PC浏览器的基本上底层都是selenium,驱动无线app和浏览器基本是appium.monkey之类的,底层都是基于官方支持的自动化测试框架开发而来,然后上层又做了各种封装 首先在开始计划开发自动化时,第一步是了解目前已有的自动化开发技术,上面说了,最底层的就那几种,根据实际要去测试的业务需求选择合适的自

直播|python大咖实力领跑,分分钟扫盲电商网站自动化测试框架开发

作为大数据时代的软件测试工程师--你应该会的更多,还在单纯的只会点页 面测试BUG?又或者只懂功能测试技能.接口功能测试技能.自动化测试.性 能测试.敏捷测试.大数据其中某一个?是时候掌握新技能了,康忙北鼻! [前言] Selenium一直以来都被视作测试人员成功向自动化脚本开发转型的首选入门, 随着python语言的火热程度的持续攀升,基于python+Selenium实现自动化脚本 的开发也备受业内测试人员的追捧. 本课程基于Selenium3,python及BDD框架,结合大型电商京东实战

带有机器人框架的.NET自动化测试

Clayton Neal在软件测试和质量保证方面有超过13年的经验,其中有八年的Windows, web,和移动应用程序的测试自动化经验.他在测试领域的所有等级都工作过.最近他在Bloomberg and Misys担任QA经理.同时他还是Sogeti的自动化测试顾问.Clayton对自动化测试超迷恋,还见识了如何亲自成功实施测试自动化. ? 测试自动化的好处我们都很清楚,更快地反馈问题,减少手工测试,持续集成就是其中随口可举的.测试团队成员越多,公司使用自动化越多,就越好.为此,我们必须脱离实

上门洗车APP --- Android客户端开发 之 网络框架封装(二)

上门洗车APP --- Android客户端开发 之 网络框架封装(二) 前几篇博文中给大家介绍了一下APP中的基本业务及开发本项目使用的网络架构: 上门洗车APP --- Android客户端开发 前言及业务简介 上门洗车APP --- Android客户端开发 之 网络框架封装介绍(一) 本篇接着给大家分享网络框架封装,相信感兴趣的朋友已经对上篇博文中的一些开源项目有了些许了解,这里继续为大家介绍关于GenericDataManager 通用网络管理类中的 dataRequest 方法 和

接口自动化测试框架 (一) :APIAutoTest框架

前言 随着测试技术的发展,接口自动化测试逐渐成为各大公司投入产出比最高的测试技术.介入时间早,执行效率高,稳定性高的优点,让越来越多的公司引入接口自动化测试. 框架简介 APIAutoTest是处理API接口的轻量级自动化测试框架,Java语言实现,基于TestNG测试框架,支持持续集成,自动构建与测试. 框架介绍 1.    数据驱动设计,使用TestNG中的@DataProvider读取Excel中存储的自动化测试用例. 2.    基于TestNG测试框架 3.    使用HttpClie

自动化测试-东航B2C网站测试框架搭建

还是周末闲来无事做了一个我们公司电商产品-东航官网的自动化测试框架,发布到公司测试环境后获得好评. 现在把框架内容补齐做个阶段性的基线吧. 总体 1 现在框架运用到的技术: Selenium SpringMVC Hibernate Logback 2 主要接口的定位:以主流程的页面为接口,对其进行实现 3 异常处理机制:多种策略并存克服不稳定的测试环境 4 定时任务机制:采用Spring的提供的定时器进行cron配置 5 邮件系统:采用Spring和JavaX的邮件系统 6 测试数据持久化:入库

【FastDev4Android框架开发】Android Design支持库TabLayout打造仿网易新闻Tab标签效果(三十七)

转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/50158985 本文出自:[江清清的博客] (一).前言: 仿36Kr客户端开发过程中,因为他们网站上面的新闻文章分类比较多,所以我这边还是打算模仿网易新闻APP的主界面新闻标签Tab以及页面滑动效果来进行实现.要实现的顶部的Tab标签的效果有很多方法例如采用开源项目ViewPagerIndicator中的TabPageIndicator就可以实现.不过我们今天不讲V

【FastDev4Android框架开发】Android MVP开发模式详解(十九)

转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/49613861 本文出自:[江清清的博客] (一).前言: 今天我们的项目继续更新,今天我们主要讲解MVP开发模式以及具体实例. FastDev4Android框架项目地址:https://github.com/jiangqqlmj/FastDev4Android (二).简介: MVP(Model ViewPresenter)模式是著名的MVC(Model View