zoukankan      html  css  js  c++  java
  • Appium源码开发环境配置

    作为开发人员怎么可以只使用官方发布版本的安装文件?

    ps:1、学习源码前,最好需要些nodejs的基础,大概需要的深度是 ,例如express开发等。

         2、LZ根据开发文档进行环境配置,只谈一些自己踩过的坑。

    不得不说,最新的appium源码已经很好配置,跟之前的对比简直好太多了,我想也是因为appium团队发现了环境搭建复杂对于开源代码的弊端,很多开发人员之前会因为开发环境搭建麻烦/耗时而放弃加入appium开源代码开发。

    https://github.com/appium/appium

    可以找到appium的最新源码,好多BUG都得到了解决,例如selendroid上面的一些初始化的BUG。

    请留意:

    以前学习 在testhome里面看到的教程很复杂,Appium 开发环境搭建合集 https://testerhome.com/wiki/developingappium

    并且使用的是MAC OS,环境搭建麻烦,当初整了好几天都没搞定,新源码不建议使用/参考这个教程进行环境配置。

    源码已经过期了,建议想要学习的人 还是直接下载github主线https://github.com/appium/appium开源的代码,毕竟testorhome的支线会有改动。

    环境搭建:

    最好的办法是:

    先根据appium安装文件先把环境搭好。最好能跑起来。这种教程很多在这里就不浪费口舌。

    特别留意的是:node最新的并且最好装对版本,32位装32的 64装64别搞混,LZ试过装错版本结果装失败的。

    然后:

    先找个文件夹:

    git clone https://github.com/appium/appium.git

    然后:直接找文档咯,据前辈们说 学习源码最好的办法就是先找文档,然后appium目录下的doc文档。具体文件夹什么意思就不用我去翻译了吧。

    根据文档指导,没几个单词的,建议看英文的会比较好,中文的翻译的跟SHI一样而且对不上版本。

    F:Appiumlmtappiumdocsencontributing-to-appium文件夹就是开发指导用的。

    appium-from-source.md用notepad++打开,然后一步一步往下走。

    cd appium
    npm install
    gulp transpile # requires gulp, see below
    npm install -g authorize-ios # for ios only
    authorize-ios # for ios only
    node .

    其中npm install时候可能需要很长时间1~2小时,但是并不需要FQ。

    node .成功之后,appium启动成功。此时使用源码启动成功。

    如果gulp失败,可以先进行下面的操作:

    Make sure you have `ant`, `maven`, `adb` installed and added to system `PATH`, also you
    would need the android-16 sdk (for Selendroid) and android-19 sdk installed.
    From your local repo's command prompt, install the following packages using the
    following commands (if you didn't install `node` using Homebrew, you might have
    to run `npm` with sudo privileges):

    ```center
    npm install -g mocha
    npm install -g gulp
    npm install -g gulp-cli
    npm install -g appium-doctor && appium-doctor --dev
    npm install
    gulp transpile
    ```

    几个npm install之后,gulp transpile命令应该就识别了。

    此时 node .命令开启appium,若出现类似以下截图,则源码运行环境配置成功。即appium监听0.0.0.0来自任何IP的请求。

    然后 先试一下给源码进行单元测试。(注意单元测试的时候,不能开启appium服务器,原因初步认为是单元测试本来就是测试源码,需要打开文件,服务器打开时文件正在被占用)

    Once your system is set up and your code is up to date, you can run unit tests
    with:

    ```center
    gulp once
    ```

    基本功能测试:(也不用node .启动服务器,否则会占用端口而导致服务器启动失败)

    ```center

    gulp e2e-test
    ```

    开发环境搭建是否很简单?接下来就参考开发文档规范,开开心心进行开发提交代码吧。

  • 相关阅读:
    书单
    [转载] 修改WIN10的DNS、以及操作系统和 Web 浏览器清除和刷新 DNS 缓存方法汇总
    【题解】 【集训队作业2018】喂鸽子 minmax容斥+期望dp+补集转化 UOJ449
    【题解】 CF809E Surprise me! 虚树+莫比乌斯反演+狄利克雷卷积
    【题解】 CF1478E Nezzar and Binary String 线段树+时间逆序
    如何处理调用EasyCVR地址集成通过EasyPlayer播放器不能播放的问题?
    智慧能源:智能安防监控技术EasyCVR在石油能源行业中的场景应用
    网络穿透/动态组网工具EasyNTS报错connect refused该如何处理?
    如何处理C++编译webrtc无法成功获取sdp的问题?
    硬核讲解:编译webrtc协议为什么需要turn服务器?
  • 原文地址:https://www.cnblogs.com/nemolmt/p/6343505.html
Copyright © 2011-2022 走看看