宁波网站建设慕枫科技,建设网站5要素,具体的网站建设,自己制作手机网站一、环境配置
1、安装JDK#xff0c;版本1.8以上
2、安装Python#xff0c;版本3.x以上#xff0c;用来解释python
3、安装node.js#xff0c;版本^14.17.0 || ^16.13.0 || 18.0.0#xff0c;用来安装Appimu Server
4、安装npm#xff0c;版本8#xff0c;用…一、环境配置
1、安装JDK版本1.8以上
2、安装Python版本3.x以上用来解释python
3、安装node.js版本^14.17.0 || ^16.13.0 || 18.0.0用来安装Appimu Server
4、安装npm版本8用来安装Appimu Server
5、安装Android SDK用来下载ADB工具
6、安装Appium Inspector用来在手机/模拟器上定位元素
7、IDE: Pycharm
注意app自动化测试元素定位工具有
1appium自带的Appium Inspector工具
2python版uiautomator2中的weditor
3Android SDK自带UI Automator Vieweruiautomatorviewer.batAndroid API 高版本已经移除这个了
选择一款即可代码可以自己在Pycharm中编写也可以用元素定位工具录制点击生成代码。 配置好环境变量之后可以查询一下各个工具的版本 需要的安装包 通过百度网盘分享的文件appiumpython 链接https://pan.baidu.com/s/1YLkx7za-qfojT3o0gx2vIw?pwdig8h 提取码ig8h 二、Appium Appium分为服务端和客户端Appium服务端主要负责与手机或模拟器通信通过建立Session会话相互发送请求同时Appium服务端还为Appium客户端提供RESTful API。 Appium客户端是开发者用来编写自动化测试脚本的地方Appium客户端会发送指令给服务端以此来控制手机或模拟器的行为同时Appium客户端也会接收服务端返回的测试结果并根据结果决定下一步的操作。 Appium Server没有界面但是有Appium Inspector这个工具已经从Appium Desktop中独立出来了它可以定位UI元素返回元素xpath录制自动化流程并返回流程的脚本代码Appium 1版本是Appium Desktop的这种Appium 2 直接就使用包管理器安装Appium ServerAppium官方已经不推荐使用Appium Desktop可视化工具了因为它存在严重的安全隐患而且官方已经不再迭代新的版本。2022 年 1 月 1 日起Appium 团队不再维护或支持 Appium 1。所以本次用npm命令安装无界面版本的Appium Server。 在启动Appium服务器之前需要安装必要的依赖工具如Android SDK用于Android应用测试或Xcode用于iOS应用测试。
1、配置Android环境
测试Android应用需要配置Android SDK。Android 移动应用开发者工具 – Android 开发者 | Android Developers 官网下载Android Studio或者直接下载Android SDK包然后配置环境变量ANDROID_HOME和PATH确保系统可以找到Android SDK工具。
以下是Android Studio里面使用SDK Manager安装SDK相关安装路径不要有空格 命令行工具也可也安装上 配置系统变量
如果上述的步骤全部完成则Android SDK的环境已经搭建完成了这里主要是通过配置系统变量以便于可以直接在命令行操作Android SDK包中的各种工具。
1、打开系统控制面板-高级系统属性-环境变量
2、新增变量ANDROID_HOMED:\Program Files\sdk
3、更新PATH变量新增
%ANDROID_HOME%\build-tools\35.0.0
%ANDROID_HOME%\emulator
%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\cmdline-tools\latest\bin\ 如果也安装了命令行工具多加一个这个
4、若命令行运行某命令报错“不是内部或外部命令”也是采用这样的方式将其加入到PATH中
5、打开命令行工具输入命令“adb --version”可查看adb版本和adb的安装目录 安装appium-inspector官网https://github.com/appium/appium-inspector 2、配置iOS环境
如果你要测试iOS应用需要安装Xcode并确保安装了Xcode命令行工具。可以通过以下命令安装Xcode命令行工具
xcode-select --install 3、安装Appium
3.1、安装Appium服务器
使用Node.js的npm工具来安装Appium服务器
npm install -g appium 3.2、安装UiAutomator2
appium driver install uiautomator2 3.2、安装Appium Python客户端库
pip install Appium-Python-Client 如果不用appium自带的appium inspector元素定位工具也可以用Python版UiAutomator2中的weditor可以执行以下命令
pip install weditor
pip install --upgrade uiautomator2
python -m uiautomator2 init
命令行运行weditor --help确认是否安装成功
命令行输入weditor 会自动打开一个浏览器 3.4、启动Appium服务器
appium 3.5、连接真机或者模拟器测试
我这里用的是真机模拟器夜神MuMu或者其他的都可以
打开开发者模式USB线连接手机和电脑并且在开发者选项当中开启USB调试 查询设备信息和安卓版本adb devices adb shell getprop ro.build.version.release 查询当前活跃的程序adb shell dumpsys activity | findstr mResume需先打开手机应用
注Android 8.1之前用adb shell dumpsys activity | findstr “mFocus” 我这里打开QQ音乐把相关环境信息填写好
capabilities dict(platformNameAndroid,# 操作系统platformVersion10,# Android内核版本号automationNameuiautomator2,deviceNameMQS0219C16009039, #设备名称uiautomator2ServerInstallTimeout60000,appPackagecom.tencent.qqmusic, #应用程序包的标识符appActivity.activity.AppStarterActivity, #主要应用活动的名称noResetTrue, #确保自动化之后不重置app保留 session 信息可以避免重新登录unicodeKeyboardTrue, # 使用 unicodeKeyboard 的编码方式来发送字符串resetKeyboardTrue, # 将键盘给隐藏起来languageen,localeUS
)
代码可以用Pycharm写然后启动xx.py脚本也可以直接在Appium Inspector中填写信息启动会话 启动后会在手机上安装一个Appium Setting和两个uiautomator2.server的应用 启动会话如果报错UnknownError: An unknown server-side error occurred while processing the command. Original error: Error executing adbExec. Original error: ‘Command ‘D:\AndroidSdk\platform-tools\adb.exe -P 5037 -s MQS0219C16009039 install -r C:\Users\admin\.appium\node_modules\appium-uiautomator2-driver\node_modules\appium-uiautomator2-server\apks\appium-uiautomator2-server-debug-androidTest.apk’ timed out after 20000ms’. Try to increase the 20000ms adb execution timeout represented by ‘uiautomator2ServerInstallTimeout’ capability
可以手动安装这两个包在报错的目录下去安装 在这里cmd执行安装adb install命令会让你在手机上安装
adb install .\appium-uiautomator2-server-debug-androidTest.apk
adb install .\appium-uiautomator2-server-v7.1.1.apk 然后就可以了 三、编写脚本
1、导入必要的库
在编写测试脚本之前需要导入Appium Python客户端库和其他必要的库
import unittestfrom appium import webdriver
from appium.options.android import UiAutomator2Options
from appium.webdriver.common.appiumby import AppiumBy 2、设置Capabilities
Capabilities是一个字典用于告诉Appium服务器你希望如何设置测试环境。以下是一个示例展示了如何设置Android和iOS的Capabilities
capabilities dict(platformNameAndroid,# 操作系统platformVersion10,# Android内核版本号automationNameuiautomator2,deviceNameMQS0219C16009039, #设备名称uiautomator2ServerInstallTimeout60000,appPackagecom.tencent.qqmusic, #应用程序包的标识符appActivity.activity.AppStarterActivity, #主要应用活动的名称noResettrue, #确保自动化之后不重置app,保留 session 信息可以避免重新登录unicodeKeyboardTrue, # 使用 unicodeKeyboard 的编码方式来发送字符串resetKeyboardTrue, # 将键盘给隐藏起来languageen,localeUS
)3、初始化Appium WebDriver
使用上述Capabilities初始化Appium WebDriver
driver webdriver.Remote(http://localhost:4723/wd/hub, capabilities) 4、编写测试步骤
在初始化WebDriver之后可以开始编写具体的测试步骤。以下示例展示了如何在Android应用中查找元素并进行交互
# 等待应用加载time.sleep(5)查找元素并进行交互element driver.find_element(byAppiumBy.ACCESSIBILITY_ID, valueQQ音乐)
element.click()其他测试步骤...
5、结束测试
在测试结束时记得关闭WebDriver会话
driver.quit()
四、执行和调试
在编写完测试脚本之后可以通过运行Python脚本来执行测试。在运行过程中可以通过观察Appium服务器日志和测试脚本输出来调试和优化测试。
1、运行测试脚本
python your_test_script.py 2、调试测试脚本
如果测试脚本出现错误可以通过以下几种方法进行调试
查看Appium服务器日志Appium服务器会输出详细的日志信息可以通过这些日志来分析和定位问题。
使用断点调试使用Python的调试工具如PDB在代码中设置断点逐步执行代码观察变量值和执行过程。
增加日志输出在测试脚本中添加更多的日志输出帮助你了解代码的执行过程和状态。 说明
安装必要的环境jdksdkapppium的服务端和客户端等以及任意一种元素定位工具然后编码可以在编辑器里面编码也可以用元素定位器去录制生成代码。