IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 2021-08-04 -> 正文阅读

[开发测试]2021-08-04

用Appium做简单的App测试(Android)

Tips:本文记述的是WIndows10环境下用appium对模拟器的app进行测试,有兴趣做Android测试的小伙伴可以康康



前言

作为一个测试人员,最常见的测试对象无非是web网站和app,前面的文章我们已经介绍了常用的adb命令和环境变量的配置,今天再介绍一下移动端app测试点。。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Appium是什么?

Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试。 它使用WebDriver协议驱动iOS,Android和Windows应用程序。

二、Appium下载与安装

Tips:做android的app测试首先要准备以下这些工具:

2.1.下载android-sdk

在上个文章有介绍安装及环境变量的配置
https://blog.csdn.net/m0_46230682/article/details/119319249?spm=1001.2014.3001.5502

2.2.下载appium

推荐去官网下载
http://appium.io/

2.3.模拟器

这里用的夜神模拟器测试,直接在应用商城搜索下载

2.4.用到的代码编辑工具(pycharm,环境python3.9.6)

这是python官网,在这里可以下载python原生环境
https://www.python.org/downloads/windows/


三、环境变量配置

Tips:给刚下载的工具(appium,夜神模拟器)配置环境变量

3.1.Appium配置

3.1.1.下载安装好了以后把这个文件添加一个快捷方式到桌面

在这里插入图片描述

3.1.2.添加好了之后配置环境变量,右击此电脑→属性→高级系统设置→环境变量→系统变量双击path,将你appium的根目录编辑到环境变量里面

在这里插入图片描述

3.2.模拟器配置

3.2.1.刚刚的系统变量再次添加模拟器的环境变量

在这里插入图片描述

3.2.2.最终测试所需的所有环境变量如下所示:

在这里插入图片描述
3.2.3.有时为了兼容性考虑,我们要将android-sdk里面的adb.exe复制一份到模拟器下,把模拟器里面的adb.exe替换掉,再改一下原来的文件(这里是nox_adb.exe)将模拟器里的这个文件也替换了

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3.3.python测试环境

3.3.1.上面准备工作做好,我们在进行python测试环境的安装

Tips:用python测试首先要安装python原生环境,这里用到的是python3.9.6

步骤:
1.win+R输入CMD打开命令面板输入以下代码直接回车

pip install Appium-Python-Client

2.下载完成后输入以下代码回车进行验证

pip show Appium-Python-Client

3.成功后会显示这样的结果

在这里插入图片描述
4.连接模拟器测试
输入以下代码

adb devices

显示这样就证明连接到模拟器
在这里插入图片描述


四、简单app测试

4.1.启动appium服务器

4.1.1.双击打开之前添加到桌面的appium.exe这个文件,打开后是这样,他的默认端口号是4723,不必改动

在这里插入图片描述
4.1.2.输入主机号127.0.0.1并且启动服务器
在这里插入图片描述
在这里插入图片描述

4.2.启动夜神模拟器

4.2.1.下载安装计算器(模拟器应用商城就可以下载)

在这里插入图片描述

4.2.2.分辨率设置
步骤:1.点击上面的齿轮→性能设置
在这里插入图片描述

4.3.使用Python测试

Tips:这里使用的是Pycharm编译工具,对于Pycharm安装我用的是社区版的,小伙伴门也可以在官网商城下载

4.3.1.打开Pycharm输入如下代码:

# !usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@File     :   test_app01.py
@Time     :   2021/7/30 18:57:44
@Author   :   XiaoXin
@Version  :   1.0
@Blog     :   https://blog.csdn.net/m0_46230682
@E-mail   :   vincent8806@126.com
"""

# here put the import lib
from appium import webdriver
from time import sleep

desired_caps = {
    'deviceName': 'Android Emulator',
    'automationName': 'appium',
    'platformName': 'Android',
    'platformVersion': '7.1.2',
    'appPackage': 'com.ddnapalon.calculator.gp',
    'appActivity': '.ScienceFragment'
}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps)

Tips:运行成功模拟器就会自动打开计算器

4.3.2.对于desired_caps里面的参数:

deviceName: 启动的设备、手机或者模拟器
automationName: 使用的自动化引擎
platformName:使用的移动平台
platformVersion:指定平台的系统版本
appPackage:被测试App的Package名
appActivity:被测试APP的activity名

做Android测试前面的三个参数基本固定,后面三个参数:
platformVersion:指定平台的系统版本
在这里插入图片描述

appPackage:被测试App的Package名
appActivity:被测试APP的activity名
这两个参数获取我们采取的是查看日志的方法
1.首先打开cmd窗口输入以下代码:

adb logcat>D:\\logcat.txt

2 .在模拟器上打开要测试的app
3. 这时候我们打开D:\logcat.txt,记住你打开app的时间,Ctrl+F输入Displayed查找

在这里插入图片描述

4.这里就是我们所需要的信息,以中间的斜杠为分界,前面写在appPackage里,后面写在appActivity里

4.3.3.关于http://127.0.0.1:4723/wd/hub的解释:

首先 "127.0.0.1"是换回(loopback)地址,和localhost等价。
"4723"是端口号,可以使用"netstat -ano"来查看目前被占用的端口号。
“wd” 可以理解为"WebDriver"的缩写。
最后"hub"是指主(中心)节点。

4.3.4.用Appium测试计算器计算

Tips:find_element_by_id是一种app定位方式,通过实例化的模拟器对象driver调用的

# !usr/bin/env python
# -*- encoding: utf-8 -*-
"""
@File     :   test_app01.py
@Time     :   2021/7/30 18:57:44
@Author   :   XiaoXin
@Version  :   1.0
@Blog     :   https://blog.csdn.net/m0_46230682
@E-mail   :   vincent8806@126.com
"""

# here put the import lib
from appium import webdriver
from time import sleep

desired_caps = {
    'deviceName': 'Android Emulator',
    'automationName': 'appium',
    'platformName': 'Android',
    'platformVersion': '7.1.2',
    'appPackage': 'com.ddnapalon.calculator.gp',
    'appActivity': '.ScienceFragment'
}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps)
# 全局隐式等待
driver.implicitly_wait(30)
# 用计算机计算7*8
driver.find_element_by_id("com.ddnapalon.calculator.gp:id/linearLayout_record").click() # 点击空白
driver.find_element_by_id("com.ddnapalon.calculator.gp:id/btn_seven").click()  # 点击7
sleep(1)
driver.find_element_by_id("com.ddnapalon.calculator.gp:id/btn_mul").click()  # 点击*
sleep(1)
driver.find_element_by_id("com.ddnapalon.calculator.gp:id/btn_eight").click()  # 点击8
sleep(1)
driver.find_element_by_id("com.ddnapalon.calculator.gp:id/btn_equal").click()  # 点击等于
sleep(20)
driver.quit()

Tips:运行成功模拟器会自己执行计算,这里我用的是id定位,对于其他定位方式我就不介绍了,有兴趣的小伙伴可以去网上查阅下

4.3.5.如何定位

1.将desired_caps的所有参数复制

在这里插入图片描述

2.打开appium,启动检查器会话

在这里插入图片描述

  1. 点击编辑的将代码粘贴在大括号内,点击启动会话

在这里插入图片描述

4.点击对应的区块,各种元素就出现了

在这里插入图片描述

5.这里我们使用id定位要选择resource-id而不是id

在这里插入图片描述

6.复制id到find_element_by_id里面,click()是点击事件

在这里插入图片描述


总结

简单的计算器app测试

以上就是今天要讲的内容,本文仅仅简单介绍了app测试,有兴趣的小伙伴欢迎留言探讨研究。
  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2021-08-05 17:39:53  更:2021-08-05 17:40:06 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/28 14:06:35-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码