Appium+Python安卓自动化测试之启动APP和配置获取

Appium+Python安卓自动化测试之启动APP和配置获取

本文章未讲述appium+python环境部署,环境部署会新开文章

一、手机连接电脑

1、USB连接电脑和手机,手机上点确认连接(最好用原装线)

2、开启手机开发者模式和USB调试(每种手机不一样,可百度)

3、电脑和手机开启应用宝确认是否连接上,如下图说明已连上

4、或cmd下adb devices确认下是否连接上,如下图说明已连上

如果连接不上,尝试更换手机、数据线或多次重新连接或可采用无线连接(请查看博主博客)

 

二、获取appium启动app配置信息

1、获取'deviceName':'FJH5T18830006764',#手机唯一设备号

确认手机已连接电脑,cmd下adb devices

adb devices

FJH5T18830006764        device

2、获取'platformName':'Android',#移动设备系统IOS或Android

是安卓手机就Android,是苹果手机就IOS

3、获取'platformVersion':'9',#Android手机系统版本号

设置-关于手机,找Android版本

4、'app':'C:\\Users\\wangli\\Desktop\\kbgz-v5.7.0-release.apk',#APP文件路径

要测试app存放的路径

5、获取'appPackage':'com.xinrenlei.koubeigongzuo',#APP包名和'appActivity':'com.xinrenlei.koubeigongzuo.ui.setup.SplashActivity',#设置启动的Activity

打开cmd,输入指令aapt dump badging D:\test\xxx.apk(APK的全名,如手机淘宝.apk)

以手机淘宝.apk为例,如下图,这里就可以看到apk的包名:com.taobao.taobao

接着上一步操作,cmd屏幕拖到中间l找到launchable-activity

这里可以看到,淘宝的launcherActivity值为com.taobao.tao.welcome.Welcome

三、启动appium服务

1、双击appium打开启动页面,如果appium是在本机电脑host:127.0.0.1 port:4723

如果非本机电脑host:所在机器ip port:4723

2、点start Server启动appium成功,如下图

四、代码如下:

1、若手机已安装了app,每次启动不重新安装;偌手机未安装app,每次启动会安装app

appium+python启动app#!/usr/bin/env python
#_*_coding:utf-8_*_
import time
from appium import webdriver
desired_caps = {						'platformName':'Android',#移动设备系统IOS或Android'platformVersion':'9',#Android手机系统版本号'deviceName':'FJH5T18830006',#手机唯一设备号'app':'C:\\Users\\wangli\\Desktop\\kbgz-v5.7.0-release.apk',#APP文件路径'appPackage':'com.taobao.taobao',#APP包名'appActivity':'com.taobao.taobao.ui.setup.SplashActivity',#设置启动的Activity'noReset':'True',#每次运行不重新安装APP'unicodeKeyboard':'True', #是否使用unicode键盘输入,在输入中文字符和unicode字符时设置为true'resetKeyboard':'True'#隐藏键盘}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps) #与appium-server的通信协议

2、运行脚本,启动app

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/568046.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python身份证号掩盖出生日期的代码_利用Python制作全国身份证号验证及查询系统!就问你吊不吊!...

大家好哇,又是一个愉快的周末,今天本鸟给大家分享1个有趣的实战项目,用python制作“全国身份证号验证及查询系统”,成品界面如下图: 本系统可以实现身份证号真伪验证,年龄、性别及发证地查询,看…

jop怎么读音英语怎么说_“跨年”英语怎么说?

2020年已经过去了31日晚上跨年夜,你在哪里跨年呢?今天的问题来了,你知道“跨年”用英语怎么说吗?一起学习一下吧。“跨年夜”英语怎么说?跨年夜的英语表达是:Spend New Years Eve / Celebrate New Years Ev…

吴恩达深度学习笔记——卷积神经网络(CNN)

目录 一、计算机视觉(Computer vision) 二、边缘检测示例(Edge detection example) 三、更多的边缘检测内容(More edge detection) 四、Padding 五、卷积步长(Strided convolution&#xff…

react实现全选和反选_全选的实现

在很多的表单中我们都会看到有一个这样的功能&#xff0c;全选后进行一系列的操作。如操作前操作后简单的js实现首先要定义多选框&#xff0c;在表头可以使用id来定义同时添加onclick点击事件<input type"checkbox" id"all" onclick"checkAllCart(…

对tf.nn.softmax的理解

Softmax的含义&#xff1a;Softmax简单的说就是把一个N*1的向量归一化为&#xff08;0&#xff0c;1&#xff09;之间的值&#xff0c;由于其中采用指数运算&#xff0c;使得向量中数值较大的量特征更加明显。 如图所示&#xff0c;在等号左边部分就是全连接层做的事。 W是全连…

面试后要请你吃饭_面试问同事请吃饭唯独不叫你咋办?小伙说这是好机会,当场被录取...

分享职场故事&#xff0c;交流职场经验&#xff0c;欢迎关注“罗波”。不知道大家在面试的过程中&#xff0c;有没有遇到过一些考官出了非常奇葩或者让你难以回答的题目。曾经在一次人事招聘的面试环节中&#xff0c;我的朋友小何就遇到了这样的一个问题&#xff0c;当时领导问…

心动的本质是什么_那一刻,我怦然心动了......

见到布莱斯罗斯基的第一天&#xff0c;我心动了。他的双眸有种魔力让我如痴如醉。女孩对一个刚见面的男孩一见钟情&#xff0c;男孩成了她的邻居&#xff0c;而她管这种感觉叫&#xff1a;怦然心动。2010年《怦然心动》上映&#xff0c;导演罗伯莱纳用一棵树&#xff0c;一对小…

筒灯智能驱动芯片作用_如然之光,魅族 Lipro 智能家居发布首期健康照明系列--智能设备 -...

1 月 5 日&#xff0c;魅族科技(MEIZU)正式发布了 Lipro 智能家居旗下的首期产品&#xff0c;Lipro 健康照明系列。作为 Lipro 品牌的首次产品亮相&#xff0c;Lipro 健康照明系列集顶尖光源品质与优雅工业设计于一体&#xff0c;为用户带来全场景、高品质的光照体验。Lipro 健…

vue 如何生成一个dom元素_通过一个简单的示例学习如何编写Vue组件

大家好&#xff0c;本篇文章我将带着大家一起学习如何编写自定义组件(Components)&#xff0c;通过「vue基础」新手快速入门篇(一)这篇文章的学习&#xff0c;我们知道了 Vue 设计的目的就是为了方便我们创建基于组件UI的项目。基于这个设计原则&#xff0c;我们可以更专注于设…

tensorFlow13卷积神经网络发展

数据增强&#xff1a;增加训练数据&#xff0c;水平翻转&#xff0c;改变对比度 dim代表插入的位置。0代表第一个位置&#xff0c;1表示第二个位置&#xff0c;-1表示最后一个位置

物体运动到一个点停止_大颗粒搭建中常见的结构运动

今天&#xff0c;给大家带来大颗粒搭建中常见的结构家长们可以带孩子一起将原理编程实践举一反三&#xff0c;创造创新&#xff01;1齿轮传动齿轮传动是指用主、从动轮的齿轮进行动力传递&#xff0c;从而达到使物体运动的作用。① 减速传动当小轮是主动力大轮是从动轮时物体作…

第k个数组中的最小值

练习1&#xff1a; 二维vector操作&#xff1a; #include<iostream> #include <vector> using namespace std; int main() {vector<vector<int>> a;vector<int> b;b.push_back(1);b.push_back(2);vector<int> c;c.push_back(11);c.push_b…

Leedcode1-求树的最小高度

#include<iostream> #include<algorithm> #include<queue> using namespace std; //5种情况&#xff1a;空树&#xff1b;没有子树&#xff1b;只有左/右子树&#xff1b;有俩子树&#xff1b; struct BinaryNode {BinaryNode *left;BinaryNode *right;int d…

C++/C中 sizeof(指针)和sizeof(数组名)的区别

1、sizeof(array)/sizeof(int)的含义 array是个数组 sizeof (array)就是这个数组所占的内存总量&#xff08;字节数), sizeof(int)就是单个所占的内存. 所以呢&#xff0c; sizeof (array&#xff09; / sizeof (int)就是array数组的元素的个数. 2、 sizeof(指针)和sizeof(数…

数据结构-栈3-栈的应用-就近匹配

#define _CRT_SECURE_NO_WARNINGS #include"LinkList.c" #include<stdio.h> #include<stdlib.h> #include<string.h> //括号有没有匹配。哪个不匹配就指向哪个。。 //扫描字符串 //1、非括号字符忽略 //2、若遇到左括号&#xff0c;则入栈 //3、若…

使用 Jekyll 构建你的网站 - 初入门

文章目录 一、Jekyll介绍二、Jekyll安装和启动2.1 配置Ruby环境1&#xff09;Windows2&#xff09;macOS 2.2 安装 Jekyll2.3 构建Jekyll项目2.4 启动 Jekyll 服务 三、Jekyll常用命令四、目录结构4.1 主要目录4.2 其他的约定目录 五、使用GitLink构建Jekyll博客5.1 生成Jekyll…

调用ice服务器_Nodejs+socket.io搭建WebRTC信令服务器

前言我们在学习 WebRTC 时&#xff0c;首先要把实验环境搭建好&#xff0c;这样我们就可以在上面做各种实验了。对于 WebRTC 来说&#xff0c;它有一整套规范&#xff0c;如使它使用的接口、使用SDP进行媒体协商、通过ICE收集地址并进行连通性检测等等。除此之外&#xff0c;We…

数据结构-栈4-栈的应用-中缀转后缀

//碰到数字直接输出 //运算符号&#xff1a;与栈顶符号进行优先级比较//若栈顶符号优先级比运算符号优先级低&#xff1a;此符号进栈&#xff08;括号优先级最低&#xff09;//若栈顶符号优先级不低于运算符号优先级&#xff1a;将栈顶符号一直弹出并输出&#xff0c;直到不满足…