接着“Appium自动化测试3之获取apk包名和launcherActivity”章节介绍

测试脚本

1.测试脚本如下:

  1. # -*- coding:utf-8 -*-
    import os, time, unittest
    from selenium import webdriver PATH = lambda p:os.path.abspath(os.path.join(os.path.dirname(__file__),p)) desired_caps = {}
    desired_caps['platformName'] = 'Android' # 设备系统
    desired_caps['platformVersion'] = '4.4.2' # 设备系统版本
    desired_caps['deviceName'] = 'Che2_TL00M' # 设备名称 desired_caps['app'] = PATH(r"E:\work_study\app\baidu\app\exueba_parent.apk")
    desired_caps['appPackage'] = 'com.exueba.parent'
    desired_caps['appActivity'] = 'com.exue8.parent.activity.WelcomeActivity' driver = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps)
    time.sleep(5)

小提示:

1.platformName:这里是android的apk

2.deviceName:手机设备名称,通过adb devices查看

3.platformVersion:android系统的版本号

4.appPackage:apk包名

5.appActivity:apk的launcherActivity

2.编写好测试脚本之后,启动appium软件,点击机器人的标志,选择好相应的apk路径,如下图所示。

3.然后点击三角形符号,启动,然后在pycharm运行脚本。(前提:确保手机已连接电脑)

4. windows上的appium是一个服务器,启动后之后,如果是第一次运行上面脚本,appium会在你手机里安装两个软件,一个是Appium Settings, 一个unlock。Appium Settings是一个client端,负责解释和执行Windows端appium的命令,而unlock只是一个用来唤醒手机屏幕,解锁的功能。第一次运行上面脚本,时间有点慢,因为先要安装Appium Settings和Unlock到你手机上,然后执行ADB命令去安装apk包,最后启动这个软件程序。启动过程,安卓上会弹出权限请求,例如sd卡读取权限,地理位置获取权限,这些,你需要手动去点击同意。目前,没有更好方法去自动化处理这个权限弹窗,因为这个不是一个app或者浏览器上的alert弹窗,所以,appium暂时不支持自动化这样操作。

详情参考:http://www.jb51.net/article/131051.htm、http://blog.csdn.net/u011541946/article/details/77916671

Appium自动化测试3之获取apk包名和launcherActivity后续的更多相关文章

  1. Appium+Python自动化 3 -获取 app 包名和 activity

    方法一: ①手机通过USB连接电脑 ②打开手机上被测app ③在电脑上 dos命令窗口,输入命令 adb shell dumpsys window w | findstr \/ | findstr n ...

  2. Android获取APK包名的几种方法

    Android获取APK包名的几种方法:1.adb shell pm list package -f | findstr 关键字 #只能获取到包名,主Activity名无法获取到 2.使用aapt-- ...

  3. Android自动化测试探索(三)Android SDK tools安装、aapt配置以及使用aapt获取apk包名

    Android SDK tools安装 下载连接: https://www.androiddevtools.cn 找到对应mac的版本下载安装即可 AAPT配置 #1. 进入根目录 cd ~ #2. ...

  4. Android自动化学习笔记:获取APK包名的几种方法

    ---------------------------------------------------------------------------------------------------- ...

  5. Appium 关于如何获取 apk 包名即 appPackage 和 appActivity

    方法2: a.启动待测apk b.开启日志输出:adb logcat>D:/log.txt c.关闭日志输出:ctrl+c d.查看日志 进入通过adb 连接上设备以后,通过如下命令查看包名 C ...

  6. 获取安卓应用APK包名的方法

    应用商店按照符合Android标准的原则进行设计,使用包名(Package Name)作为应用的唯一标识.即:包名必须唯一,一个包名代表一个应用,不允许两个应用使用同样的包名.包名主要用于系统识别应用 ...

  7. 获取软件的apk包名、查看手机设备名称等

    获取软件的apk包名 1.下载aapt,这里使用的是SDK自带的aapt,找到SDK路径下面的aapt.exe,本机路径:E:\downloads\android-sdk_r23.0.2-window ...

  8. 查看APK包名签名等信息

    有些游戏第三方比如分享需要配置游戏包名和签名,不同渠道包名签名又不同,所以时常需要查看不同apk包等签名信息,之前是使用等微博开放平台的手机客户端查看apk签名,前提是知道包名,网上找了下查看签名和包 ...

  9. 如何获取当前包名与activitity&&抓log

    若hi1:获取当前包名以及Activity (1)adb shell dumpsys activity | find "mFocusedActivity" (2)adb shell ...

随机推荐

  1. QueryRunner 结果处理器

    package cn.itcast.dbutil; import java.sql.SQLException; import java.util.List; import java.util.Map; ...

  2. 迭代器类vector::iterator 和 vector::reverse_iterator 的实现、迭代器类型、常用的容器成员

    一.迭代器 迭代器是泛型指针 普通指针可以指向内存中的一个地址 迭代器可以指向容器中的一个位置 STL的每一个容器类模版中,都定义了一组对应的迭代器类.使用迭代器,算法函数可以访问容器中指定位置的元素 ...

  3. HDU 3746 数据结构之KMP

    pid=3746">点击打开链接 题意:给T组数据,每组一个字符串,问最少加入多少个字符能够使这个串变成一个子串连续出现的串 思路:利用KMP的next数组进行变换,next数组保存的 ...

  4. Leetcode Copy List with Random Pointer(面试题推荐)

    给大家推荐一道leetcode上的面试题,这道题的详细解说在<剑指offer>的P149页有思路解说.假设你手头有这本书.建议翻阅. 题目链接 here A linked list is ...

  5. powerdesigner 画ER图

    ER图 即为 CDM图 - Conceptual Data Modal CDM可以转换成PDM.OOM.LDM等图,具体请详查 一般,CDM图示在概要设计阶段创建,PDM图示根据CDM图的基础上产生的 ...

  6. python 中写hive 脚本

    1.直接执行.sql脚本 import numpy as np import pandas as pd import lightgbm as lgb from pandas import DataFr ...

  7. CYQ学习主要摘要

    这个个人搞的框架不知道到底怎么样,做个项目测试下看看,本来想用EF的,大多数人说性能低,所以先放弃,试试这个,一些主要地方我做个摘录 5:多表怎么搞定? A:视图方式,将多表查询放到数据库里成视图,情 ...

  8. 【Android】14.2 外部文件存储和读取

    分类:C#.Android.VS2015: 创建日期:2016-02-27 一.简介 1.基本概念 内部存储的私有可用存储空间一般都不会很大,对于容量比较大的文件,例如视频等,应该将其存储在外部存储设 ...

  9. 改动app的默认设置(包含改动默认launcher)

    1.改为自己的launcher ComponentName component = new ComponentName( context.getPackageName(), MainActivity. ...

  10. IOS7 隐藏状态栏 (电池栏)

    电池状态栏. //方法一(代码设置): 现在ios7已经更改为透明,并且不占用屏幕高度.其中隐藏及显示的方法如下: 在uiviewcontroller的子类下,调用:     if ([self re ...