​2.1 基础环境搭建 当我们学习新的一项技术开始基本都是从环境搭建开始,本书除了第一章节也是的,如果你连最基础的环境都没有那么我们也没必要去说太多,大概介绍一下: 1.因为appium是支持android和ios自动化的,但是ios的自动化是不能够在windows机器上运行,所以如果你想都同时具备就必须是mac,当然也可以是黑mac. 2.在 Mac上配置需要哪些基础环境呢?我们通过下面的一张图片来了解 上面图片中的环境包括了ios和android两个环境,如果我们只需要其中一个或者像wind…
Appium+Java 自动化测试框架搭建主要分为以下几个方面的下载安装及环境配置 1.Java开发环境 涉及到的内容又jdk.编译器工具(推荐jdk 1.8.Eclipse编译器或者IDEA编译工具) 2.Android ADT 或者SDK 安装 3.Appium 安装 一.Java开发环境 eclipse 编译工具下载地址https://www.eclipse.org/downloads/ jdk1.8下载:https://www.oracle.com/technetwork/java/ja…
​4.1界面认识 在之前安装appium的时候说过我们有两种方法安装,也就有两种结果,一种是有界面的,一种是没有界面的,首先我们先讲一下有界面的,以及界面有哪些东西. 首先看第一幅图,如果你的是windows那么界面就应该是这样的,所以你发现你的和我的不一样也不用担心,正常.windows版整个界面只有7个按钮,我会按照从左到右从上到下的顺序讲.(mac的会有一定的差异,但并不是很大,只是排版和样式的问题,但是功能都一样.) Android Settings:左边的第一个按钮,主要是配置andr…
简介 今天是高考各地由于降水,特别糟糕,各位考生高考加油,全国人民端午节快乐.最近整理了一下自动化的东西,先前整理的python接口自动化已经接近尾声.即将要开启新的征程和篇章(Appium&python).那么首相的问题就是搭建环境了.好久没搭建环境又踩了不少坑,appium的环境搭建比较繁琐,好多同行估计都在环境上被卡死了.所以特此分享一下~~ appium可以说是做app最火的一个自动化框架,它的主要优势是支持android和ios,另外脚本语言也是支持java和Python.而且现在招聘…
Appium简介 Appium是一个开源的.跨平台的测试框架,主要用来进行app UI自动化,适用于原生应用.混合应用和移动网页应用(H5页面).目前支持Python.JavaScript.Objective C.Java.Ruby.PHP.C#等多种语言. python+appium环境搭建 1,配置python环境 如何在Mac上配置python环境在以前的文章中有记录过,这里就不展开说明啦,有需要的可参考小编的文章:Mac版-python环境配置(一):Python下载安装.Mac版-py…
1.1 移动自动化测试现状 因为软件行业越来越发达,用户的接受度也在不断提高,所以对软件质量的要求也随之提高,当然这个也要分行业,但这个还是包含了大部分.因为成本.质量的变化现在对自动化测试的重视度越来越高,在几年前自动化测试还没有像现在这么普及,但是现在随便去一家公司面试都会问到自动化测试,当然这个和他们公司是否运用到另说.但是不言而喻的是大家都意识到了软件测试这个行业都走向了自动化这条路.或许你认为实施自动化可能不是必须的,可能在你的观念中测试思想是最重要的,所谓的自动化工具或者框架都是用来…
​6.1 常用定位方法讲解 对象定位是自动化测试中很关键的一步,也可以说是最关键的一步,毕竟你对象都没定位那么你想操作也不行.所以本章节的知识我希望大家多动手去操作,不要仅仅只是书本上的知识,毕竟这个我只能够举例说明.下面我们来看我们常用的一些定位方式. 6.1.1 ID定位 无论是在web自动化还是app自动化中id都是唯一的,可能有的小伙伴看到这里会有疑问,因为有的资料说是通过name定位是唯一的,为什么你这里是id呢,其实这个在之前是不冲突的,但是如果你用的是appium较新版本是不行的,…
​5.1 Capability介绍 5.1.1 什么是Capability 在讲capability之前大家是否还记得在讲log时给大家看过的启动时的日志?在我们的整个启动日志中会出现一些配置信息,其实那些信息就是capability携带的配置信息,如果我们通过代码来启动我们能够看见的配置信息如下: PATH = lambda p: os.path.abspath(os.path.join(os.path.dirname(__file__), p)) capabilities = {} capa…
​9.1 等待函数的使用 9.1.1 为什么要使用等待函数 我们在做自动化的时候很多时候都不是很顺利,不是因为app的问题,我们的脚本也没问题,但是很多时候都会报错,比如一个页面本来就有id为1的这个元素,可是我无论怎么定位他都没办法操作,然后报错,这个是怎么个情况呢?因为当我们app打开一个页面的时候我们的appium的运行速度过快那么可能害没有将页面的资源解析完成然后你就去操作了,这样能行吗?肯定不行的,这样不报错谁错呢?所以在很多的时候我们都需要加载等待时间的.那我们是不是盲目的去每个页面…
​13.1 日志的定义 13.1.1 日志的定义 听到日志这个东西可能有的人莫名其妙,第一次接触就会觉得我们为什么要收集日志,即使要收集日志那么我们需要收集哪些日志,日志的作用是什么等等. 其实日志无论是在测试.开发中都非常重要,如果你在跑自动化时程序报错了,但是你没有日志你怎么去定位时程序错误还是你app的错误?或者还是其它环境因素? 在java中有log4j这日志模块,在python里面我们使用的是logging这个模块,这个模块不需要你去怎么下载安装等等,python自带的有,你只需要拿来…