Appium+Python实现简单的自动化登录测试的实现

2023-10-27

这篇文章主要介绍了Appium+Python实现简单的自动化登录测试的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

前言

要想让手机app自动登录,也就是让app自己操作。所以在脚本中我们需要对app控件进行操作,那么我们需要获取控件的信息。可以使用..\android-sdk-windows\tools目录下的uiautomatorviewer.bat来获取控件相关信息

获取控件相关信息

启动uiautomatorviewer.bat

打开手机app,例如计算器,USB连接电脑,点击uiautomatorviewer左上角的安卓机器人按钮Devices Screenshot按钮刷新页面

定位元素:移动鼠标到需要定位的元素上,如数字7。右下角可以看到元素对应的属性

登录脚本实现

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

# coding=utf-8

__author__ = "Enoch"

# 这是一个app登录的测试

  

from appium import webdriver

from HTMLTestRunner import HTMLTestRunner

import unittest

import time

import warnings

  

  

class LoginTest(unittest.TestCase):

  

  def setUp(self):

    warnings.simplefilter("ignore", ResourceWarning)

    desired_caps = {

      'platformName': 'Android',

      'deviceName': 'SGEEGEHIQ8I7CIKF',

      'platformVersion': '6.0',

      'appPackage': 'com.mengtuiapp.mall',

      'appActivity': '.business.main.MainActivity'

    }

    self.driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

  

  def testCase(self):

    u"""登录"""

    driver = self.driver

    # time.sleep(2)

    driver.find_element_by_id("bottom_nav").click()

  

    time.sleep(2)

    driver.find_element_by_name('使用其他方式登录').click()

  

    driver.find_element_by_name('手机登录').click()

  

    driver.find_element_by_id("username").send_keys("13100010001")

  

    driver.find_element_by_name('获取验证码').send_keys("9876")

  

    driver.find_element_by_id("btn").click()

  

    driver.quit()

  

  

if __name__ == '__main__':

    print("----------执行---------- ")

    suite = unittest.TestSuite() # 构造测试集

    suite.addTest(LoginTest('testCase'))

    # 定义自动化报告目录

    filename = "F:\\report.html"

    fp = open(filename, 'wb')

    runner = HTMLTestRunner(

        stream=fp,

        title=u'自动化测试报告',

        description=u'这是登录测试的简单报告'

     )

    runner.run(suite)

    fp.close()

到此这篇关于Appium+Python实现简单的自动化登录测试的实现的文章就介绍到这了,更多相关Appium Python自动化登录测试内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持小编!

最后: 可以在我的VX公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Appium+Python实现简单的自动化登录测试的实现 的相关文章

随机推荐

  • C++11中std::lock_guard的使用

    互斥类的最重要成员函数是lock 和unlock 在进入临界区时 执行lock 加锁操作 如果这时已经被其它线程锁住 则当前线程在此排队等待 退出临界区时 执行unlock 解锁操作 更好的办法是采用 资源分配时初始化 RAII 方法来加锁
  • 医疗器械安规三项是什么?1、漏电流测试 IEC60950-1 2、电介质强度测试=耐压测试?GB9706 3、保护接地电阻测试=保护接地 ?GB9706

    医疗器械行业标准 并列标准 电磁兼容YY0505 2012 最新生效2023 05 01 YY9706 102 2021 医疗器械安规三项是什么 GB9706 1 2007最新生效GB9706 1 2020 1 漏电流测试 IEC60950
  • 树与二叉树 —— 十分钟吊打数据结构

    目录 传统艺能 树的的概念与结构 基本术语 树的表示 树的实际应用 二叉树 二叉树的性质 传统艺能 小编是双非本科大一菜鸟不赘述 欢迎大佬指点江山 QQ 1319365055 此前博客点我 点我 请搜索博主 知晓天空之蓝 乔乔的gitee代
  • Requirement already satisfied 解决方法

    python m pip install urllib3 upgrade pip 出现 Requirement already satisfied 解决方法 加上路径即可 跟新pip python m pip install target
  • 攻防世界-pwn when_did_you_born(栈覆盖)

    0x01 拿到文件之后 先检查文件的基本信息 文件信息 64bit elf可执行文件 无PIE保护 0x02 执行文件 文件之中有两个输入 第一个输入有回显 0x03 IDA静态分析 可以看出获取flag需要用到v5的值 首先需要v5不等于
  • 召唤神龙小游戏

    文章底部有源码地址 免费获取 游戏介绍 召唤神龙小游戏是一款最近爆火朋友圈的休闲吞噬成长类手机游戏 召唤神龙提供了最轻松的吞噬玩法以及多种不同形态的转换机制 玩家需要从一只小蝌蚪开始游戏 一点点吃东西成长为一条庞大的神龙 在召唤神龙游戏中
  • 深度学习词嵌入和传统机器学习结合

    CNN词嵌入和xgboost结合 在使用小批文本数据进行深度学习时 由于数据量的限制 最终的网络往往过拟合 在验证集上达不到目标结果 传统机器学习算法 例如xgboost 对于小数据量不容易达到过拟合 但是需要对文本进行特征提取 下面的想法
  • python 中的面向对象

    目录 面向对象基础 面向对象 面向过程 面向过程编程 面向对象基本概念 面向对象 类和对象 类 对象 类和对象的关系 类的设计 定义类名 属性和方法的确定 面向对象基本语法 定义简单的类 只包含方法 定义类 self的使用 面向对象基础 面
  • MySQL架构存储引擎以及性能优化

    文章目录 MySQL架构图 性能监控 schema与数据类型优化 执行计划 索引优化 查询优化 分区表 MySQL架构图 连接器 管理数据库连接 权限验证 用户成功建立连接后 即使管理员账号对这个用户的权限做了修改 也不会影响已经存在连接的
  • 将UTC时间(2018-07-03T10:18:58.000Z)转换为北京时间

    2018 07 03T10 18 58 000Z是什么时间格式 UTC 时间标准时间 世界标准时间 GMT 格林尼治时间 GST 北京时间 js如何处理UTC时间格式 遇到问题 用了阿里云的接口 发现传的日期是UTC格式的 需要转换 b b
  • 前端部署>>>从0部署项目到服务器

    从0部署项目到服务器 第一次正式写文章 有点小兴奋 紧张 也不知道该说啥 感觉有用就给我点一个小爱心把 求求了 急需续命 1 准备步骤 2 基础语法 3 服务器环境和镜像 4 liunx环境安装node 5 部署后端项目1 搭建node接口
  • EasyPoi实现Excel导入导出

    EasyPoi实现Excel导入导出 1 导入依赖
  • Java基于微信小程序的青少年健康心理科普平台

    第一章 简介 青少年心理健康科普平台为用户提供心理医生咨询服务 系统包括微信小程序端和后台 微信小程序用户可以先进行注册 填写个人的基本信息提交到服务器 服务器把数据保存到数据库 管理员对青少年的信息进行验证后 青少年通过验证后的用户名和密
  • 使用平均值填充R语言数据框中的缺失值

    使用平均值填充R语言数据框中的缺失值 在数据分析和统计建模的过程中 处理缺失值是一个常见的任务 在R语言中 数据框 data frame 是一种常用的数据结构 它可以包含多个变量 列 和观察 行 当数据框中存在缺失值时 一种常见的方法是使用
  • 《卓有成效的管理者》读书笔记(一)

    文章目录 写在前 有效是可以学会的 为什么需要有效的管理者 谁是管理者 管理者面对的现实 如何解决 如何学会有效这种习惯 写在前 技术做到上面 需要一些软技能 比如沟通 管理等能力 有分享和输出自己的欲望 先从学习管理开始 一个好的管理者首
  • 疫情期间,如何利用一台电脑或一部手机在家通过互联网来挣钱?

    作者 杨小二 来源 杨小二的小江湖 疫情期间 很多企业开始实施在家远程办公 也有的企业开始尝试慢慢复工 但是听到和看到的很多消息就是 我们公司通知疫情期间降薪30 我们只发放最低基本工资 我们停薪留职 于是 就让我想起了之前被朋友圈刷屏的扎
  • 其他软件

    1 notepad 快捷键 alt 鼠标左键 复制一列 npotepad 转换xml格式 json格式 语言xml 插件 xml tools preety第一个 preety第二个
  • python爬虫需要学哪些知识_Python爬虫程序要用到哪些知识和技术?

    相信喜欢动手的粉丝们已经在自己的电脑上跑过一遍这个程序了 但是对于初步接触python的人来说 一上来就搞一个python的爬虫 也的确会让自己摸不着头脑 但是如果我们一直写那种知识点型的文章的话 你们也会觉得只有知识点不过瘾 综合考虑后
  • 30天自制操作系统学习-第6天

    1 分割源文件 观察我们昨天写好的bookpack c主文件 发现它已达到三百多行 这样对不利于我们的维护 为此 我们将其对os功能除了的函数进行分类 独立到一个C文件中 而且bookpack主函数中对于函数的声明部分未免有点过于庞大 我们
  • Appium+Python实现简单的自动化登录测试的实现

    这篇文章主要介绍了Appium Python实现简单的自动化登录测试的实现 文中通过示例代码介绍的非常详细 对大家的学习或者工作具有一定的参考学习价值 需要的朋友们下面随着小编来一起学习学习吧 前言 要想让手机app自动登录 也就是让app