appium自动化测试框架构建 .

来源:互联网 发布:中国大数据V4.0发布 编辑:程序博客网 时间:2024/04/30 00:13

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:\Java\jdk1.6.0_13\bin目录添加到系统环境变量path里,记住前加分号,之后确认即可。
   怎样测试java是否配置好?cmd之后键入java -verison

下载android开发环境ADT-bundle

   可以去Google下载也可以去网盘下载android的集成开发环境。下载后解压到c:\android目录下就行了。

   配置ADT

   将解压目录下的sdk下的tools和platform-tools目录添加到系统环境变量path里,记住前加分号,之后确认即可。
   怎样测试android的ADT是否配置好?进入c:\android\eclipse目录双击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自动化测试

编写代码

[python] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. from selenium import webdriver  
  2. # Returns abs path relative to this file and not cwd  
  3. PATH = lambda p: os.path.abspath(  
  4.     os.path.join(os.path.dirname(__file__), p)  
  5. )  
  6. desired_caps = {}  
  7. desired_caps['device'] = 'android'  
  8. desired_caps['browserName'] = ''  
  9. desired_caps['version'] = '4.2'  
  10. desired_caps['app-package'] = 'com.android.calculator2'  
  11. desired_caps['app-activity'] = '.Calculator'  
  12. driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)  
  13. # 点击计算器上的数字和运算符   
  14. el = driver.find_element_by_name("1")  
  15. el.click()  
  16. el = driver.find_element_by_name("5")  
  17. el.click()  
  18. el = driver.find_element_by_name("9")  
  19. el.click()  
  20. el = driver.find_element_by_name("delete")  
  21. el.click()  
  22. el = driver.find_element_by_name("9")  
  23. el.click()  
  24. el = driver.find_element_by_name("5")  
  25. el.click()  
  26. el = driver.find_element_by_name("+")  
  27. el.click()  
  28. el = driver.find_element_by_name("6")  
  29. el.click()  
  30. el = driver.find_element_by_name("=")  
  31. el.click()  
  32. driver.quit()  


执行代码

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


   
0 0