我们如何在没有Internet的情况下在远程Windows服务器中运行Robot框架脚本

时间:2019-01-23 05:39:37

标签: selenium automation robotframework

在“我的公司”中,我被要求配置和制作Robot框架脚本以运行仅具有内部网但没有Internet的远程Windows服务器。

我需要有关设置配置以及安装所有必需的库和工具,SSH和数据库配置以运行我的机器人框架测试用例的信息。

如果我能找到一些与此有关的信息,那将是非常有帮助的,因为我找不到与此有关的任何有用的参考。

3 个答案:

答案 0 :(得分:1)

免责声明-尚未完成,因此可能会失败(或-可能会起作用:)

在可访问互联网的计算机上,安装要在目标计算机上使用的相同版本的python和pip。

创建一个虚拟环境并激活它:

c:\python3\python.exe -m venv robot-venv
robot-venv\scripts\activate

安装所有需要的软件包-我不知道您在使用什么软件包,但是robotframeworkrobotframework-seleniumlibrary是安全的选择:

pip install robotframework
pip install robotframework-seleniumlibrary
# etc, the rest you'll be using

创建已安装内容的需求文件-这是至关重要的一步,它会生成将要使用的所有库的列表:

pip freeze > requirements.txt

该文件将包含您刚安装的软件包及其版本;例如:

robotframework==3.1
robotframework-seleniumlibrary==3.2.0
# and the others you installed

因此,现在您需要下载这些文件,以传输到“离线”计算机;命令是:

pip download -r requirements.txt

现在,您有了tar.gz文件形式的软件包;拿走它们,再加上requirements.txt,然后转移到目标计算机(只有内部网访问权限的计算机)。


在此处创建并激活虚拟环境(与以前相同的命令)。完成后,从本地副本安装软件包:

pip install --no-index --find-links C:/the_dir_with_the_files/ -r requirements.txt

这是至关重要的,两台计算机上的python和pip必须具有相同的版本。

答案 1 :(得分:0)

最简单的方法是先从Internet下载源文件,然后将这些文件复制到Intranet网络中。我还在我的VM的Intranet网络中运行ROBOT Framework。

关注这些链接:

  1. https://github.com/robotframework/robotframework/blob/master/INSTALL.rst#installing-from-source

  2. https://pypi.org/project/robotframework/

顺便说一句,您需要先安装python并在环境变量中设置python路径。 ROBOT Framework的稳定python版本是Python 2.7,因为ROBOT Framework仅使用最新版本。

答案 2 :(得分:0)

1)首先,确保两台PC上都安装了具有env变量的相同版本的Python。

PYTHONPATH

C:\Python27\;C:\Python27\Scripts;C:\Python27\Lib\site-packages

路径

allExistingPathVariables;%PYTHONPATH%;

2)如果您正在使用Python 2,请检查是否安装了较新版本的pip。Python3接缝已包含所有内容。我个人使用:

python -m pip install --upgrade pip-19.1.1-py2.py3-none-any.whl

3)打开一个cmd提示

NB 如果您的公司与我的公司一样,则每次按步骤4和5打开命令提示符时,都需要设置代理。注意CMD提示符不使用已经在其中设置的代理。您的浏览器。

4)设置http_proxy = http://UserName:Password@proxy.nameOrIP.com.au:8080-t号是您的用户名,无论您当前使用的Windows密码是什么。

5)设置https_proxy = https:// UserName:Password @ proxy.nameOrIP.com.au:8080

6)cd C:\ Python27 \ compiledLibraries ----这可以是您想要的任何文件夹…..

7)运行lib_download.bat从PyPi.org下载和更新所有库及其内部依赖项

8)将带有新的/更新的库的整个downloadLibrariesWithDependencies文件夹复制到Offline PC。

9)在离线PC上打开一个cmd提示。

10)cd C:\ Python27 \ compiledLibraries ----这可以是您想要的任何文件夹…..

11)运行lib_install.bat文件

然后,您一直添加到lib_文件中的所有库都将更新。

.bat文件的内容应类似于:

lib_download.bat

REM This File contains list of all Libraries that are required for Exec Robot Tests 
REM Please Update your library with pip install command
mkdir downloadedLibrariesWithDependencies
cd downloadedLibrariesWithDependencies 
mkdir robotframework
pip download robotframework -d "robotframework"
mkdir python-dateutil
pip download python-dateutil -d "python-dateutil"
mkdir wheel
pip download wheel -d "wheel"
mkdir pylint
pip download pylint -d "pylint"
mkdir pytest
pip download pylint -d "pytest"
mkdir pywin32
pip download pywin32 -d "pywin32"
mkdir autopep8
pip download autopep8 -d "autopep8"

lib_install.bat

REM This File contains list of all Libraries that are required for Exec Robot Tests 
REM Please Update your library with pip install command
cd downloadedLibrariesWithDependencies 
cd ..\robotframework
pip install --upgrade robotframework -f ./ --no-index
cd ..\python-dateutil
pip install --upgrade python-dateutil -f ./ --no-index
cd ..\wheel
pip install --upgrade wheel -f ./ --no-index
cd ..\pylint
pip install --upgrade pylint -f ./ --no-index
cd ..\pytest
pip install --upgrade pytest -f ./ --no-index
cd ..\pywin32
pip install --upgrade pywin32 -f ./ --no-index
cd ..\autopep8
pip install --upgrade autopep8 -f ./ --no-index