Python APP自动化测试详解

2023-11-09

一、App自动化测试简介

随着移动互联网的发展,越来越多的App产品应运而生。很多公司除了Web产品外还研发了相应的手机App产品,一些公司的主营业务甚至就是App。

测试工程师也需要掌握一定的App端测试技能,从而让自己从烦琐、重复的“点点点”的人工测试中解脱出来,用自动化的“武器”武装自己,以适应新的测试需求。

1、App自动化测试简介

App测试,顾名思义就是针对手机中的App进行的测试工作。

它和Web端的测试流程类似,具体如下:

  1. 需求分析。
  2. 制定测试计划。
  3. 设计测试用例。
  4. 执行测试用例。
  5. 记录和跟踪bug情况。
  6. 验收测试。
  7. 生成测试报告并分析。
  8. 用户体验分析。
  9. 软件发布上线。

如图所示为手机App完整的测试流程图,该图详细地描述了一个手机App完整的测试过程。

手机App完整的测试流程:

App在每次测试和上线时都有一个清晰的版本号,以方便对功能点进行管理和回溯,这一点和Web测试不同。App测试的重点更多涉及UI层,对用户的交互性测试也更加看重。

根据bug的类型,可以把App测试分为以下几类:

  • 功能性测试:需要检查产品的功能是否实现,功能是否符合产品设计,有无多余的功能点等。
  • 易用性测试:重点看界面是否美观,操作是否简便,有无完整的文档支持等。
  • 安全性测试
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python APP自动化测试详解 的相关文章

  • 在 Android 上使用 DU

    有没有类似于 unix 命令 du 我可以在 adb shell 上使用的东西 我正在尝试找到一种方法来查看每个文件有多大 因为我有一个应用程序变得非常大并且失去控制 并且我正在尝试确定它具体是哪个文件 数据库 以便我可以解决问题 我正在
  • 如何从命令行发送 String[] 意图额外值?

    我的自动化测试通过发送意图adb shell am 但我无法指定一个额外的字符串数组 根据意图类文档 https developer android com reference android content Intent html put
  • Android Studio 3 中的“活动管理器状态”在哪里?

    Android studio 2 x 中有一个非常方便的调试功能 但目前 3 x 中没有 它有点隐藏在用户界面中 然后它会提示详细的活动管理器状态 我知道 我可以通过以下方式获取该输出adb shell dumpsys activity t
  • 如何将Android模拟器连接回ADB?

    当我通过在 Eclipse 中点击 调试 启动模拟器后 经过一定时间后它会与 ADB 断开连接 但模拟器保持打开状态 它反应灵敏 我可以导航和启动应用程序 如何将模拟器连接回 ADB 以便能够从 Eclipse 进行调试 当前的解决方法是终
  • 在 Android-x86 上网本上使用 ADB 通过蓝牙调试应用程序

    我设法在我的上网本上设置了一个运行良好的 Android x86 启用了蓝牙并与我的 Windows 7 开发工作站配对 我最初希望通过 USB 使用 adb 就像我使用真正的手机一样 所以我插入了专用的 USB 公对公电缆 然后 什么也没
  • 无法从商店读取密钥 AndroidDebugKey

    突然间 没有任何明显的原因 我收到了与我的 android 调试密钥库相关的构建错误 一切正常 我更改了一些java代码和minsdk版本 然后下次我打开它时 它尖叫着以下错误 com android ide common signing
  • 如何在 ADB shell 和 Android 应用程序之间来回发送消息?

    过去三天我一直在寻找答案 但尚未找到有效的答案 我正在尝试编写一个可以通过 ADB 使用自定义命令进行控制的 Android 应用程序 无论如何 我可以在应用程序和 ADB shell 之间来回发送字符串吗 预先感谢 并对我的菜鸟问题表示歉
  • Android Studio 无法识别 LG G4

    我刚刚拿到 LG G4 手机 打开开发人员选项模式 尝试从 Android Studio 运行应用程序 但它无法识别我的手机 我什至尝试从 MTP 切换到 PTP 但仍然无法识别 我尝试了很多那里的资源 仍然一无所获 请问有人可以帮忙吗 所
  • 使用r32平台工具的ADB配对未知命令

    我刚刚下载了全新安装的 SDK 平台工具 因为我不需要 IDE 版本 r32 0 0 当使用 adb 对时 我得到以下信息 PS C userpath platform tools r32 0 0 windows platform tool
  • 使用额外的命令从命令行启动 Android 活动 [重复]

    这个问题在这里已经有答案了 我创建了一个简单的活动 我想从命令行启动并从命令行传递一些值 但是 如果我尝试这样做 adb shell am start com example mike app SimpleActivity es Messa
  • 在没有 GUI 的情况下运行 Android 模拟器(无头 Android)

    如何在没有 GUI 的情况下运行模拟器 无头 Android 我的要求是运行无头Android在模拟器上 如果我使用是否正确ro config headless 1 或禁用zygote As of 29 2 11 你需要使用 no wind
  • adb 已停止在 android studio 中工作

    我正在尝试在 android studio 中构建我的第一个应用程序并收到错误 adb exe 已停止工作 我正在Windows xp 32位系统上工作 Have tried several solutions available onli
  • java.lang.SecurityException:权限拒绝:启动意图 { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER]

    启动时出错activity 不幸的是 我认为它与该项目没有严格联系 因为该应用程序启动于genymotion模拟器 但不在物理设备上 当我跑步时adb devices与真实的连接后我得到 List of devices attached 0
  • 通过adb获取sdcard目录

    我正在制作一个应用程序 它通过 adb 从设备 SD 卡中提取文件 由 Android 应用程序保存 问题是不同的设备 有不同的SD卡目录 i e sdcard SD卡 external sd 首先我发明了以下解决方案 运行 adb she
  • 即使在模拟器上,“adb root”命令也会返回“adbd 无法在生产版本中以 root 身份运行”?

    我正在尝试运行adb root模拟器上的命令 这是我连接的唯一设备 adb devices List of devices attached emulator 5554 device 但是 我收到以下错误消息 adb root adbd c
  • 如何启动超过 16 个 Android 模拟器

    运行 16 个模拟器时 adb devices shows List of devices attached emulator 5584 emulator 5582 emulator 5580 emulator 5578 emulator
  • 启动后台进程时ADB进程阻塞

    我正在尝试通过 ADB 在 Android 手机后台运行 shell 脚本 为了简单起见 我们让它睡眠 100 adb shell echo nohup sleep 100 gt data local tmp test sh sh data
  • 使用“adb devices”命令无法找到 Android 设备

    我正在开发Android申请于macOS我的应用程序在模拟器上运行良好 我想在设备上运行它 但是当我运行时adb devices我什么也没得到 localhost platform tools BF adb devices List of
  • 如何将 Pixel 2 连接到 ADB

    我有一台已解锁并启用了 USB 调试的 Pixel 2 然而 如果我将其插入计算机 它只会显示正在充电 USB 线可以连接其他设备进行数据传输 但没有问题 所以它不是线 我可以轻松地将任何其他设备连接到我的任何端口 甚至是原来的 Pixel
  • 如何在 ADB 连接期间禁用电池充电?

    问题描述 每次我在电脑和手机之间连接 USB 线时 电池都会自动充电 我想使用 ADB 协议 但我不想在 ADB 连接期间为电池充电 是否可以关闭此充电功能 当然 我该怎么做呢 环境 Android 操作系统 4 及更高版本的手机 我只需要

随机推荐

  • CUDA Toolkit多版本安装与配置

    CUDA Toolkit多版本安装目的是为了将CUDA Toolkit支持多个版本 并将当前版本更新到后续支持常见pytorch的版本 即cuda11 6 目前该系统默认安装的是cuda10 2 cuda11 0和cuda11 2 CUDA
  • layui折叠面板无效 - 已解决

    出现折叠面板无效 可能因为一下两点造成的 原因一 原因二 具体是为什么 我不清楚 正确的方式
  • Unity:给角色和敌人加上血条

    横条血条 想法 1 创建一个画布 画布里面包含血条 HealthBar 空对象 Fill image 血条填充物 Border image 血条框 Heart image 心脏图标 2 为HealthBar对象添加HealthBar脚本和S
  • 速腾聚创雷达最新驱动安装(包含ring和timestamp)运行lio-sam

    记录一下搞slam的过程 ring和timestamp 最近想跑lio sam 需要用到ring和timestamp两个参数 lio sam作者用的velodyne雷达是带这两个参数的 但是rs雷达的老版驱动录制的点云包没有这两个参数 在g
  • pandas分析数据的案例

    1 pandas分析电影数据的案例 https blog csdn net houyanhua1 article details 87858575
  • 共享停车位

    随着代步车的普及 对停车位的需求日益增长 停车位的供应跟不上汽车保有量的快速增长 地段有限 停车场有限 停车位有限 停车难已经成为当今 城市病 中最难解决的一环 随着共享经济的发展 错时停车的提出和实施也逐渐被大众接受 通过物联网创新技术实
  • 服务器自动备份怎么做,服务器运维技巧分享,用backup为数据库做定时备份

    写了套网站 除了日志需要定时分割外 数据库还需要定时备份 如果你用的是云服务器自带的备份功能 会更简单些 但也需要自行购买数据库服务器 对于像我这种还在初期的系统来说 能减少服务器的开支就一定要减少 毕竟现在还不挣钱 安装 用的是ruby
  • Ubuntu20 安装Ceres库和g2o库

    此文章主要适配视觉SLAM十四讲 Ubuntu20 04的情况 建议Ceres版本为2 0 0 g2o库为最新版 安装Ceres库 安装依赖 sudo apt get install liblapack dev libsuitesparse
  • JsonNode与java相互转换

    将Jackson JsonNode数组转换为Java List string JsonNode jsonNode getJsonPayload JsonNode partial jsonNode path someArrayField Li
  • 动态规划(C语言)

    一 入门 以斐波那契数列为例 它的第一项为1 第二项为1 从第三项开始 每一项的值都是前面两项的和 让我们求第n项的是多少 对于这个问题 我们从最开始的递归思想来看 int fib int n if n 1 n 2 return 1 ret
  • js对象的属性用中括号表示

    中括号运算符总是能代替点运算符 但点运算符却不一定能全部代替中括号运算符 中括号运算符可以用字符串变量的内容作为属性名 点运算符不能 中括号运算符可以用纯数字为属性名 点运算符不能 中括号运算符可以用js的关键字和保留字作为属性名 点运算符
  • RISC-V、ARM和X86架构

    1 要了解X86 ARM和RISC V架构的区别 就得先了解复杂指令集 CISC 和精简指令集 RISC A X86使用的是复杂指令集 CISC ARM和RISC V使用的是精简指令集 RISC 这便是属于这几种架构之间最大的区别 狭义的x
  • javaweb使用Thymeleaf 最凝练的CRUD项目-上

    目录 最凝练的CRUD 1 建模 物理建模 逻辑建模 2 总体架构 3 搭建持久化层所需环境 导入jar包 创建jdbc properties 创建JDBCUtils工具类 BaseDao 4 搭建表述层所需环境 导入jar包 创建View
  • 力扣(19) - 跳跃游戏

    给定一个非负整数数组 nums 你最初位于数组的 第一个下标 数组中的每个元素代表你在该位置可以跳跃的最大长度 判断你是否能够到达最后一个下标 示例 1 输入 nums 2 3 1 1 4 输出 true 解释 可以先跳 1 步 从下标 0
  • a*算法的优缺点_轻松理解机器学习算法-朴素贝叶斯

    1 预备知识 贝叶斯定理 Bayes theorem 是概率论中的一个定理 它跟随机变量的条件概率以及边缘概率分布有关 通常事件A在事件B发生的条件下的概率 与事件B在事件A发生的条件下的概率是不一样的 然而这两种是有确定关系的 这种关系就
  • ASP.NET Core 简介

    NET Core 是 NET Framework 的新一代版本 是微软开发的第一个具有跨平台 Windows Mac OSX Linux 能力的应用程序开发框 ASP NET Core 是 Microsoft 新开发的 基于 NET Cor
  • JSON

    数据提取之JSON与JsonPATH JSON JavaScript Object Notation 是一种轻量级的数据交换格式 它使得人们很容易的进行阅读和编写 同时也方便了机器进行解析和生成 适用于进行数据交互的场景 比如网站前台与后台
  • 20181220_eglSwapBuffers详解

    eglSwapBuffers详解 问题来自eglSwapBuffers是否有等待 如果调用eglSwapBuffers的话 是不是会导致帧率下降 2 7 1 BootAnimation中的调用 之所以需要了解这个api的具体实现 因为我们需
  • 标准DH建模与改进DH建模(二)—— 什么是改进DH法以及为什么要学?

    学习机器人建模并不是一个愉快的过程 不愉快的一个重要原因就是 建模得到的方程又臭又长 仅仅是计算一次也许都要花不少时间 更不要说除了正逆运动学方程 你还要需要动力学方程 甚至动力学参数标定方程 当你掌握了DH建模方法后 你会陷入短暂的满足感
  • Python APP自动化测试详解

    一 App自动化测试简介 随着移动互联网的发展 越来越多的App产品应运而生 很多公司除了Web产品外还研发了相应的手机App产品 一些公司的主营业务甚至就是App 测试工程师也需要掌握一定的App端测试技能 从而让自己从烦琐 重复的 点点