appium自动化测试(一)
一. 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自动化测试(一)的更多相关文章
- Appium自动化测试3之获取apk包名和launcherActivity后续
接着“Appium自动化测试3之获取apk包名和launcherActivity”章节介绍 测试脚本 1.测试脚本如下: # -*- coding:utf-8 -*- import os, time, ...
- 记安卓appium自动化测试实践
一.软件安装 1. 安装node.js,安装路径D:\Program Files\nodejs\ 可以在官网下载https://nodejs.org/zh-cn/download/,版本号为node- ...
- 你的第一个自动化测试:Appium 自动化测试
前言: 这是让你掌握 App 自动化的文章 一.前期准备 本文版权归作者和博客园共有,原创作者:http://www.cnblogs.com/BenLam,未经作者同意必须在文章页面给出原文连接. 1 ...
- Appium自动化测试环境搭建
前言 Appium是一个开源的自动化测试框架,支持跨平台,支持多种编程语言,可用于原生,混合和移动web应用程序,使用webdriver驱动ios,android应用程序.那么为了学习app自动化测试 ...
- Appium+python自动化(三十八) - Appium自动化测试框架综合实践 - 框架简介-助你冲击高薪,迎娶白富美(超详解)
简介 好久没有更新博客了,博友们是不是有点等不及了.不好意思啊,中秋节过后太忙了,这篇是好不容易抽点零碎时间写的.从这一篇开始小伙伴或者童鞋们,就跟随宏哥的脚步,一步步的从无到有,从0到1的搭建一个完 ...
- Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
简介 经过一段时间的准备,完善的差不多了,继续分享有关Appium自动化测试框架综合实践.想必小伙伴们有点等不及了吧! driver配置封装 kyb_caps.yaml 配置表 参考代码 platfo ...
- Appium+python自动化(四十)-Appium自动化测试框架综合实践 - 代码实现(超详解)
1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.由于时间的关系,宏哥这里用代码给小伙伴演示两个模块:注册和登录. 2.业务模块封装 因为现在各种APP的层出不群 ...
- Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)
1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.到今天为止,大功即将告成:框架所需要的代码实现都基本完成. 2.data数据封装 2.1使用背景 在实际项目过程 ...
- Appium+python自动化(四十二)-Appium自动化测试框架综合实践- 寿终正寝完结篇(超详解)
1.简介 按照上一篇的计划,今天给小伙伴们分享执行测试用例,生成测试报告,以及自动化平台.今天这篇分享讲解完.Appium自动化测试框架就要告一段落了. 2.执行测试用例&报告生成 测试报告, ...
- 全网最新方法:Win10下如何安装和搭建appium自动化测试环境
为了方便大家,下面是本人安装和搭建appium所需要的软件,自取. 链接:https://pan.baidu.com/s/1wl5Xnos4BmnSZsBRd6B5YA#list/path=%2F ...
随机推荐
- SpringMVC 之数据转换和国际化
1. 数据绑定流程 SpringMVC 主框架将 ServletRequest 对象及目标方法的入参实例传递给 WebDataBinderFactory 实例,以创建 DataBinder 实例对象; ...
- django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)
在python的开发中,遇到了这个错误: django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TA ...
- phpcms 列表页中,如何调用其下的所有子栏目?
{pc:content action="category" catid="$catid" num="99" order="list ...
- 安卓ios app自动化测试用例模板
import io.appium.java_client.android.AndroidDriver; import io.appium.java_client.android.AndroidElem ...
- LeetCode:二叉树的后序遍历【145】
LeetCode:二叉树的后序遍历[145] 题目描述 给定一个二叉树,返回它的 后序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] 进阶: 递归算法很 ...
- Linux网络相关命令firewalld和netfilter、iptables 使用(6/22)
iptables和netfilter的关系: netfilter在内核空间的代码根据table中的rules,完成对packet的分析和处置.但是这些table中的具体的防火墙rules,还是必须由系 ...
- Stalstack 安装
Stalstack 介绍 saltsack与shell自动化的区别 shell 自动化脚本 --> 串行 saltstack --> 并行 saltsack 平台管理插件 saltstac ...
- Windows 10 安装 到SSD硬盘
1.更换SSD硬盘 2.安装windows 10 系统(升级太慢,建议全新安装) 3.全程不到1个小时个月安装完成. 4.这个分数惨不忍睹,但是速度还是蛮快. 5.挂载机械硬盘,安装驱动,window ...
- 《Pro Git》第1章 起步
关于版本控制 什么是版本控制:记录文件内容变化,将来可查阅特定版本修订情况的系统. 版本控制演进 1)本地版本控制系统 2)集中化的版本控制系统(Centralized Version Control ...
- [BZOJ1257]余数之和
Description 给出正整数n和k,计算j(n, k)=k mod 1 + k mod 2 + k mod 3 + … + k mod n的值 其中k mod i表示k除以i的余数. 例如j(5 ...