什么是Appium?

第三方自动化框架(工具),扩充了selenium webdriver 协议,在原有的基础上添加了移动端测试API

selenium webdriver 指定了客户端到服务端的协议

appium 是一个开源的、跨平台的自动化测试工具,用于app的自动化测试

appium 是跨平台的,支持android,ios,firefoxos等操作系统下的app测试

什么是selenium?

用于web应用程序测试工具,直接运行在浏览器,模拟用户操作,覆盖Windows、Linux、Mac,覆盖 IE、Chrome、firefox等浏览器,Java、Python多种语言进行脚本编写

官网:https://docs.seleniumhq.org/download/

版本:http://selenium-release.storage.googleapis.com/index.html

什么情况适合做自动化:

周期比较长的、需求比较稳定的、迭代周期比较长的

使用appium 做APP自动化测试的原理:

1)appium 的核心其实是一个暴露了一系列rest api的server

2)这个server的功能其实很简单:监听一个端口(4723),然后接受由client发送的command

3)然后翻译 这些command,把这些command 转成移动设备可以理解的形式发送给移动设备

4)移动设备执行完这些command后把执行结果返回给appium server

5)最后appium server 再把执行结果返回给client

1、APP自动化测试的环境配置:

1) 安装nodejshttps://nodejs.org/en/download/ 官网下载,安装好之后 cmd 里输入node -v 确定是否安装好(appium 是使用node js实现的,所以node是解释器)

2) 配置Android sdk 环境(monkey 工具下)

概念:

ADT(Android develpoment tools),安卓测试开发环境

adb(Android debug bridge) 是Android sdk 的一个工具,用来连接安卓手机和pc端的桥梁

创建ANDROID_HOME 系统环境变量,值为ADT下的sdk目录(D:\Program Files (x86)\adt-bundle-windows-x86_64-20140702\sdk)

将ANDROID_HOME 下的tools和platform-tools配置进path变量,即在path变量的值后面加上“;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;”

打开模拟器通过在Windows命令输入adb devices,检查是否可以检测到连接的设备信息(真机下需要用usb先连接电脑并在开发者模式下打开usb调试):127.0.0.1:62001

3)安装Appiumhttps://bitbucket.org/appium/appium.app/downloads/

安装完成之后需要配置环境变量,将appium安装路径下的node_modules/.bin目录配置到环境变量path后面

输入appium-doctor 检查appium做自动化需要依赖的环境ANDROID_HOME,JAVA_HMOE等是否都已准备好

出现这种就表示所需环境以及配置好了。

代码:

deviceName:设备名:127.0.0.1:62001

APPpackage:因为一个设备有很多APP,通过包名确定app--->com.tencent.mm

cmd输入:adb shell dumpsys activity | find “mFocusedActivity”

appActivity:app的一个页面--->com.tencent.mm/

monkey 是Android的一个内置程序

2、maven项目+selenium+testng 集成 环境搭建

1)创建maven项目:在左边空白处右击--new--project--输入maven,选择maven project--next--勾选 create a simple project--next--group id(分组,一般填写组织结构,相当于包)命名 如 com.ningmengban   artifact id (例如jar 包名) 命名如:appium42  ,packaging 是指打包成jar 或者war 包--finish

maven集成包官网下载:http://www.eclipse.org/m2e

1、本地仓库:C:\Users\Administrator\.m2

2、中央仓库:http://mvnrepository.com/

3、项目添加selenium,testng依赖,jar包的依赖:

http://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java/2.53.1

http://mvnrepository.com/artifact/org.testng/testng

4、eclipse 集成testng插件

selenium-Java:selenium是用于web应用程序测试的工具,测试直接运行在浏览器中,selenium webdriver 指定了客户端到服务端的协议

Java-client:扩充了webdriver的协议,在原有的基础上添加移动自动化相关的api

testng:下一代测试技术,利用注释来强化测试功能的测试框架,可以用来做单元测试和集成测试

5、如果没有集成,到eclipse插件中心下载安装,安装步骤(这个比较复杂,一般不用):

  1. help--install new software
  2. 在available software页面点击add
  3. 输入name:TESTNG ,location:http://beust.com/eclipse/
  4. 点击ok,选择加载出来的testng
  5. 点击next---i accept the。。---finish
  6. 开始安装
  7. 安装完毕,重启即可使用

一种简单的集成方法:解压testng压缩包,把里面对应的features 与plugins 文件夹下的文件夹copy到本地eclipse 根目录下对应文件夹下,重启即可

 

APP自动化测试的环境配置的更多相关文章

  1. 创建app前的环境配置/AppIcon/启动图片

    1.真机调试http://blog.csdn.net/tht2009/article/details/48580569 2.创建app前的环境配置

  2. 前端自动化测试 —— TDD环境配置(React+TypeScript)

    欢迎讨论与指导:) 前言 TDD -- Test-Drive Development是测试驱动开发的意思,是敏捷开发中的一项核心实践和技术,也是一种测试方法论.TDD的原理是在开发功能代码之前,先编写 ...

  3. Python appium搭建app自动化测试环境

    appium做app自动化测试,环境搭建是比较麻烦的. 也是很多初学者在学习app自动化之时,花很多时间都难跨越的坎. 但没有成功的环境,就没有办法继续后续的使用. 在app自动化测试当中,我们主要是 ...

  4. Java安装与环境配置

    Java安装 第一步 安装jdk-8u111-windows(根据操作系统的位数选择安装32位或64位) 注:路径用英文,不要出现中文和空格等.jdk和jre放在同一个文件夹下,便于管理 本例的路径为 ...

  5. app自动化测试环境配置:adb环境配置、monkey环境配置、appium环境配置大全

    1. 安装jdk 2. 安装配置Andriod sdk 安装Andriod sdk前首先需要安装配置好jdk环境. 然后安装Android sdk 安装完成后需要配置环境变量:ANDROID_HOME ...

  6. IOS-Appium 自动化测试——环境配置及模拟器、真机跑测试

    在MAC环境下配置IOS的appium的自动化测试环境,主要包含三个部分: 一.环境配置 1.安装homebrew(homebrew可以提供MAC OS无法提供的很多套件) ruby -e " ...

  7. 【Mac + Appium + Python3.6学习(三)】之IOS自动化测试环境配置

    在做这一节之前先配置我的另一篇文章所需要安装的前提准备条件:<[Mac + Appium学习(一)]之安装Appium环境前提准备> 一.安装IOS自动化测试环境 配置环境: Appium ...

  8. App自动化测试-1.App自动化介绍和环境搭建

    App自动化测试-1.App自动化介绍和环境搭建 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-b ...

  9. APP自动化环境配置

    做自动化很多人都不喜欢做app自动化,说实话,我也不喜欢做app自动化,但是没办法,老板给你钱,让你做,不得不做! 其实app自动化的难点就在于环境,环境OK了之后一切都和web自动化差不多,顶多就是 ...

随机推荐

  1. 玩转 SpringBoot 2 快速搭建 | Spring Tool Suite篇

    Spring Tool Suite (STS) 工具介绍 我个人比较推荐使用 Spring Tool Suite(STS),之所以推荐使用 Spring Tool Suite(STS) ,是因为它是 ...

  2. JSON格式提取相同属性的某个值

    [ {UID:"222",value:"111"}, {UID:"222",value:"103"}, {UID:&qu ...

  3. HDU 6044

    题意略. 思路: I.对于整个区间a1,....,an,必然有一个区间[1,n]与之对应,因为a1,...,an是1,...,n的一个排列,所以在[1,n]中定然有一个最小的数字1, 如果最大的区间[ ...

  4. Java集合框架之Vector浅析

    Java集合框架之Vector浅析 一.Vector概述: 位于java.util包下的Vector是Java集合框架的重要一员,虽然没有ArrayList那么的常用,但是我们还要对其做相关学习: 1 ...

  5. CodeForces - 938D-Buy a Ticket+最短路

    Buy a Ticket 题意:有n个点和m条路(都收费),n个点在开演唱会,门票不同,对于生活在n个点的小伙伴,要求计算出每个小伙伴为了看一场演唱会要花费的最小价格: 思路: 这道题我一开始觉得要对 ...

  6. POJ 3067 Japan (树状数组求逆序对)

    POJ - 3067 题意:有(1-n)个城市自上到下在左边, 另有(1-m)个城市自上到下在右边,共有m条高速公路,现求这m条直线的交点个数,交点不包括在城市处相交. 题解:先将高速公路读入,然后按 ...

  7. 主席树区间第K大

    主席树的实质其实还是一颗线段树, 然后每一次修改都通过上一次的线段树,来添加新边,使得每次改变就改变logn个节点,很多节点重复利用,达到节省空间的目的. 1.不带修改的区间第K大. HDU-2665 ...

  8. git连接远程分支

    今天在再用git连接到远程的dev分支的时候出现了下面的情况 $ git checkout -b dev origin/dev fatal: 'origin/dev' is not a commit ...

  9. MyCat数据库的基础配置及使用

    一.为什么需要分布式数据据库 随着计算机和信息技术的迅猛发展,行业应用系统的规模迅速扩大,行业应用所产生的数据量呈爆炸式增长,动辄达到数百TB甚至数百PB的规模,已远远超出传统计算技术和信息系统的处理 ...

  10. Git使用教程 Windows使用Git全攻略

    在Windows上安装Git 我们需要先把Git的安装包下载下来,访问网址:https://git-for-windows.github.io/ 或者百度网盘:链接: https://pan.baid ...