举个华为计算器的栗子「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

相关文章

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤

《SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤》本文主要介绍了SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤,文中通过示例代码介绍的非常详... 目录 目标 步骤 1:确保 ProxySQL 和 mysql 主从同步已正确配置ProxySQL 的

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

配置springboot项目动静分离打包分离lib方式

《配置springboot项目动静分离打包分离lib方式》本文介绍了如何将SpringBoot工程中的静态资源和配置文件分离出来,以减少jar包大小,方便修改配置文件,通过在jar包同级目录创建co... 目录前言1、分离配置文件原理2、pom文件配置3、使用package命令打包4、总结前言默认情况下,

在Mysql环境下对数据进行增删改查的操作方法

《在Mysql环境下对数据进行增删改查的操作方法》本文介绍了在MySQL环境下对数据进行增删改查的基本操作,包括插入数据、修改数据、删除数据、数据查询(基本查询、连接查询、聚合函数查询、子查询)等,并... 目录一、插入数据:二、修改数据:三、删除数据:1、delete from 表名;2、truncate

使用C/C++调用libcurl调试消息的方式

《使用C/C++调用libcurl调试消息的方式》在使用C/C++调用libcurl进行HTTP请求时,有时我们需要查看请求的/应答消息的内容(包括请求头和请求体)以方便调试,libcurl提供了多种... 目录1. libcurl 调试工具简介2. 输出请求消息使用 CURLOPT_VERBOSE使用 C

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

Redis多种内存淘汰策略及配置技巧分享

《Redis多种内存淘汰策略及配置技巧分享》本文介绍了Redis内存满时的淘汰机制,包括内存淘汰机制的概念,Redis提供的8种淘汰策略(如noeviction、volatile-lru等)及其适用场... 目录前言一、什么是 Redis 的内存淘汰机制?二、Redis 内存淘汰策略1. pythonnoe

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

windos server2022里的DFS配置的实现

《windosserver2022里的DFS配置的实现》DFS是WindowsServer操作系统提供的一种功能,用于在多台服务器上集中管理共享文件夹和文件的分布式存储解决方案,本文就来介绍一下wi... 目录什么是DFS?优势:应用场景:DFS配置步骤什么是DFS?DFS指的是分布式文件系统(Distr