gue*_*tli 8 python pytest jenkins gitlab
我们在公司使用Jenkins和GitLab.我们使用py.test为Jenkins创建XML输出,该输出由jUnit Jenkins插件呈现.
到目前为止,异常的堆栈跟踪是纯粹的ascii.如果我们能以某种方式挂钩Jenkins并显示我们的gitlab服务器的超链接而不是html pre块,那将是非常好的.
在我们的例子中,我们就足以过滤测试输出的每一行并在其上使用正则表达式....
Jenkins jUnit插件的示例输出:
File "/home/modwork_ems_d66/src/foo/foo/utils/testutils.py", line 975, in wrapped
return fn(*args, **kwargs)
File "/home/modwork_ems_d66/src/foo/foo/tests/FooTest.py", line 641, in test_empty_models_if_unused
models))
Run Code Online (Sandbox Code Playgroud)
我想要一个超链接到托管goo仓库"foo"的服务器.在我们的例子中,这将是" https://source/repos/foo/files/master/foo/foo/tests/FooTest.py"
怎么做到这一点?我知道如何使用正则表达式.问题是如何将正则表达式挂钩到jenkins.
我希望在单个测试的TestReport上有这个链接.这些页面的URL模式:
https://jenkins/job/ci_foo_bar/lastCompletedBuild/testReport/src.myapp.myapp.tests.test_tree/TestCase/test_something/
Run Code Online (Sandbox Code Playgroud)
如果您可以在测试过程后获取异常输出,您可以实现一个解析器,它为您准备一个简单的 html 报告作为构建步骤。
最简单的方法是使用 sed 实现正则表达式
sed -e 's@"/home/modwork_ems_d66/src\(.*\?\)"@<a href="https://source/repos/foo/files/master\1">\1</a>@' exceptions.txt
Run Code Online (Sandbox Code Playgroud)
它对异常文件进行操作。
| 归档时间: |
|
| 查看次数: |
227 次 |
| 最近记录: |