文章目录

  • windows命令行启动appium及杀掉对应接口进程
  • 一.环境配置
    • 1.安装命令行版appium
    • 2.安装appium-doctor检测
    • 3.python安装Appium-Python-Client:
    • 4.定位uiautomatorviewer.bat
    • 5.查看主包名主类名Activity
  • 二.python-appium启动app
    • 1.appium启动一加计算器相关参数:
    • 2.windows查看端口
  • 三.windows杀掉对应进程

windows命令行启动appium及杀掉对应接口进程

本人环境前置条件:手机设备为真机一加7 Pro,使用的应用为一加计算器

一.环境配置

1.安装命令行版appium

npm可以使用淘宝镜像下载更快,如下命令为全局安装

npm --registry http://registry.npm.taobao.org install appium -g

2.安装appium-doctor检测

npm --registry http://registry.npm.taobao.org install appium-doctor -g

验证:cmd输入appium-doctor

3.python安装Appium-Python-Client:

pip install Appium-Python-Client

验证:cmd输入 appium -v

4.定位uiautomatorviewer.bat

使用定位工具uiautomatorviewer.bat,如果遇到报错请看我这篇博客

编写一个uiautomatorview截屏获取.uix工具_梦无矶的博客-CSDN博客

也可以使用appium的定位,还有weditor。

关于python版uiautomator2中的weditor
python语言实现的一个app自动化测试框架

安装uiautomator2:

pip install -U uiautomator2

初始化命令(往手机上推送apk包):

python -m uiautomator2 init

安装定位工具weditor:

pip install -U weditor

安装完成之后,命令行运行:weditor --help确认是否安装成功。

命令行输入:weditor 会自动打开一个浏览器 进行连接手机设备定位。

init出错的话可以看我这篇博客:

关于uiautomator2-ATX安装失败教程

5.查看主包名主类名Activity

可以查看我这篇博客:

查看主包名主类名Activity

二.python-appium启动app

1.appium启动一加计算器相关参数:

d = {}
d['platformName'] = 'Android'
d['deviceName'] = udid #填写你的设备id,adb devices显示的那个
d['appPackage'] = 'com.oneplus.calculator'
d['appActivity'] = 'com.oneplus.calculator.Calculator'
 subprocess.Popen('appium -p 4723 -bp 5723',shell=True)

端口可以根据自己的需求进行更改,-bp自己领悟是啥,这里不教。

import subprocess
from appium import webdriver
subprocess.Popen('appium -p 4723 -bp 5723',shell=True)
d = {}
d['platformName'] = 'Android'
d['deviceName'] = udid #填写你的设备id,adb devices显示的那个
d['appPackage'] = 'com.oneplus.calculator'
d['appActivity'] = 'com.oneplus.calculator.Calculator'
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',d)

2.windows查看端口

例子

netstat -ano | findstr 4723  #查询端口号1111的进程信息,从中可以获得pid

启动模拟器或手机,访问服务监听的那个端口:

webdriver.Remote('http://127.0.0.1:4723/wd/hub',dic)  #dic是模拟器或手机的设备信息和app信息
#根据pid查询进程信息,第一列就是进程名称
tasklist | findstr 2472
#根据pid杀死进程
taskkill /pid 2472 -t -f  #2472是pid

我们启动一下一加计算器

看到200,则是启动成功,这时候我们去查看端口

三.windows杀掉对应进程

杀死上述的4723端口

其实很简单,我们获取控制台输出的第一行,也就是带有LISTENING的这一行显示的PID号,对他进行处理拿到PID号,再进行taskkill即可

def killAppiumPid():#windows写法如下appium_port = 4723print(appium_port)cmd_find = 'netstat -aon | findstr %s' % appium_portprint(cmd_find)result = os.popen(cmd_find)text = result.read()print("result:", text)if text != "":pid = text.split("LISTENING")[1].strip()[0:5]print(f"--------------{pid}------------------")# 执行被占用端口的pidcmd_kill = 'taskkill -f -pid %s' % pidprint(cmd_kill)subprocess.call('taskkill /T /F /PID %s' % pid, shell=True)print("apppium-server 进程已杀掉")else:print("appiun-server 端口不存在")

运行killAppiumPid函数

如上图所示LISTENING已经被杀掉了。

python-windows命令行启动appium及杀掉对应接口进程相关推荐

  1. mysql 前台启动_从Windows命令行启动MySQL

    可以从命令行手动启动MySQL服务器.可以在任何版本的Windows中实现. 要想从命令行启动mysqld服务器,你应当启动控制台窗口(或"DOS window")并输入命令: C ...

  2. windows命令行启动常用工具

    在windows命令行(ctrl + r) 中输入关键字启动若干工具,能提升windows使用效率.不少工具其实是 C:\Windows\System32 下的工具. 下面列出一些常用关键字 task ...

  3. 达内终端端mysql命令_如何从Windows命令行启动MySQL

    要想从命令行启动mysqld服务器,你应当启动控制台窗口(或DOS window)并输入命令: C: C:Program FilesMySQLMySQL Server 5.0binmysqld 根据系 ...

  4. 使用Windows命令行启动服务

    在自己电脑上搭建了一个svn服务器,以服务的形式注册到了windows中,每次启动都要去服务选项中开启,感觉很麻烦,GOOGLE了一下,发现早就有了好方法: 来看windows中启动和关闭服务的方法: ...

  5. Windows命令行启动MySql

    在网上搜到的教程都是 net start mysql 则会提示我服务名无效 后来打开任务管理器,找到服务那一栏,才发现我的服务器名是mysql80 然后输入net start mysql80 就可以启 ...

  6. 使用windows命令行 启动WeGame

    第一步: 创建文件,目录"D:\other\shell",在shell文件夹内新建txt文档,命名为wegame.txt,放入下代码: @echo off echo Start A ...

  7. python多任务、面向对象、命令行启动动态绑定端口号静态web服务器代码实现

    一.静态web服务器-多任务 多任务web服务器:使用多线程,比进程更节省资源,支持多用户同时访问,可以同时处理多个客户端请求 实现步骤 若客户端与服务端建立连接,则创建子线程,使用子线程处理客户端请 ...

  8. 计算机打开服务的命令行,Win7使用命令行启动和停止Windows服务程序技巧

    想必,大家都了解Windows服务程序是Windows操作系统下能完成特定功能的可执行应用程序,它运行的话,同样会占用系统资源,如果我们能适时的停止系统服务,电脑的运行速度必将更快.接下来,U大侠小编 ...

  9. Grub 命令行启动Windows全过程

    这里所说的Grub和上文中说的Grub for DOS是不一样的,上文的Grub跟磁盘的第一扇区没有关系,即是说,如果你把上面C盘里grub目录删除,不会影响你的系统启动.我下面讲的Grub却会把一部 ...

最新文章

  1. 【Sql Server】DateBase-连接查询
  2. 基于Python实现图画转换字符画
  3. 百度前端技术学院task13源代码
  4. Epoll为我们带来了什么
  5. Strut2的属性驱动,模型驱动的理解
  6. VS2008下最新X264(svn 2009.9)编译不过的解决办法
  7. HP5200打印机从控制面板手动配置TCP/IP 参数
  8. 打印一种拓扑排序(假定给的是有向无环图时)DFS+栈
  9. java flush是什么意思,java – JPA中flush的确切目的是什么
  10. Java集合、泛型和枚举
  11. zabbix配置方糖微信推送报警
  12. 8.tendermint多节点组网
  13. 【数据结构—图】拓扑Topo排序
  14. 02 视频或语音转文本
  15. Civil3D2018-01使用配置
  16. SyntaxError: Unexpected token u in JSON at position 1
  17. html折叠 手风琴效果,jQuery制作效果超棒的手风琴折叠菜单
  18. 我的U盘也不见了 (搞笑版,笑死我了)
  19. 互联网早报:京东健康宠物医院上线:注册医生超3000名 提供7X24在线健康咨询服务
  20. 基于R语言或Matlab直接读取压缩包中的数据

热门文章

  1. php常用抽奖概率算法(抽奖,大转盘,广告首选)
  2. matlab 双层规划求解,双层规划模型的遗传算法求解的Matlab源码
  3. 安装部署 Kubernetes 仪表板(Dashboard)
  4. 寻找亚马逊测评师邮箱_关于亚马逊测评一些普及
  5. 手动制作满足SARscape要求的_dem数据
  6. linux cpu 查看微码,intel cpu微码 intel官网下的cpu微码 - 下载 - 搜珍网
  7. 华为手机语音通话时断时续原因
  8. 【 unity3d 】Transform.LookAt()方法
  9. 试验设计——拉丁超立方抽样
  10. 【大数据 BI】传统BI流程