美文网首页
Mac下appium-python环境搭建&在MQC与AWS-D

Mac下appium-python环境搭建&在MQC与AWS-D

作者: 橙头头 | 来源:发表于2017-08-16 17:53 被阅读0次

    记一个Android菜鸡的走偏之路。。
    前些日子给组里QA姐姐们探了探Appium这个自动化测试框架在一些平台上的使用,网上的资料都比较零散,就自己尝试归纳总结了一下搭建环境的步骤
    之前未曾装过Appium的相关环境的话,按以下步骤一路走完的话应该就可以跑起来了。。
    都是一些简单的操作,视实际按需取用吧
    emmm仅对我本地Mac OS 10.12.6 + python 2.7.10版本负责(:з」∠)

    环境搭建

    0.安装Xcode Command Line Tools

    (app store安装Xcode后)
    terminal下输入

    xcode-select --install
    

    1.安装brew

    terminal下输入

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    

    2.git

    terminal下输入

    brew install git
    

    3.使用brew安装node和npm

    terminal下输入

    brew install node
    

    安装完输入 npm -v 来测试是否成功安装

    4.安装java

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
    下载Java SE Development Kit 8
    选择jdk-xxxxx-macosx-x64.dmg下载并安装

    5.安装Android Developer Tools

    https://developer.android.com/index.html
    获取android studio并安装运行一次

    6.添加java&ADB环境变量

    terminal下输入

    vim ~/.bash_profile
    

    按i进入Insert模式
    在最后添加:

    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
    #此处“jdk1.8.0_xxx.jdk”为实际安装的java版本
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export ANDROID_HOME=~/Library/Android/sdk
    export PATH=$ANDROID_HOME/platform-tools:$PATH
    

    按ESC输入:wq回车保存退出
    terminal下输入java -v查看java版本是否正确,输入adb查看ADB是否配置正确

    7.命令行安装appium

    terminal下输入

    npm install -g appium
    npm install -g appium-doctor
    npm install wd
    

    由于安装需要连接国外的技术站点,国内网络不稳定导致安装失败。大家可尝试使用淘宝镜像,在~目录创建文件.npmrc,然后加入一行

    chromedriver_cdnurl=http://npm.taobao.org/mirrors/chromedriver
    

    8.为python安装pip

    8.1 Install easy_install

    curl https://bootstrap.pypa.io/ez_setup.py -o - | sudo python
    

    8.2 Install pip

    sudo easy_install pip
    

    9.安装Appium for python客户端

    pip install Appium-Python-Client --user
    

    10.使用appium-doctor检查安装

    terminal下输入
    appium-doctor
    输出如

    info AppiumDoctor Appium Doctor v.1.4.3
    info AppiumDoctor ### Diagnostic starting ###
    info AppiumDoctor  ✔ The Node.js binary was found at: /usr/local/bin/node
    info AppiumDoctor  ✔ Node version is 8.1.4
    info AppiumDoctor  ✔ Xcode is installed at: /Applications/Xcode.app/Contents/Developer
    info AppiumDoctor  ✔ Xcode Command Line Tools are installed.
    info AppiumDoctor  ✔ DevToolsSecurity is enabled.
    info AppiumDoctor  ✔ The Authorization DB is set up properly.
    WARN AppiumDoctor  ✖ Carthage was NOT found!
    info AppiumDoctor  ✔ HOME is set to: /Users/t_chenju
    info AppiumDoctor  ✔ ANDROID_HOME is set to: /Users/t_chenju/Library/Android/sdk
    info AppiumDoctor  ✔ JAVA_HOME is set to: /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
    info AppiumDoctor  ✔ adb exists at: /Users/t_chenju/Library/Android/sdk/platform-tools/adb
    info AppiumDoctor  ✔ android exists at: /Users/t_chenju/Library/Android/sdk/tools/android
    info AppiumDoctor  ✔ emulator exists at: /Users/t_chenju/Library/Android/sdk/tools/emulator
    WARN AppiumDoctor  ✖ Bin directory for $JAVA_HOME is not set
    info AppiumDoctor ### Diagnostic completed, 2 fixes needed. ###
    info AppiumDoctor
    info AppiumDoctor ### Manual Fixes Needed ###
    info AppiumDoctor The configuration cannot be automatically fixed, please do the following first:
    WARN AppiumDoctor - Please install Carthage. Visit https://github.com/Carthage/Carthage#installing-carthage for more information.
    WARN AppiumDoctor - Add '$JAVA_HOME/bin' to your PATH environment
    info AppiumDoctor ###
    info AppiumDoctor
    info AppiumDoctor Bye! Run appium-doctor again when all manual fixes have been applied!
    info AppiumDoctor
    

    检查WARN项

    至此,本地的appium脚本测试环境就搭建好了
    可按照下方 -在MQC中使用Appium进行脚本测试- 链接里的内容进行脚本开发对环境进行验证

    appium reference<中文>

    http://appium.io/slate/cn/master/?python

    在MQC中使用Appium进行脚本测试

    http://mqc.aliyun.com/doc.htm?id=17

    在AWS-Device Farm中使用appium进行脚本测试

    与MQC仅支持一个main.py作为testsuite,并且使用unittest作为用例测试工具不同的是,AWS-Device Farm所提供的测试基础环境是可移植并可按实际需求添加第三方拓展包的。我们需要在本地建立workspace文件夹,将此文件夹作为一个python的虚拟环境与本地开发环境隔离开来(沙盒)。在AWS上进行脚本测试时将此环境中的所必需的测试脚本文件、第三方拓展一并打包上传即可。

    • 若已在上步“在MQC中使用Appium进行脚本测试”编写好可以运行的脚本文件,可以将其 main.py 与 desired_capabilities.py一同拷贝至下面的“tests”文件夹即可。

    安装虚拟环境工具

    1. terminal下输入
    sudo easy_install virtualenv
    
    1. 按以下链接中 “Build the Appium Python Test Package” 标签下的步骤进行构建环境
      https://docs.aws.amazon.com/devicefarm/latest/developerguide/test-types-android-appium-python.html
      • 注意:由于virtualenv,此文件夹与本地python环境隔离,在以上网页 <b>step4</b> "Make sure you have py.test installed in your virtual environment and test cases are discoverable by the following command, which you should run from your virtual environment workspace folder." <b>之前</b>,将编写好的脚本文件拷贝至tests文件夹,并在此环境中安装你需要的第三方包及Appium-Client。例如:
        pip install Appium_Python_Client
        
    2. 按照以上网页的步骤得到的 .zip 文件即为符合要求的AWS测试脚本集文件。

    进一步的测试范例,可参考

    https://github.com/appium/sample-code/tree/master/sample-code/examples

    常用的一些api

    查找当前layout控件元素

    1. driver.find_element_by_id()
    2. driver.find_element_by_name() (iOS可用)
    3. driver.find_element_by_accessibility_id()
    4. driver.find_element_by_classname()
    5. driver.find_element_by_xpath()
    

    相关文章

      网友评论

          本文标题:Mac下appium-python环境搭建&在MQC与AWS-D

          本文链接:https://www.haomeiwen.com/subject/tsxwrxtx.html