如何使Robot框架API测试独立于环境?
我正在开发一些如何使Robot框架API测试独立于环境?,api,jenkins,robotframework,consul,robotframework-ide,Api,Jenkins,Robotframework,Consul,Robotframework Ide,我正在开发一些机器人框架API测试 最终目标是将一组测试添加到我们的项目中,这样每当开发人员使用Jenkins构建和部署项目时,测试都会自动运行,以检查是否一切正常 我想让测试检查它们部署在哪个环境(dev1、2、3/Test/Accept)上,并将其作为变量自动填充。 例如https://${VARIABLE}.companyname.com/service/api在部署到Dev服务器1上时应变成。 这样,就可以为所有内容提供一个测试集,而不必为每个环境维护一个测试集 我们使用Consul管理
机器人框架API
测试
最终目标是将一组测试添加到我们的项目中,这样每当开发人员使用Jenkins
构建和部署项目时,测试都会自动运行,以检查是否一切正常
我想让测试检查它们部署在哪个环境(dev1、2、3/Test/Accept)上,并将其作为变量自动填充。
例如https://${VARIABLE}.companyname.com/service/api
在部署到Dev服务器1上时应变成。
这样,就可以为所有内容提供一个测试集,而不必为每个环境维护一个测试集
我们使用Consul
管理我们的服务,并使用Ansible
进行部署,因此应该可以从那里或Jenkins
获取标签来填充此变量
有人知道我如何得到这个标签并将这个变量放入机器人框架中吗 使用可以将测试逻辑与所需的测试数据分开。这是首选的方法,而不是将环境数据存储在与测试逻辑相同的文件中
可以通过()使用Python或Java类或纯文本动态生成信息。然后可以通过命令行将这些文件添加到测试运行中:
robot --variablefile myvariables.py mytest.robot
robot --variablefile myvariables.yaml mytest.robot
您可以使用-v选项从命令行提供变量:
robot-v变量:portal-01.dev mytest.robot