ReportPortal is an open-source, service-oriented, web-based platform that serves as the single entry point for your entire automated testing process. It provides enhanced machine learning analytics, advanced visualization, and collaborative capabilities to your testing landscape. By processing large volumes of real-time test results from various platforms and types, ReportPortal unifies your test results, helping teams identify and focus on critical issues to improve efficiency and elevate the overall quality of the product, accompanied by Quality Gates for the automated decision returned into the CI/CD pipelines.
Leveraging the power of AI and machine learning, ReportPortal offers a suite of unique capabilities:
- Single Entry Point: Streamline your testing process by having all your testing results, regardless of the platform or type, fed into a centralized system.
- Unification of Test Results: Collect, analyze, and present test results from various platforms and types for a comprehensive view of your testing process.
- Failure Categorization (Triaging): Facilitate efficient triaging of failed test results, using AI to categorize failures and highlight the most critical issues.
- Advanced Analysis: Use Machine Learning algorithms to analyze test reports and failures, identify patterns, and predict potential issues. This reduces the team's effort in handling test results, allowing them to concentrate solely on new failures or enhancing test coverage.
- Quality Gates: Define and implement specific criteria that need to be satisfied before moving to the next development phase. Automate GO/NO-GO decisions based on testing results and integrate a feedback loop into the CI/CD pipelines.
- Dashboarding: Harness data visualization to track and understand trends, facilitating more informed decision-making.
- Real-Time Reporting: Monitor test execution in real-time, with live metrics, logs, and launch statistics available at a glance, so you can save a time on early reaction.
- Historical Data Analysis: Compare test results over time to identify trends and patterns.
- Collaboration Tools: Easily share insights, test results, and observations with your team, fostering a collaborative approach to troubleshooting and issue resolution.
- Integration: Seamless compatibility with popular testing frameworks (JUnit, PyTest, TestNG, etc.) and CI/CD tools (Jenkins, Bamboo, etc.).
Application Core is based on micro-services architecture.
ReportPortal server side consists of the following services:
service-authorizationAuthorization Service. In charge of access tokens distribution.service-apiAPI Service. Application Backend.service-uiUI Service. Application Frontend.service-indexIndex Service. Info and health checks per service.service-analyzerAnalyzer Service. Finds most relevant test fail problem.gatewayTraefik Gateway Service. Main entry point to application. Port used by gateway should be opened and accessible from outside network.rabbitmqLoad balancer for client requests. Bus for messages between servers.minioAttachments storage.
Available plugins developed by ReportPortal team:
plugin-bts-jiraJIRA Plugin. Interaction with JIRA.plugin-bts-rallyRally Plugin. Interaction with Rally.plugin-saucelabsSauce Labs Plugin. Interaction with Sauce Labs.plugin-bts-jira-cloudPlugin to integrate JIRA Cloud with ReportPortal.plugin-bts-azureAzureDevOps bug tracking system integration for ReportPortal.plugin-bts-mondayMonday Plugin. Interaction with Monday.plugin-bts-gitlabGitlab Plugin. Interaction with Gitlab.plugin-slackSlack Plugin. Interaction with Slack.plugin-telegramTelegram Plugin. Interaction with Telegram.plugin-import-junitJUnit Import Plugin. Import of Junit test results.plugin-import-robotRobotFramework Import Plugin. Import of Robot Framework test results.
Client side adapters related repositories:
client-*- API integrations. Http clients, which process HTTP request sending.agent-*- Frameworks integration. Custom reporters/listeners, which monitor test events and trigger event sending viaclient-*.logger-*- Logging integration. Logger appenders, which help to collect logs, bind it with test-case item viaagent-*and send to server viaclient-*.
Other repositories stored according to next rules:

