基于 DOCKER 构建 APPIUM2 运行环境

前言:

关键字:APPIUM II;

本博文为原创博文,欢迎转载,但请请注明出处;

最近研究了一下关于手机自动化的一些东西,从博主从网上搜索的结果来看,APPIUM现在应该算是比较热门的自动化工具;花了点时间去简单学习了一下,看了一些相关的视频教程,不好用,博主是还没有开始学那些自动化的库,就已经给环境部署这块给卡住了。于是,不得不跑GITHUB与GOOGLE文档查了一通资料。结论是,官方更新了[主要是AUPIUM与ANDROID SDK的更新],造成了那些教程的部署方法不再适用于最新的APPIUM版本~

想部署并使用最新版本的APPIUM,无论是从国内还是从国外查资料都很零散,包括你现在看到的这篇博文。为什么说这篇博文零散?因为博主觉得这篇博文的通用性并不能说特别的高;以往的博文,大部分情况下,读者只需要按着顺序一步一步的复制命令并执行,一般就能得到一个与读者期望环境相差不大的环境,读者甚至不需要真正的知道命令做了什么,但这篇博文好像做不到这样。如果对安卓的开发环境的一些概念缺失的话,看这篇博文会很难受。

对于APPIUM的开发/运行环境搭建,是博主做过的环境搭建中相对比较复杂的一个了。假若你在WIN上希望使用PYTHON来写自动化测试代码的情况下,部署一个基于APPIUM的自动化测试环境[APPIUM II],你需要安装JAVA、NODEJS、PYTHON、AndroidSDK、Chromedriver,而这些都是最基本的。当然,如果只是安装还好,很可惜,你还得考虑它们之间的依赖关系,例如:

*、AndroidSDK_"cmdline-tools"与JAVA之间的版本适配关系

*、AndroidSDK_"build-tools"与ANDROID_OS之间的版本适配关系

*、NODEJS与APPIUM之间和版本适配关系

*、Chromedriver与手机中浏览器/APP之间的版本适配关系

*、......

写这篇博文的时间是"2023-11-20",如果你希望使用现在最新版本的"APPIUM II",这篇博文只能说能给你一点帮助;博主本想从JAVA最基本的安装开始说起的,但是,想了一下,如果那样写,要截的图实在太多了,如果再加上测试其可用性与正确性,那要花费的时间将更多,所以这里我只提供一个DockerFile的参考,这是本人现在正在使用的,确定可用的方式。为什么选择这个方式?主要是除了写起来简单外,这种方式能立即以最快的方法给你提供一个确切可用的示例,让你看得见摸得着;另外,假如你的实际 开发环境与博主的不一样,读者也只需要修改其中的几个变量,就能实现适配自己的开发环境。当然,这种方式还有一个好处,就是读者不再需要考虑网络环境的问题,博主已经在DOCKERFILE中顺便优化了,使其更适应国内的网络环境。

对于博文中的DOCKERFILE,博主会尽量将那些你需要注意的事,写在DOCKERFILE的注释中。这篇博文的写法就是这样了,有使用的上的问题留言吧~

特别提示:如果你在实验过程中,直接复制本博客任意博文中的配置/代码,"空格"字符的前面将可能产生不可见的字符"M-BM-",从而造成文件不可用,这是字符编码的问题~若必需使用复制粘贴方式,请务必手动替换掉配置项中的所有空格!!!或尝试使用以下命令过滤掉所有"M-BM-"字符~

一、测试/环境/目录结构

1、本教程在以下环境下测试通过!由于博主的测试的安卓手机已另作它用,未实测"demo.py"的正确性,该DEMO来源于官方资料,你可以至官方文档查找对应的DEMO进行测试;

  • 硬       件 :VM 

  • 操作系统 :DEBIAN 12

  •         :docker + docker-compose

  • 测试日期 :2023年11月20日

2、下载地址:百度网盘【 https://pan.baidu.com/s/1LvolQaIuUToWReQfwhK6HA  】 | 提取码:7s4q

3、下载文件解压后目录结构示例:

二、DOCKER-COMPOSE 说明

这是关于DOCKER-COMPOSE的说明,其实没什么可以说的,基本上都是一些最常用的配置项,本处只是着重的说明一下,关于容器挂载项的用途,见代码中的说明~

三、DOCKERFILE 说明

本处是这篇博文中最重要的部分了,这是一份考虑了最终使用环境的DOCKERFILE;基本上,如果你希望构建一个基于DOCKER的APPIUM II的开发/测试环境,这个DOCKERFILE包含了你所需要的所有准备工作,以下是关于这个DOCKERFILE的说明

四、使用(基于提供的下载文件)

以下为一些简单的使用说明,以及一些测试过程中的截图:

基于 DOCKER 构建 APPIUM2 运行环境

基于 DOCKER 构建 APPIUM2 运行环境

结、

没什么想说~

网友评论4

  1. 板凳
    匿名:

    很详细。就是不知道win下起的docker,应该怎样映射usb

    2024-04-15 下午12:25 [回复]
    • Edward:

      嗯~这个真不太清楚,话说这么久了,我从没直接在WIN下使用过DOCKER...遇到你说的情况,我一般是使用VM创建LINUX虚拟机再使用再DOCKER;

      2024-04-27 下午10:34 [回复]
      • 匿名:

        好吧。最终使用adb connect网络连接了

        2024-04-28 上午9:44 [回复]
  2. 沙发
    匿名:

    感谢,很完善,很仔细

    2024-04-15 下午12:24 [回复]

发表评论

表情
还能输入210个字