一. appium的引入

二. adb

adb(Android Debug Brige)是用来连接安卓手机和PC端的调试桥梁,通过adb服务,在PC端命令行界面对手机或者模拟器进行全面的操作

安装:

adb是一个可执行文件,在SDK文件目录platform-tools下

adb的操作是通过cmd命令的dos窗口来实现的,所以要配置环境变量

安卓开发套件:ADT工具

adt-bundle-windows-x86-64-20140702

三. adb常用命令

adb devices  检测连接到电脑的安卓设备,这是是我们后期会经常用到的检测命令

adb pull <手机文件全路径>  <本机路径>  从手机中拉取信息放到本地电脑上

adb push <本机文件全路径>  <手机路径>  从本地推送信息到手机上去

adb install xxxx.apk  安装apk包,返回success就说明安装成功了

adb uninstall 包名  卸载apk

adb shell dumpsys activity | find "mFocusedActivity"  获取当前正在前台使用的app包名

adb start-server  当adb出现问题或者adb启动不起来的时候,先kill然后start

adb kill-server

adb shell ---登录设备shell(命令行的人机界面), ll ls命令都可以用,进入到linux命令环境了,相当于执行远程命令!

四. 环境安装

五. 运行原理—和web-selenium的比较

六. 移动端自带框架

移动端系统自带的自动化框架:

iOS9.3 及以上:苹果的 XCUITest

iOS9.3 及以下:苹果的UIAutomation

Android 4.2+:谷歌的UIAutomator

Android 2.3+:谷歌的Instrumentation(通过绑定另外的项目—Selendroid提供Instrumentation的支持)

◆ 不需要把Appium特定的或者第三方的代码编译进你的应用

◆ 意味着你测试使用的应用与最终发布的应用并无二致

七. appium

1. appium是开源、跨平台的自动化测试工具。支持本地、移动端app、桌面app测试

2. 平台支持IOS模拟器(simulators)、安卓模拟器(emulators)、真机(IOS、Android、MAC、Windows)

八. Desired Capabilities

九. Appium的理念

Appium旨在满足移动端自动化需求的理念,概述为以下四个原则:

◆ 你没有必要为了自动化而重新编译你的应用或者以任何方式修改它

Android/IOS系统自带框架

◆ 你不应该被限制在特定的语言或框架上来编写运行测试

WebDriver API

客户端—服务器协议(称为JSON Wire Protocol)

◆ 移动端自动化框架在自动化接口方面不应该重造轮子

WebDriver—Web浏览器自动化的标准

附加可用于移动自动化的API方法

◆ 移动端自动化框架应该开源,不但在名义上而且在精神和实践上都要实至名归

Appium开源

appium自动化测试(一)的更多相关文章

  1. Appium自动化测试3之获取apk包名和launcherActivity后续

    接着“Appium自动化测试3之获取apk包名和launcherActivity”章节介绍 测试脚本 1.测试脚本如下: # -*- coding:utf-8 -*- import os, time, ...

  2. 记安卓appium自动化测试实践

    一.软件安装 1. 安装node.js,安装路径D:\Program Files\nodejs\ 可以在官网下载https://nodejs.org/zh-cn/download/,版本号为node- ...

  3. 你的第一个自动化测试:Appium 自动化测试

    前言: 这是让你掌握 App 自动化的文章 一.前期准备 本文版权归作者和博客园共有,原创作者:http://www.cnblogs.com/BenLam,未经作者同意必须在文章页面给出原文连接. 1 ...

  4. Appium自动化测试环境搭建

    前言 Appium是一个开源的自动化测试框架,支持跨平台,支持多种编程语言,可用于原生,混合和移动web应用程序,使用webdriver驱动ios,android应用程序.那么为了学习app自动化测试 ...

  5. Appium+python自动化(三十八) - Appium自动化测试框架综合实践 - 框架简介-助你冲击高薪,迎娶白富美(超详解)

    简介 好久没有更新博客了,博友们是不是有点等不及了.不好意思啊,中秋节过后太忙了,这篇是好不容易抽点零碎时间写的.从这一篇开始小伙伴或者童鞋们,就跟随宏哥的脚步,一步步的从无到有,从0到1的搭建一个完 ...

  6. Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)

    简介 经过一段时间的准备,完善的差不多了,继续分享有关Appium自动化测试框架综合实践.想必小伙伴们有点等不及了吧! driver配置封装 kyb_caps.yaml 配置表 参考代码 platfo ...

  7. Appium+python自动化(四十)-Appium自动化测试框架综合实践 - 代码实现(超详解)

    1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.由于时间的关系,宏哥这里用代码给小伙伴演示两个模块:注册和登录. 2.业务模块封装 因为现在各种APP的层出不群 ...

  8. Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)

    1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.到今天为止,大功即将告成:框架所需要的代码实现都基本完成. 2.data数据封装 2.1使用背景 在实际项目过程 ...

  9. Appium+python自动化(四十二)-Appium自动化测试框架综合实践- 寿终正寝完结篇(超详解)

    1.简介 按照上一篇的计划,今天给小伙伴们分享执行测试用例,生成测试报告,以及自动化平台.今天这篇分享讲解完.Appium自动化测试框架就要告一段落了. 2.执行测试用例&报告生成 测试报告, ...

  10. 全网最新方法:Win10下如何安装和搭建appium自动化测试环境

    为了方便大家,下面是本人安装和搭建appium所需要的软件,自取. 链接:https://pan.baidu.com/s/1wl5Xnos4BmnSZsBRd6B5YA#list/path=%2F  ...

随机推荐

  1. [转载]js复制内容加版权声明代码

    转自:https://www.cnblogs.com/zdz8207/p/js-oncopy.html var ua = navigator.userAgent.toLowerCase(); if( ...

  2. java 子类不能继承父类的static方法

    先来看一段代码 /** * Created by bjchengpeng on 2018/7/19. */ /**运行结果 * woof * woofaa * * woof * Basenjiaa * ...

  3. Linux内核协议栈相关资料链接

    1.Linux内核网络分析(个人博客集合,分析较清晰) http://blog.csdn.net/qy532846454/article/category/1385933/2

  4. TouchDelegate

    TouchDelegate(Rect bounds, View delegateView) Parameters: bounds Bounds in local coordinates of the ...

  5. sql server如何把查询结果发邮件出去

    原本:https://zhidao.baidu.com/question/1819725575342685788.html --1.启用Database Mail扩展存储过程 sp_configure ...

  6. eclipse导入项目,项目名出现红叉的情况(修改版)

    转至:http://blog.csdn.net/niu_hao/article/details/17440247 今天用eclipse导入同事发给我的一个项目之后,项目名称上面出现红叉,但是其他地方都 ...

  7. R中apply函数族

    参考于:http://blog.fens.me/r-apply/ 1. apply的家族函数 2. apply函数 apply函数是最常用的代替for循环的函数.apply函数可以对矩阵.数据框.数组 ...

  8. day13 迭代器

    迭代器 'iterable' 可迭代的 内部含有__iter__方法的数据类型就是可迭代的 —— 可迭代协议 print(dir([])) print(dir({})) print(dir(5)) p ...

  9. GIT学习笔记(2):时光机穿梭与远程仓库

    GIT学习笔记(2):时光机穿梭与远程仓库 撤销操作 1.GIT如何跟踪修改 在我们修改了代码内容后,执行了git add和git commit命令来将其交由Git进行版本控制.我们前面举的例子是这样 ...

  10. angularjs中directive声明scope对象的用法

    总的来说用法 分三种: >1: scope: false  --> 继承父域,实现 双向数据绑定 示例代码 可自测: <!DOCTYPE html> <html lang ...