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
```

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

原文地址:https://www.cnblogs.com/nemolmt/p/6343505.html