公司可能也有关于对app自动化的一些想法,让我去研究下。当然以移动互联网的热度。对于app自动化测试技术听闻已久。也一直想要去学习。正好。这次可以在工作时间中学习。emmm。希望自己能坚持把这个系列更新完吧。

首先肯定是使用appium去做app自动化。appium支持多种编程语言。支持多桌面系统。支持安卓和ios。

appium扩展了很多selenium的协议。和selenium一样是C/S结构的。所以它和selenium一样。有客户端和服务器端。

客户端:不同编程语言可以使用对应语言的客户端把请求发送给服务器

服务端:有支持windows,MAC,linux等操作系统版本的。这也是支持多系统的原因

大致原理是使用编程语言,通过对应编程语言的客户端,请求到对应操作系统的服务器,操作ios和安卓的真机或模拟器

所以这个系列是使用Python3,windows10 64位操作系统,安卓真机,来写的。

配置所需软件及我当前使用的版本:

1)java jdk  1.8.0

2)android sdk  24.4.1

3)Python3  3.7.3

4)Appium-Python-Client

5)node.js  10.15.3

6)Appium-windows  1.13.0

7).net framework  4.8

8)appium-doctor

部分软件需要你懂得,无法下载的可以从我的网盘下载(发布博客有些字不予许,所以就用你懂得了)

链接:https://pan.baidu.com/s/1oHa05lTEJaiCYZnA_eOHrA 
提取码:qk6z

由于需要安装的软件较多。分为两篇来写。这篇主要写android sdk。由于android sdk 是用java开发的所以需要java的运行环境。下载java jre应该也可以。但是保险起见。使用了java jdk。请一定要下载jdk 8 版本就行了,不需要太高了。后面定位用的工具只有jdk 8 能运行起来,太高就报错。变量配置相关文章网上一大把。这里不多说了。

2)Android sdk下载安装

Android sdk是安卓的开发和测试必备的环境,官网的下载很麻瓜。所以使用了一个国内网站的:https://www.androiddevtools.cn/

1.打开网址后点击Android SDK,选择SDK Tools。然后选择对应系统版本进行安装

2.将下载的文件解压,然后点击SDK Manager.exe。建议直接解压到非系统盘下。因为之后下载的内容较大,配置环境变量也容易。

3.其他选项默认,选择想要下载的安卓版本及api版本。我是只下载了10的。另外这个下载你懂得。如果无法下载。那么还是上面那个网站。选择SDK。根据网站提示进行安装。

4.下载完后,在系统新建变量:ANDROID_HOME,对应变量值为SDK Manager.exe所在的文件路经(其实是sdk安装路径)

5.path下添加两个变量:%ANDROID_HOME%\platform-tools和%ANDROID_HOME%\tools

6.因为adb是在platform-tools文件下的。在cmd中验证一下是否配置成功,输入adb,会有相应版本等信息

7.连上手机,输入adb devices 如果出现类似截图的一串字符。表示devices连接成功。(如果没有,那只能自己检查环境了)

Python3+Appium学习笔记01-环境配置(上)的更多相关文章

  1. OpenGL 学习笔记 01 环境配置

    以下教程仅适用于Mac下的Xcode编程环境!其他的我也不会搞. 推荐教程:opengl-tutorial  本项目Github网址       OpenGL太可怕了...必需得把学的记下来,不然绝壁 ...

  2. Python3+Appium学习笔记02-环境配置(下)

    配置所需软件及我当前使用的版本: 1)java jdk  1.8.0 2)android sdk  24.4.1 3)Python3  3.7.3 4)Appium-Python-Client 5)n ...

  3. Qt5学习笔记(1)-环境配置(win+64bit+VS2013)

    Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...

  4. appium学习笔记(环境安装配置,设备启动)

      Android SDK下载及配置 下载地址 下载后解压缩,打开SDK Manager.exe,下载适当版本的Android包 配置环境变量:目录下的tools路径(含uiautomatorview ...

  5. 【lua学习笔记】——环境配置

    1 开发平台 windows7 64位 2 下载链接 http://www.lua.org/download.html 3 安装完成-环境配置 4  运行 WIN+R 运行 cmd 运行lua,显示配 ...

  6. 学习笔记-ionic3 环境配置搭建到打包

    折腾了两周总算理清楚了,参考的链接如下: https://blog.csdn.net/zeternityyt/article/details/79655150  环境配置 https://segmen ...

  7. Maven 学习笔记——Maven环境配置(1)

    在学习Selenium的过程中,接触到了Maven(项目管理工具),不至于学一路忘一路,左耳朵进右耳多出,还是决定边学边记录,毕竟听的不如 看的,看的不如写的吗.首先学一样东西,肯定得明确学的是什么, ...

  8. WP8 学习笔记(001_环境配置)

    Step 1  WP8 的开发要求64位操作系统,Windows 8及以上版本,需要激活版,建议网上买一个注册码.详见安装双系统. Step 2 安装好系统并已经激活之后,需要安装Windows Ph ...

  9. tensorflow学习笔记(1)-环境配置

    配置环境anaconda3+windows10+pycharm+python==3.5.2+tensorflow==1.1.4+cuda10.0+cudnn7 https://www.anaconda ...

随机推荐

  1. linux中文件权限的字母含义

    一.文件系统部分 - 普通文件(文本文件,二进制文件,压缩文件,电影,图片...)d 目录文件(蓝色)b 设备文件(块设备)存储设备硬盘,U盘 /dev/sda, /dev/sda1c 设备文件(字符 ...

  2. vue项目中event bus的简单使用

    之前做的一个vue后台管理系统中,需要实现这样一个功能:从列表页点击新建或编辑进入新建.编辑页面,新建.编辑完成后需要关闭当前的新建和编辑tab,而tab的关闭则是由项目中的tag组件控制的, 新建和 ...

  3. @KafkaListener和@KafkaListeners的使用

    2. consumer 使用了@KafkaListener注解. 2.1. pom.xml 引入以下依赖 <dependency> <groupId>org.springfra ...

  4. Centos7 添加开机启动服务

    1.在/usr/lib/systemd/system/下创建服务脚本xxx.service,格式如下: [Unit] Description=Scrapyd After=syslog.target n ...

  5. ElasticSearch中term和match探索

    一.创建测试数据 1.创建一个index curl -X PUT http://127.0.0.1:9200/student?pretty -H "Content-Type: applica ...

  6. ES6——入门学习指南

    ES6的简介: ECMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,已在2015年6月正式发布了.它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序 ...

  7. Python面向对象中的继承、多态和封装

    Python面向对象中的继承.多态和封装 一.面向对象的三大特性 封装:把很多数据封装到⼀个对象中,把固定功能的代码封装到⼀个代码块, 函数,对象, 打包成模块. 这都属于封装思想. 继承:⼦类可以⾃ ...

  8. 怎样理解document节点

    1. document是七种文档节点中的一种, 是最顶级的一种节点; 2. 其他六种节点都包在document节点之内; 3. document既是一种节点的名字, 也是这种节点在DOM中的实例对象; ...

  9. wpf 判断项目中的某个窗体是否已经打开或者已经存在

    foreach (Window item in Application.Current.Windows) {     if (item is window1) return; }

  10. php.ini中allow_url_fopen和allow_url_include的设置

    all_url_include在php 5.2以后添加,安全方便的设置(php的默认设置)为:allow_url_fopen=on;all_url_include=off;allow_url_fope ...