01
我经常是在 windows 上进行代码编写,但是无奈代码写完了总是要放到服务器上跑,自动化测试的代码也不例外。
但是当我把 windows 上写好的代码放到 linux 上的时候,总是会出现各种各样的问题。
比如我用的 python 版本是 3.7,但是大多数 linux 机器并不会默认安装这个版本。我得重新在 linux 上安装一份。
我在本地使用了很多的库,比如 pytest 和 requests, 我得在 linux 上重新执行一遍 pip install, 而且要指定他们的版本和我本地的版本一致,以免出现因库版本不一致造成的兼容问题。
现在我把我的自动化测试代码简化一下,结构包含了 python3.7 的版本, pytest 和 requests 库。
安装的库存放到一个叫做 rqm.txt 的文件当中,当在新的系统中间需要安装的时候,使用 pip install -r rqm.txt 进行安装。
02
在 linux 系统中安装 docker 官方文档写得非常详细,照着敲就行了,这里不赘述。安装好 docker 以后可以先查看 docker 的版本情况,确认安装成功。
这是我的运行代码:
编写 .dockerignore 文件。制作镜像会把我们现在的自动化代码拷贝到 docker 中,但是缓存文件,虚拟环境的文件时不应该拷贝过去的, .dockerignore 文件里面的配置项会被忽略。
编写 Dockerfile 文件:
- 第一步:指定 python 版本为 3.7;
- 第二步:指定运行路径;
- 第三步:拷贝python代码
- 第四步:安装 python 库
- 第五步:运行脚本。
制作镜像:
运行容器:
运行的结果: