第一章、APPium、android自动化

第一章、APPium、android自动化

第二章、android利用QPython环境调用APPium

环境搭建

1、android studio 配置SDK Manger 的sdk、ndk、adb

控制台输入

open -e /Users/shenjianbin/.bash_profile.save

复制代码
export ANDROID_SDK=/Users/shenjianbin/Library/Android/sdk
export PATH=${PATH}:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools:$ANDROID_SDK/tools/bin
export ANDROID_NDK=/Users/shenjianbin/Library/Android/sdk/ndk/ndk
export ANDROID_NDK_R16=/Users/shenjianbin/Library/Android/sdk/ndk/ndk
export PATH=$ANDROID_NDK:$PATH

export PATH=${PATH}:${ANDROID_SDK}/tools
export PATH=${PATH}:${ANDROID_SDK}/platform-tools

拷贝上面路径执行

source /Users/shenjianbin/.bash_profile.save

执行ndk-build -v

//插入android手机开启usb

adb devices

2、appium配置

Appium-Server下载安装
https://github.com/appium/appium-desktop/releases

appium-inspector下载安装
https://github.com/appium/appium-inspector/releases

如果mac环境输入命令:

复制代码
   brew install node 
   npm install -g appium

安装完成后,npm会默认安装,检测是否安装成功,可以运行命令:

复制代码
node -v
npm -v

安装 Appium-Python-Client,并查看有没有安装成功

复制代码
pip3 install Appium-Python-Client==2.11.0
pip3 show Appium-Python-Client

安装python,可以安装3或2

复制代码
brew install python
python --version

3、测试(准备一台android 手机)

ADB无线连接Android

复制代码
adb shell ip -f inet addr show wlan0
adb tcpip 5555 
adb connect 192.168.31.101:5555
//去掉连接
// adb disconnect 192.168.31.101:5555

手机接入usb,手机电脑同一个wifi,打通手机能访问appium开启服务器

复制代码
ifconfig

打开appium,然后输入ip和相应配置,点击startServer

启动appium-inspector

appium-inspector对应json

复制代码
{
  "platformName": "Android",
  "appium:platformVersion": "12.0.0",
  "appium:deviceName": "Mate 30",
  "appium:appPackage": "cn.migudm.aipatinside",
  "appium:appActivity": "cn.migudm.aipatinside.mvp.ui.MainActivity"
}

copy对应json,然后save保存生成对应左边参数,点击start Session按钮

生成对应的python代码

有做过python项目的可以安装
pyCharm下载

然后把appium-inspector生成的python代码复制过来,如下图,当然也可以命令python appium_test.py直接运行

相关推荐
陈年老古董4 分钟前
PyTorch 实现 MNIST 手写数字识别学习笔记
笔记·python·深度学习·学习
SimonKing5 分钟前
开源神器 Navop:数据库+SSH+终端+AI,一个应用全搞定
java·后端·程序员
always_TT5 分钟前
【Python 字符串格式化:format() 方法】
android·开发语言·python
爱码猿9 分钟前
SpringBoot+MybatisPlus动态数据源
java·spring boot·后端
小义_10 分钟前
JDK 深度解析
java·linux·开发语言·python·面试
SendTomo13 分钟前
send.wang:基于浏览器WebRTC实现无客户端文件互传
网络·python·网络协议·webrtc·p2p
奈斯先生Vector30 分钟前
从“能调用”到“可运营”:AI Agent 进入多模型时代后的架构升级
java·javascript·数据库·人工智能·算法·架构·aigc
whcyhhh32 分钟前
头歌实践教学平台:大数据存储2023(十四下答案)
大数据·数据库·python
Json____33 分钟前
宿舍安全卫生检查系统:Node 全栈开发实战
java·前端·数据库·毕业设计·课程设计·毕设·wwwoop.com
pnoker36 分钟前
36 个驱动模块:应对协议碎片化
java·物联网·modbus·工业互联网·opc ua