一、安装selenium
忘记我已经换了电脑了,一检查才发现原来我还没有安装selenium,(⊙﹏⊙)b
附上检查方法:(前提条件是已经安装了python哈)
在python自带的IDLE下执行命令
from selenium import webdriver
如果没有报错,就是安装了,很不幸,我的是……
那么怎么安装selenium呢?百度告诉我!
有两种办法:第一种是传统的下载安装包,安装;第二种是直接用pip安装
扫盲:pip
是一个Python包管理工具,主要是用于安装 PyPI
上的软件包,可以替代 easy_install
工具。
既然上一篇我们那么辛苦的把pip给装上了,为何不用呢?
进入python安装目录,cmd~
python -m pip install selenium
安装完毕!可以用篇头说的方法检验一下噢~没有报错就是安装成功咯(*^__^*) 嘻嘻……
二、安装Appium-Python-Client
为什么要安装Appium-Python-Client呢?至此,我们需要先了解一下安装Appium-Python-Client是用来干嘛的!
Appium的实用方法都藏在Client的源码里,对于driver和webelement实例,均有对应的元素查找方法(webelement查找的是下面的子元素),有些儿专门针对手机的函数,则需要在这个Client安装后方可使用。
appium为了实现自己的find查找方式,首先自定义了一个MobileBy类,给这个类对象塞入了它定义的一些扩展属性,这些属性的值会通过webdriver协议推送到server端去识别和执行,为了让这些属性运用到find方法中,appium很好地继承和扩展了webdriver.Remote,然后通过调用driver实例的find_element和find_elements两个核心方法实现元素查找,所以,既然是扩展,appiumdriver实例可以使用seleniumdriver的所有关于元素查找的实例方法,他们的列表我们就可以整理出来了
简而言之,这就是一个类库的存在,我们需要调用某些方法,就需要这个库的引用,我们在编程时才可以直接调用!既然这么好用,就肯定要安装啦~~
安装方法也是非常之简单,跟selenium一样,有两种办法(下载安装包或者使用pip,再次感受到了pip的方便呀!)
在python>scripts目录下cmd
pip install Appium-Python-Client
至此,appium的python环境完成!!
三、运行一个demo
首先启动android模拟器。
第二步,启动Appium。
点击左上角有“机器人”的按钮:
然后点击右上角的“三角”按钮启动Appium。
第三步,通过Python编写自动化测试脚本。
#coding=utf-8 from appium import webdriver desired_caps = {} desired_caps['platformName'] = 'Android' desired_caps['platformVersion'] = '4.4.2' desired_caps['deviceName'] = 'Android Emulator' desired_caps['appPackage'] = 'com.android.calculator2' desired_caps['appActivity'] = '.Calculator' driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) driver.find_element_by_name("1").click() driver.find_element_by_name("5").click() driver.find_element_by_name("9").click() driver.find_element_by_name("delete").click() driver.find_element_by_name("9").click() driver.find_element_by_name("5").click() driver.find_element_by_name("+").click() driver.find_element_by_name("6").click() driver.find_element_by_name("=").click() driver.quit()
在安装的过程中我们涉及到三种编程语言,Appium.exe是基于.NET 框架开发的,android是基于JAVA开发的,而client端我们选用Python语言来编写自动化脚本。这就要求测试人员对编程语言要有一定的基础和认识,不然后面的学习之路一定举步维艰。所以我要好好学习python语言啦!!