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

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

[TOC]

目录

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出错的话可以看我这篇博客:

https://blog.csdn.net/qq_46158060/article/details/110239364

5.查看主包名主类名Activity

可以查看我这篇博客:

https://blog.csdn.net/qq_46158060/article/details/114821060

二.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
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

我们启动一下一加计算器

1649654006261.png

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

1649654107693.png

三.windows杀掉对应进程

杀死上述的4723端口

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

def killAppiumPid():
    #windows写法如下
    appium_port = 4723
    print(appium_port)
    cmd_find = 'netstat -aon | findstr %s' % appium_port
    print(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}------------------")

        # 执行被占用端口的pid
        cmd_kill = 'taskkill -f -pid %s' % pid
        print(cmd_kill)
        subprocess.call('taskkill /T /F /PID %s' % pid, shell=True)
        print("apppium-server 进程已杀掉")
    else:
        print("appiun-server 端口不存在")

运行killAppiumPid函数

1649654146070.png

1649654124229.png

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

相关文章
|
Windows
windows环境下根据端口号查询进程编号并杀掉此进程
windows环境下根据端口号查询进程编号并杀掉此进程
211 0
|
Windows
windows家庭版禁用 hype-v 命令行
windows家庭版禁用 hype-v 命令行
177 0
|
Windows
windows windows10 查看进程的命令行
windows windows10 查看进程的命令行
190 0
|
Linux Windows
【Linux】grub命令行引导进入windows系统
【8月更文挑战第20天】在Linux中通过GRUB命令行引导Windows的方法包括:1) 进入GRUB命令行模式,启动时按`c`键;2) 使用`ls`查找含Windows引导文件的分区,如`bootmgr`或`ntldr`;3) 设置根设备`root=(hd0,msdos3)`与链加载器`chainloader +1`;4) 输入`boot`命令启动Windows。请注意实际步骤可能因系统配置而异。
2439 2
Windows中如何查看被占用的端口、杀掉对应的进程
这篇文章介绍了在Windows系统中如何查看被占用的端口号以及如何杀掉占用端口的进程,包括使用命令提示符的`netstat -ano | findstr 端口号`命令查找进程PID,然后通过任务管理器或`taskkill /PID PID号`命令来结束进程。
Windows中如何查看被占用的端口、杀掉对应的进程
|
Windows
Windows 11 鼠标右键可选择 cmd 命令行选项
Windows 11 鼠标右键可选择 cmd 命令行选项
285 0
|
缓存 网络协议 Linux
碎片技能:在 Windows 的任意目录一键快捷进入 CMD 命令行界面
在Windows 10/11中,SaaS服务商常需使用命令行,如PowerShell或CMD。本文介绍了如何进入DOS命令行:通过“开始”菜单→“运行”→输入“cmd”,然后确认。此外,还展示了如何在任意目录快速启动DOS命令行,只需右键点击并选择相应菜单项。提供两种实现方法:一是导入注册表文件,二是使用名为ContextMenuManager的优化软件。建议使用软件方法,易于添加和删除菜单项。
613 1
碎片技能:在 Windows 的任意目录一键快捷进入 CMD 命令行界面
|
缓存 数据安全/隐私保护 虚拟化
windows端口被占用,无法通过netstat找到进程,占用的端口又不能修改,该怎么办?
项目运行时服务器8080端口被占用,常规`netstat`命令找不到占用进程。解决方法包括:1) 强制关机重启释放端口;2) 使用`netstat -anobq`或Windows 10的`Get-NetTCPConnection` PowerShell命令查找BOUND状态的进程;3) 调整Windows动态端口范围,避免冲突。注意,强制关机可能影响数据安全。
5726 2
|
Linux 调度
Linux进程——Linux进程间切换与命令行参数
Linux进程——Linux进程间切换与命令行参数
|
监控 Linux 开发者
【专栏】在Linux系统管理中,终止不响应或资源消耗大的进程至关重要
【4月更文挑战第28天】在Linux系统管理中,终止不响应或资源消耗大的进程至关重要。本文介绍了如何查找、终止和监控进程。使用`ps`和`grep`组合查找特定进程,或通过`pgrep`获取PID。使用`kill`命令(默认发送TERM信号)终止进程,如需强制终止,可使用`kill -9`发送`SIGKILL`信号。监控进程可借助`ps`、`top`、`htop`及`watch`命令。理解这些技能将有助于更有效地管理Linux进程。
330 3