举个华为计算器的栗子「Appium环境配置与调试​」

2024-02-25 16:20

本文主要是介绍举个华为计算器的栗子「Appium环境配置与调试​」,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

坚持原创输出,点击蓝字关注我吧

作者:清菡
博客:知乎、云+社区、博客园等各大平台都有。

目录

  • 一、Appium 概述

    • 1.混合应用

  • 二、安装 Appium

    • 1.下载地址

    • 2.Appium 有客户端(python 库)和服务端(Appium apk)

  • 三、Appium 环境搭建

    • 1.java1.8+版本

    • 2.Android SDK

    • 3.Appium Desktop

    • 4.Appium Client

    • 5.Android 驱动

    • 6.安卓模拟器

  • 四、调试

一、Appium 概述

1.混合应用

1.豆瓣上的文章都是 Html 网页,是放在 App 里面的。
2.用安卓系统的原生控件和 Web 网页组合在一起的。

「控件就是页面的元素。」

二、安装 Appium

1.下载地址

https://github.com/appium/appium-desktop/releases

2.Appium 有客户端(python 库)和服务端(Appium apk)。

Appium 是开源的,python、java、c#等都支持。但是作为一个中间角色,它既跟代码进行交互,也跟设备进行交互。

作为中间程序,它需要处理代码发送过来的所有命令。代码发送过来的请求、命令,那它就是 ip 地址和端口这样的一种服务形式。桌面程序就是一个服务端,必须启动 Server。

点击下 Start Server 这个按钮,提示你已经启动了。ip 是本机的 ip,端口号默认是 4723 可以修改。需要自己手动启动让这个中间程序在线,你才可以用 Python 代码实时向它发送命令,只有它启动了才能接收到你的请求。

Appium 和设备间要进行各种交互,不仅限于打开、安装、卸载 app、通知设置、系统设置等。appium desktop 借助 SDK 中的一个开发工具:安卓 sdk,需要安装 jdk 的版本不低于 1.8。

不需要下载安卓 sdk 里面的全部工具,只需要下载 Android ADT 就好了。「ADT 的全称就是安卓开发工具。」

三、Appium 环境搭建

我网盘里已经下载好全部的包:

链接:https://pan.baidu.com/s/1QaDMKqsyGafNEnctHnXx8A 提取码:wvtz

  1. java1.8+版本

  2. Android SDK

  3. Appium Desktop

  4. Appium Client

  5. Android 驱动

1.java1.8+版本

下载 jdk 之后,得到一个 exe 文件,双击进行安装就可以,安装过程中可以更改 jdk 的安装路径,可以根据自己的喜好进行更改,我自己喜欢默认路径安装。

安装完成之后,就需要配置 jdk 的环境变量了。

我的电脑->属性->高级系统设置->环境变量->系统变量,添加三个系统变量,如果已经有的话,直接编辑添加变量值就 OK;

JAVA_HOME

E:\Program Files\Java\jdk1.7.0_71(这是你自己刚才在安装的时候,选择的 JDK 安装路径)

Path

%Java_Home%\bin;%Java_Home%\jre\bin;(如果你的 JRE 选择了其他的路径,第一个分号之后应该是..\Jre\Bin 的路径)

CLASSPATH

.;%Java_Home%\bin;%Java_Home%\lib\dt.jar;%Java_Home%\lib\tools.jar

配置好环境变量之后,可以在 cmd 中输入 java,出现扬子鳄调试信息等,那就是配置成功了。

如果你的电脑安装 jdk,输入Java -version就能看到 jdk 版本,无需再次安装。

2.Android SDK

安卓 sdk 和 java jdk 相同,去环境变量中添加以下变量:

新建系统变量:

ANDROID_HOME

D:\adt-bundle-windows-x86_64-20140702\sdk(以你安装目录为准,确认里面有 tools 和 add-ons 等多个文件夹)

用户变量:

PATH

%ANDROID_HOME%\platform-tools;

系统变量:

path

D:\adt-bundle-windows-x86_64-20140702\sdk\platform-tools;D:\adt-bundle-windows-x86_64-20140702\sdk\tools;

输入adb version

3.Appium Desktop

直接双击安装即可。

4.Appium Client

安装 nodejs 需配置环境变量,环境变量里新建 NODE_PATH,变量值是把 nodejs 的安装路径配置进去。

「安装 nodejs 靠谱链接:」

https://www.cnblogs.com/li150dan/p/10451772.html

安装时已经勾选了 Add to path 了。

「然后使用命令安装 appium:」

npm install -g appium

通过上面这个命令安装的时候,下载很慢,经常失败或者卡住,可以使用 cnpm 进行安装:

npm install -g cnpm --registry=https://registry.npm.taobao.org

cnpm install -g appium

「安装完成后,命令行输入 appium 即可启动 appium 服务。但是录制肯定要启动 appium 界面的那个 Start Server 。必须关闭命令行启动的 appium 服务,因为只能选择一个启动方式。」

Appium 客户端(python 库)

「Appium 目前已有的客户端有:」

ruby、python、java、c#、js、PHP、robotframework

Python 客户端库运行如下 pip 命令安装:

pip install appium-python-client

到此,其实 appium 的环境已经搭建完毕。

5.Android 驱动

1.将手机用数据线连接电脑,打开手机开发者模式下的调试模式,然后在电脑上 cmd 窗口输入 adb devices ,能够输出设备的信息即可。
2.获取要测试的当前打开 app 的应用包名和 activity 名称:

adb shell dumpsys window w |findstr \/ |findstr name=

「注意:先打开你要录制的软件再输入这个命令查看。」

这样就能显示该软件的信息将它写入代码中。

6.安卓模拟器

安卓模拟器是能在 PC 平台模拟安卓手机系统的模拟器软件。比较常用的安卓模拟器有:夜神、海马、逍遥、genymotion 等。

模拟器默认是有 root 权限的。

「夜神模拟器:」

windows 平台双击安装。

地址:https://www.yeshen.com

usb 调试模式只针对真机不针对模拟器。

自己的安卓手机需要开启调试模式(开发者模式)。

四、调试

「代码如下:」

{"platformName": "Android","platformVersion": "10","deviceName": "2NSDU20410017297","appPackage": "com.huawei.calculator","appActivity": "com.huawei.calculator.Calculator"
}

点击 start session 后,手机弹出安装 2 个软件,直接安装即可,不用管它。

我是先打开计算器,然后录制的:

「录制出来的脚本如下:」

MobileElement el3 = (MobileElement) driver.findElementById("com.huawei.calculator:id/digit_8");
el3.click();
MobileElement el4 = (MobileElement) driver.findElementByAccessibilityId("乘");
el4.click();
MobileElement el5 = (MobileElement) driver.findElementById("com.huawei.calculator:id/digit_6");
el5.click();
MobileElement el6 = (MobileElement) driver.findElementByAccessibilityId("等于");
el6.click();

运行上面的脚本,就会看到通过代码可以启动华为手机上的计算器进行相关的操作 。

「注意:调试的过程中不要退出正在调试的软件。」


公众号「清菡软件测试」首发,更多原创文章:清菡软件测试 84+原创文章,欢迎关注、交流,禁止第三方擅自转载。

精彩推荐

怎么安装配置ADB环境?

使用Typora+PicGo配置Gitee图床
持续集成有什么好处?快来看鸭
避免栽坑之掌握Jenkins工作原理
Jenkins读取Allure结果出报告
Jenkins持续集成「配置Slave」
pytest的fixture怎么用?
pytest环境准备与入门
Python基础汇总
通读《图解HTTP》脑图

感谢支持清菡原创,欢迎点击在看和转发!

清菡软件测试 提了一个问题

对本篇文章的评价?

参与讨论

这篇关于举个华为计算器的栗子「Appium环境配置与调试​」的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/746032

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

JavaScript中的高级调试方法全攻略指南

《JavaScript中的高级调试方法全攻略指南》什么是高级JavaScript调试技巧,它比console.log有何优势,如何使用断点调试定位问题,通过本文,我们将深入解答这些问题,带您从理论到实... 目录观点与案例结合观点1观点2观点3观点4观点5高级调试技巧详解实战案例断点调试:定位变量错误性能分

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二