Appium自动化测试框架构建

简介:

Appium简介
  Appium是一个开源、跨平台的测试框架,可以用来测试原生及混合的移动端应用。Appium支持iOS、Android及FirefoxOS平台测试。Appium使用WebDriver的json wire协议,来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架。
  相比其他的移动自动化测试工具,Appium测试由于调用了Selenium的client库使其可以使用任意的语言,包括Python、Ruby、Node.js、Objective-C等。
  Appium下载与安装
  可以去官方下载也可去github下,目前最新的是0.17.6版。当然国内的网盘里也有,这样就不用fan.qiang了。下载后解压即可使用,很方便。
  目前的Appium版本需.net4.5及以上支持,故要想使用Appium还需安装.net4.5.1,可以去微软下载.net4.5.1,当然网盘里也有了,呵呵。
  由于Appium使用了Selenium来进行自动化测试,所以还需安装Selenium,网盘里有下载,Selenium下载地址。下载后解压,切换目录到解压目录,然后执行python setup.py install即可安装Selenium,当然如果您熟悉pip 也可以用pip install Selenium来安装。
  安装、配置Android模拟器
  我们打算在模拟器上使用appium进行自动化测试,故首先得下载安装android开发环境,IDE开发环境配置好以后就可以通过eclipse创建一个android手机模拟器了。
  下载JDK与配置JDK
  下载JDK,下载之后双击压缩包并安装,一路默认下去即可完成,jdk安装到了C:Java目录下了,其下有两个文件夹jdk1.6.0_13和jre6。
  配置jdk比较简单将C:Javajdk1.6.0_13bin目录添加到系统环境变量path里,记住前加分号,之后确认即可。
  怎样测试java是否配置好?cmd之后键入java -verison
  下载android开发环境ADT-bundle
  可以去Google下载也可以去网盘下载android的集成开发环境。下载后解压到c:android目录下就行了。
  配置ADT
  将解压目录下的sdk下的tools和platform-tools目录添加到系统环境变量path里,记住前加分号,之后确认即可。
  怎样测试android的ADT是否配置好?进入c:androideclipse目录双击eclipse.exe,看能否正常启动、使用。
  新AVD模拟器
  启动eclipse,点击Eclipse软件的Windows菜单,选择其下的Android Virtual Device Manager菜单项,进入Android Virtual Device Manager其对话框后,点击左侧New按钮可新建android手机模拟器。在Create new Android Virtual Device Manager对话框的name文本框内给要创建的模拟器起个名字,例如testAVD01。在Device列表框内选择2.7 QVGA 240 X320 ldpi,在选择了Device后,target列表框自动选择了android 4.4 API Level 19{现在已安装的开发环境里只有一套API,读者可自行安装其他API,届时可任选其他API作为自己测试平台}默认即可,其他选项此时可以不做选择默认设置即可,点击对话框的OK按钮确认,即可创建Android 模拟器。
  启动android模拟器
  cmd之后键入 emulator @testAVD01,等待数秒之后android手机模拟器启动。
  安装、配置Python
  这步比较简单,下载Python后默认安装即可。配置只需把c:python27目录加到系统环境变量path后即可,记住前加分号。cmd之后键入python如果见到3个大于号即证明python安装配置成功。Appium自动化测试流程
  启动android手机模拟器
  cmd之后键入 emulator @testAVD01,等待数秒之后android手机模拟器启动。
  另起一个cmd键入adb devices查看模拟器是否正常启动了。
  启动Appium
  进入appium解压目录,双击appium.exe文件,点击launch即可。
  基于Appium的Python自动化测试
  编写代码

from selenium import webdriver
# Returns abs path relative to this file and not cwd
PATH = lambda p: os.path.abspath(
os.path.join(os.path.dirname(__file__), p)
)
desired_caps = {}
desired_caps['device'] = 'android'
desired_caps['browserName'] = ''
desired_caps['version'] = '4.2'
desired_caps['app-package'] = 'com.android.calculator2'
desired_caps['app-activity'] = '.Calculator'
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
# 点击计算器上的数字和运算符
el = driver.find_element_by_name("1")
el.click()
el = driver.find_element_by_name("5")
el.click()
el = driver.find_element_by_name("9")
el.click()
el = driver.find_element_by_name("delete")
el.click()
el = driver.find_element_by_name("9")
el.click()
el = driver.find_element_by_name("5")
el.click()
el = driver.find_element_by_name("+")
el.click()
el = driver.find_element_by_name("6")
el.click()
el = driver.find_element_by_name("=")
el.click()
driver.quit()

  执行代码
  另起cmd,切到python代码所在目录,执行python xxx.py即可见模拟器在被操作了。

最新内容请见作者的GitHub页:http://qaseven.github.io/

相关文章
|
3天前
|
人工智能 自然语言处理 JavaScript
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
Magnitude是一个基于视觉AI代理的开源端到端测试框架,通过自然语言构建测试用例,结合推理代理和视觉代理实现智能化的Web应用测试,支持本地运行和CI/CD集成。
69 15
测试工程师要失业?Magnitude:开源AI Agent驱动的端到端测试框架,让Web测试更智能,自动完善测试用例!
|
14天前
|
人工智能 安全 测试技术
AI做奥赛题能及格吗?OlympicArena:上海交大推出多学科认知推理基准测试框架,挑战AI极限
OlympicArena是由上海交大等机构联合推出的多学科认知推理基准测试框架,包含7大学科11,163道奥林匹克竞赛级题目,通过细粒度评估推动AI向超级智能发展。
72 12
AI做奥赛题能及格吗?OlympicArena:上海交大推出多学科认知推理基准测试框架,挑战AI极限
|
11天前
|
存储 安全 Linux
Metasploit Pro 4.22.7-2025040601 (Linux, Windows) - 专业渗透测试框架
Metasploit Pro 4.22.7-2025040601 (Linux, Windows) - 专业渗透测试框架
45 1
Metasploit Pro 4.22.7-2025040601 (Linux, Windows) - 专业渗透测试框架
|
11天前
|
Linux 网络安全 iOS开发
Metasploit Framework 6.4.55 (macOS, Linux, Windows) - 开源渗透测试框架
Metasploit Framework 6.4.55 (macOS, Linux, Windows) - 开源渗透测试框架
27 0
Metasploit Framework 6.4.55 (macOS, Linux, Windows) - 开源渗透测试框架
|
2月前
|
人工智能 自然语言处理 测试技术
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
AxBench 是由斯坦福大学推出,用于评估语言模型可解释性方法的基准测试框架,支持概念检测和模型转向任务,帮助研究者系统地比较不同控制技术的有效性。
73 5
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
|
1月前
|
机器学习/深度学习 设计模式 测试技术
Python 高级编程与实战:构建自动化测试框架
本文深入探讨了Python中的自动化测试框架,包括unittest、pytest和nose2,并通过实战项目帮助读者掌握这些技术。文中详细介绍了各框架的基本用法和示例代码,助力开发者快速验证代码正确性,减少手动测试工作量。学习资源推荐包括Python官方文档及Real Python等网站。
|
2月前
|
Linux 网络安全 iOS开发
Metasploit Framework 6.4.49 (macOS, Linux, Windows) - 开源渗透测试框架
Metasploit Framework 6.4.49 (macOS, Linux, Windows) - 开源渗透测试框架
52 0
Metasploit Framework 6.4.49 (macOS, Linux, Windows) - 开源渗透测试框架
|
3月前
|
人工智能 运维 Prometheus
AIOpsLab:云服务自动化运维 AI,微软开源云服务 AI 框架,覆盖整个生命周期
AIOpsLab 是微软等机构推出的开源框架,支持云服务自动化运维,涵盖故障检测、根本原因分析等完整生命周期。
233 13
AIOpsLab:云服务自动化运维 AI,微软开源云服务 AI 框架,覆盖整个生命周期
|
1月前
|
机器学习/深度学习 人工智能 运维
机器学习+自动化运维:让服务器自己修Bug,运维变轻松!
机器学习+自动化运维:让服务器自己修Bug,运维变轻松!
93 14
|
6月前
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
134 4

热门文章

最新文章