
Monitor CI/CD Workflows With Foresight’s Python Support


We all have known that challenges come with growing your product. Your active users are increasing, ingested and digested data becomes enormous and etc. This has been driving the companies to divide their infrastructure and source codes into logical small pieces. But, this is just the tip of the iceberg. This solution brings its own issues within and one of the most modern ways to solve it is called continuous integration and continuous delivery.
GitHub is one of the most well-known CI/CD platforms. It supports hosting code, versioning, collaboration, and automation of continuous delivery by using GitHub actions. These are pretty lifesaver features but monitoring multiple repositories and workflows over GitHub could become a hell. You always have to smurf between a lot of pages before getting the valuable information.
That is where Foresight gets the stage and dazzles you with its pretty-looking beautiful UIs. Foresight brings all your workflows at your hand to access them easily. In this post, we are going to mention how to smoothly integrate Foresight with GitHub Actions for Pytest by using Fastapi which has been becoming a very popular web framework among Python developers with its asynchronous endpoint support thanks to Starlette, embedded openapi schema to test your endpoints over web browser easily and well-organized data schema and validation with Pydantic.
Integration of Foresight
1-)Create an account
Adding Foresight into your GitHub Actions is pretty simple. First, you need to create a Foresight account. You can sign up from here.

2-) Connect your CI pipeline
In order to list your pipelines, click on the "Connect pipeline" button.

3-)Install Foresight's GitHub application
Foresight's GitHub application has to be installed in order to get started using Foresight. It requires no manual configuration. All you have to do is pick which GitHub repositories you want to monitor and troubleshoot. Here's the link for Foresight's GitHub app.
4-)Choose the repositories your want to watch
After installing the app successfully, you will see the project creation and repositories screen. Please name your first project and select the repositories you want to monitor.

5-) Upload your test reports
You can choose your test framework and update your YAML file with Foresight's report uploader step in order to troubleshoot your test failures easily.

In order to see an overview of your test run, you can click the card and this brings you to the “Test Run Overview” screen. This page depicts test run overall execution time, the number of successful, failed, skipped, and aborted tests, the name of the platform where your test ran and pre-aggregated results as “most erroneous test suites” or “Slowest Test Suites”.

Foresight also supports analyzing test cases and test suites individually. You can search for specific test cases from the search box with the test case name and get whole information about execution in Performance metrics, logs, and screenshots of your test cases.

Summary
Foresight is not only an application that brings you details of your test runs but also helps you to understand the overall flow of your architecture and detect flaws in your projects. In addition to Python, We also support NodeJs and Java languages. You can visit our documentation to learn more about our products.
