How to extract data from Jenkins and display it a customized webpage - jenkins

I am currently using Jenkins for my build system and i have integrated several plugins with it. Can I extract the data in Jenkins and display it on a customized webpage?
For example, I am using the cobertura plugin to display my test coverage results. I want all the data that are being displayed by cobertura (eg. the graphs...) to be displayed on a customized webpage that i have (outside of Jenkins).

Here is all Jenkins propose :
Jenkins Remote access API

Related

Cucumber HTML Report

I am using cucumber.js and producing a .json report after an execution. I am executing my tests from a Jenkins which is not connected to any internet.
I am using cucumber-html-reporter to generate the html report. The html report is created but the report on the Jenkins is not displayed correctly. Styles and css are broken as it is not able to download it.
Any way by which i can display the html report correctly without breaking images and styles on the Jenkins without having any access to internet. Or any other reporter which I can use to display the report correctly.
I am assuming that you have added the dependency in your maven project to generate the reports. I believe you must check this plugin.
https://plugins.jenkins.io/cucumber-reports/
You can install the aforementioned plugin in your jenkins instance and then you can publish the json report with the help of this plugin. Otherwise you can create your custom html report by reading the required data from cucumber json report and once it is done, you can publish that html report in the jenkins.
It is even worthy to check the below jar file that I have created for the cucumber reporting.
https://github.com/frostyaxe/CucuReporter

Can Jenkins Gatling plugin show the different paths

Is there a way to get the gatling requests in the Gatling Jenkins trend graph? Our build with Jenkins Gatling plugin only shows the trend for the global information in the graph and we want to see the trend per request type as this gives us much more information. Is this possible?
I was looking at the description on their site and it mentions you can configure assertions but to me it wasn't clear if that covers this use case and I'm not finding the assertion files when I run the build with the flag -Dgatling.useOldJenkinsJUnitSupport=true.
To clarify I want the transactions highlighted below in the blue square to appear in the Jenkins graph that shows the trend
Unfortunately isn't possible. However, Gatling has feature for live monitoring where you can setup all needed metrics for each request.
https://gatling.io/docs/current/realtime_monitoring
No, this feature is not available in Gatling OSS Jenkins plugin.
It's available in Gatling FrontLine though.
I got it working using a workaround. The gatling plugin graph will show a trend per simulation. It is looking for /{simulation-name}/global_stats.json in the /build folder.
I wrote a groovy script to parse the json data from stats.json. The structure in stats.json is the same as in global_stats.json. So simply parse the stats.json and copy the json.contents[scenario].stats to a separate file in the build folder:
stats.json structure:
{
...
"contents": {
"scenarioName": {
stats: {...} // copy this part
}
}
scenario-report/global_stats.json
Note the dash "-" in the folder name is required as the plugin is searching for this dash to determine the simulation name. It will nullpointer without it.

Getting access to the allure report statistics in Jenkins (tests with Webdriverio)

I have a set of tests which run within Jenkins and at the end of the tests (in the post section) I generate an allure report. The tests are created with Webdriverio.
The last time I did anything like this, I was using standard selenium running with Junit and due to that combination, the Jenkins Rest API had access to things like failedCount, skipCount, passes and failed counts. This however seems to only be possible with JUnit.
Does allure expose this to Jenkins somehow - or am I going to have to try and scrape the statistics from a pre-generated report?
(as a side note, I have tried to configure a second reporter in webdriverio, but while that seems to create some xml files locally, the folder I configure is not appearing on Jenkins. Also, webdriverio doesn't support JUnit as a framework - currently it's using mocha.)
I eventually managed to figure this out.
There is url which you can go to to get a json file with the summary information.
So if you report is at /allure - then you navigate to /widgets/summary.json

Jenkins plugin - how to create multiple pages for displaying report

I'm developing a Jenkins plugin for displaying reports of my own tool. I got difficulties because Jenkins lacks documentation for developing plugins. Currently, my plugin can only display report on a build page
Screenshoot (surroneded by red border):
http://imgur.com/a/5WvsA
But I want multi-page reports like the Junit plugins on this video:
https://www.youtube.com/watch?v=lWw9AQqUAGU&t=174s (2:56)
How to make a Jenkins plugin that can display reports on multiple pages?
If you want to go through the JUnit Plugin code below is the starting point to dig into it.
TestResultAction
Refer the below link for an article for you to start.
jenkins-plugin-development
I have accomplished this by utilizing ANT build scripts which generate HTML report files after running all of my JUnits.
You could simply publish JUnit results (represented in HTML files) to a public_html directory on a web server which can then be accessed via web browser, displayed on Jenkins dashboards via iframe, etc
Just add this plugin and publish the JUnit results.

What is the best Jenkins dashboard plugin that displays all results?

Can someone point out a plugin that can aggregate all results from all jobs into one uniform Pass/Fail/Skipped dashboard?
I am currently using the dashboard view in jenkins that shows me grids, pie charts and test trends using Junit results.
I am now using Calabash and would like to publish the Cucumber reports to the same dashboard.
If someone can point me out to a dashboard that can consume all formats so I can have a centralized reporting page I would appreciate it.
Dashing would be an ideal choice since it is highly customisable.
Check it out from http://dashing.io
There are plenty 3rd party libs that does integration with jenkins and uses dashing in github as well.
Try integrating influxdb with jenkins.
Why influxdb?
Open source
Its time series database
Existing jenkins plugin
Easier to build query using GUI, no need to learn flux query to
get required data
Existing dashboard templates
Easier to connect to Grafana to
visualize, monitor data and create dashboards
Plugin Path: https://plugins.jenkins.io/influxdb/

Resources