手机应用自动化流程

一个典型的持续集成周期包括以下几个步骤:

1. 持续集成服务器不断从版本控制服务器上检查代码状态,看代码是否有更新。

2. 如果发现代码有最新的提交,那么就从版本控制服务器下载最新的代码。

3. 等代码完全更新以后,调用自动化编译脚本,进行代码编译。

4. 运行所有的自动化测试。

5. 进行代码分析。

6. 产生可执行的软件,能够提供给测试人员进行测试。

持续集成服务器,比如CruiseControl或者VSTS   CruiseControl, Anthill, Bamboo, TeamCity, Continuum,hudson,Jenkins

本次分享的总体脚本流程分为3部分,第一部分主要为构建APK;第二部分主要完成测试案例的执行(包括java和python代码的测试案例);第三部分是构建完成后结果展示。

目前结果展示设计主旨是:以邮件发送指定下载地址,用户访问指定下载地址获得测试结果的方式进行展示。

附:APK构建过程步骤:http://blog.csdn.net/jason0539/article/details/44917745

第一步:打包资源文件,生成R.java文件

【输入】Resource文件(就是工程中res中的文件)、Assets文件(相当于另外一种资源,这种资源Android系统并不像对res中的文件
那样优化它)、AndroidManifest.xml文件(包名就是从这里读取的,因为生成R.java文件需要包名)、Android基础类库
(Android.jar文件)
【输出】打包好的资源(一般在Android工程的bin目录可以看到一个叫resources.ap_的文件就是它了)、R.java文件(在gen目录中,大家应该很熟悉了)
【工具】aapt工具,它的路径在${ANDROID_SDK_HOME}/platform-tools/aapt(如果你使用的是Windows系
统,按惯例路径应该这样写:%ANDROID_SDK_HOME%\platform-tools\aapt.exe,下同)。

第二步:处理AIDL文件,生成对应的.java文件(当然,有很多工程没有用到AIDL,那这个过程就可以省了)
【输入】源码文件、aidl文件、framework.aidl文件
【输出】对应的.java文件
【工具】aidl工具

第三步:编译Java文件,生成对应的.class文件
【输入】源码文件(包括R.java和AIDL生成的.java文件)、库文件(.jar文件)
【输出】.class文件
【工具】javac工具

第四步:把.class文件转化成Davik VM支持的.dex文件
【输入】 .class文件(包括Aidl生成.class文件,R生成的.class文件,源文件生成的.class文件),库文件(.jar文件)
【输出】.dex文件
【工具】javac工具

第五步:打包生成未签名的.apk文件
【输入】打包后的资源文件、打包后类文件(.dex文件)、libs文件(包括.so文件,当然很多工程都没有这样的文件,如果你不使用C/C++开发的话)
【输出】未签名的.apk文件
【工具】apkbuilder工具

第六步:对未签名.apk文件进行签名
【输入】未签名的.apk文件
【输出】签名的.apk文件
【工具】jarsigner

第七步:对签名后的.apk文件进行对齐处理(不进行对齐处理是不能发布到Google Market的)
【输入】签名后的.apk文件
【输出】对齐后的.apk文件
【工具】zipalign工具

时间: 2024-10-12 16:33:53

手机应用自动化流程的相关文章

【JavaScript】停不下来的前端,自动化流程

http://kb.cnblogs.com/page/501270/ 流程 关于流程,是从项目启动到发布的过程.在前端通常我们都做些什么? 切图,即从设计稿中获取需要的素材,并不是所有前端开发都被要求切图,也不是所有前端开发都会切图,但请享受学习新知识的过程吧. 创建模版(html.jade.haml).脚本(javascript.coffeescript).样式(css.less.sass.stylus)文件,搭建基础的项目骨架. 文件(jade.coffeescript.less.sass…

Jmeter+Maven+Jenkins+Git接口自动化流程

最近在实现 Jmeter+Maven+Jenkins+Git 接口自动化,研究不到两周,实现了 Jmeter+Maven+Jenkins+Git  接口自动化 的整体流程. 仅以此博客简单记录下自己实现的过程. 一. 职责.角色明确 Jmeter: 执行者,录制接口测试脚本,运行脚本,得到结果,生成报告,统计数据: Maven,Git :管理者, Maven 主要负责项目的依赖管理,Git 主要负责项目的代码管理: Jenkins:调度者,持续集成(CI)工具:构建.部署自动化:可以持续编译,运

Rancher 构建 CI/CD 自动化流程 - 动态配置 Jenkins-slave(二)

一.说明 1.1 说明 前面介绍采用 Jenkinsfile + KubernetesPod.yaml 方式进行部署项目(Rancher 构建 CI/CD 自动化流程 - 动态配置 Jenkins-slave(一)),maven.kubectl 等容器工具需要在 KubernetesPod.yaml 中定义,存放在代码中,比较繁琐. 这里采用 Jenkinsfile + docker in docker 方式进行部署,把 maven 等工具都运行在 docker 容器中,这样减少了 yaml 文

手机APP开发流程

手 机 APP的开发流程越来越成熟了,因此,每年产生的APP也数以万计.就目前而言,在苹果的IOS平台与谷歌的安卓平台为主流,也有一些开发者仍坚守在 黑莓和微软的操作平台,之所以他们不会放弃黑莓10或Windows Phone 8平台开发,主要是因为苹果严格控制开发商,而Android平台免费 或者质量奇差的应用程序太多.那么手机App软件开发流程是具体怎样的呢? 为此,粗略分享一下App软件程序开发流程. 1)需求分析和产品分析 当收到客户的需求之后,不是马上动手去做功能分析.产品逻辑架构或者

HTML5移动端手机网站开发流程

最近一直在研究移动手机网站的开发,发现做手机网站没有想象中的那么难.为什么会这么说呢?我们试想下:我们连传统的PC网站都会做,难道连一个小小的手机网站难道都搞不定吗?其实手机网站就是一个微缩版的PC网站罢了!至于为什么觉得难.觉得无从下手. 段亮觉得有以下几点: 一.没有完整的思路和流程 就像做网站的流程一样,如果你能知道它的流程,我相信就不会觉得做手机网站难!真正难的是你没有思路. 二.把html5这门技术想的高深莫测 好像觉得学会用html5+css3做手机网站,就相当于学会了顶尖的绝世武功

手机验证码执行流程

验证码流程 1.单击“获取短信验证”按钮,将会对手机号进行非“空”判断. a) 如果为空,给出提示:请输入手机号. b) 如果不为空,判断手机号是否符合规则,不符合给出“手机号不符合规则”提示 c) 当手机号不为空并且符合规则,就进行第二步 2.弹出验证码输入框. a) 页面随机生成4位验证码(包括数字与字母)并且将手机号存放在cookie里面 b) 用户输入验证码,并且单击“确定”按钮,将会对验证码进行非“空”与匹配判断 c) 如果验证码为空或不匹配,则按钮不对其反应. d) 如果不为空且验证

大学生分期付款买手机的具体流程

很多大学生分期付款买手机,都不知道该去哪里分期?哪个商城最靠谱?该 怎么办理?具体流程怎么办?下面本文就来回答你们这些问题. 大学生分期,本人推荐贝多分,不说其它,就凭贝多分不用上寝室拍照,贝多分产品来自正规供货渠道,100%正品,不用把产品交给校园代理,直接由专业工作人员亲自送到您的手上,只要在校园内收货即可.送货之前,还会温馨电话咨询时间.地点,以免打扰你学习;不上寝室拍照.温馨电话沟通,真正做到免打扰. 大学生办理分期更简单,只需要教务系统信息.身份证就可以分期;购买流程更便捷: 注册——

手机APP自动化之uiautomator2 +python3 UI自动化

题记: 之前一直用APPium直到用安卓9.0  发现uiautomatorviewer不支持安卓 9.0,点击截屏按钮 一直报错,百度很久解决方法都不可以,偶然间看见有人推荐:uiautomator2 就尝试使用 发现比appium要简单一些: 下面文字主要来自虫师的博客 一.Uiautomator2原理介绍 1.uiautomator2是一个可以使用Python对Android设备进行UI自动化的库.其底层基于Google uiautomator,Google提供的uiautomator库可

手机APP自动化持续集成方案

自动化测试流程 自动化测试框架 版权声明:本文为博主原创文章,未经博主允许不得转载.