mac环境 python+appium环境搭建(一)

1、下载安装python

https://www.python.org/downloads/release/python-365/

下载最新版3.6版本的

注:mac自带python2.7版本,如果有用2.7版本开发的项目,也有3.6版本开发的项目,那么我们可以切换使用,具体方法请见: https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001432712108300322c61f256c74803b43bfd65c6f8d0d0000

2、下载安装android sdk 、JDK

android sdk下载地址:http://tools.android-studio.org/index.php/sdk?spm=a2c4e.11153940.blogcont593549.13.4f164466N7mmUH

 JDK下载地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html?spm=a2c4e.11153940.blogcont593549.10.4f164466N7mmUH

环境变量配置:

vim ~/.bash_profile

mac环境 python+appium环境搭建(一)_第1张图片

配置好环境变量记得执行:source ~/.bash_profile ,不然可能不生效

3、下载安装appium

可以下载appium客户端,也可以直接用命令行安装

用命令行形式安装:

先安装brew:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
再安装npm:brew install npm
安装cnpm:npm install -g cnpm --registry=https://registry.npm.taobao.org
用cnpm安装appium:cnpm install -g appium

安装好appium后在终端输入appium,如果出现如下界面说明安装成功


4、安装Appium-Python-Client

sudo pip install Appium-Python-Client

注:如果有两套python环境的话,用哪套就要在含有哪套python环境的目录下执行

也可以不安装Appium-Python-Client,直接安装selenium,不过selenium比Appium-Python-Client少一些方法

sudo pip install selenium -i http://pypi.douban.com/simple
5、测试demo

直接粘贴https://www.cnblogs.com/tangdongchu/p/4432808.html 中的代码

-------------------------------------------------------------------------------------------

#coding=UTF-8
'''
Create on 2015-4-16
python 2.7 for mac
@author: tangdongchu
'''
import os
import unittest
from selenium import webdriver
import time
#Appium环境配置
PATH = lambda p: os.path.abspath(
    os.path.join(os.path.dirname(__file__), p)
)
class DpAppTests(unittest.TestCase):
    def setUp(self):
        desired_caps = {}
        desired_caps['platformName'] = 'Android' #设置平台
        desired_caps['platformVersion'] = '4.4' #系统版本
        desired_caps['deviceName'] = '93d1243b' #设备id
        desired_caps['autoLaunch'] = 'true' #是否自动启动
        desired_caps['app'] = PATH(
            'apk/Nova_7.2.0_debug.apk' #安装包路径,放在该py文件的目录下
        )
        desired_caps['appPackage'] = 'com.dianping.v1' #包名
        desired_caps['appActivity'] = 'com.dianping.main.guide.SplashScreenActivity' #启动的activity
        self.driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    def tearDown(self):
        self.driver.quit() #case执行完退出
    def test_dpApp(self): #需要执行的case
        time.sleep(15)
        el = self.driver.find_element_by_xpath("//android.widget.TextView[contains(@text,'上海')]") #通过xpath找到定位框
        el.click() #点击定位框
if __name__ == '__main__':
    suite = unittest.TestLoader().loadTestsFromTestCase(DpAppTests)

    unittest.TextTestRunner(verbosity=2).run(suite) #执行case集

----------------------------------------------------------------------------------------

直接执行发现可以成功调起app,demo完成,环境搭建成功

遇到的问题:

 from selenium import webdriver
ImportError: No module named selenium


解决办法:

我用了两套python环境,可能我要执行的代码用的python3.6环境,没有安装Appium-Python-Client,就在python3.6的目录下安装Appium-Python-Client,直接在命令行中执行demo文件,就可以正常执行了。 但是在pycharm(等编辑器)中执行时,需要重启下,不然可能还用的之前的。

你可能感兴趣的:(客户端技术)