Introduction
We do have a need to analyse the stability and usability of our tests, too. We do monitor our systems from here and there, check the code coverage of /development code/. Funny when you think about it, but test automation is part of development process and should be addressed as such. Even more if you’re developer who runs the code.
I have been running all sort of analytics based on test executions in Jenkins, written parsers in python and building dashboards on ELK -stack. And boy it has been fun 😀
Then I heard about this tool, Report Portal (http://reportportal.io) from a podcast from Joe Colantonio and decided to take a look. I am nowhere near to make any conclusions, but after a brief usage it does look promising.
Running locally
Report Portal has a demo environment you can try with your tests, but it really comes in handy if you host it yourself. And they provide instructions to that in http://reportportal.io/download. I have followed the instructions and listing them down in here. To be honest, I do think they do brilliant job already and my notes here are more for myself. To recall the process in a better way and sure, and to get some clicks on my blog, too 😀
First of all, you’ll need to have `docker`installed. After that everything should be easy.
NOTE: In MacOs (at least) you should allocate at least 5 GB memory to the docker process. I had only 2 GB and everything was looking good from the process side, except that I could not log in. I do recall running the same in Linux without changing anything and it just worked.
-
mkdir ~/reportportal
cd ~/reportportal
- Download the docker-compose -file:
wget https://github.com/reportportal/reportportal/raw/master/docker-compose.yml
mkdir -p data/elasticsearch
chmod g+rwx data/elasticsearch
sudo chgrp 1000 data/elasticsearch
(here’s a difference. I had to run the chgrp in MacOS as sudo)docker-compose -p reportportal up -d --force-recreate
When the compose is ready, you should be able to browse to the Report Portal UI: http://localhost:8080/ui/
Log in using
default/1q2w3e
.Robot Framework integration
In order to get the Robot Framework results to report portal, you need to use a separate library. GitHub – reportportal/agent-Python-RobotFramework. I will create a new blog post on this and add more information there.
jmeter/Blazemeter integration
Basically all we have to do is to generate a junit.xml -report from the test run, zip it and then send it to the report portal API. I will create a new blog post on this and add more information there.
jest-puppeteer integration
GitHub – reportportal/agent-js-jest: ReportPortal agent for the Javascript Jest unit test framework. I will create a new blog post on this and add more information there.