At Qxf2, we’ve successfully integrated Great Expectations into majority of our projects. We now have GitHub workflows in place to run Great Expectations checkpoints before deploying our applications to production. However, as our test suite expanded, we encountered a few challenges: 1. Triggering valid checkpoints. 2. Aggregating checkpoint results. To address these issues, we turned to pytest. In this post, […]
Use pytest to run Great Expectations checkpoints
GitHub Actions to execute tests against localhost
Do you want to setup a GitHub Actions to execute some tests against localhost at CI stage for every branch? Background In this post, we will discuss how we at Qxf2 have setup a GitHub Actions to execute selenium tests against localhost at the CI stage for every branch and the errors that we faced while setting up and how […]
Allure integration with pytest
Recently, I was on the lookout for a good open-source reporting tool other than the ReportPortal tool which we already integrated with pytest in the past. As a result, I came across a tool called Allure. When I started integrating allure with pytest, I stumbled upon a couple of errors as there was no straightforward guide to do so. Therefore, […]
Writing end to end test for microservices based architecture used for posting skype messages
Recently, I have attempted to test microservices based architecture where the AWS Lambda function consumes messages from a microservices endpoint and posts them to the skype channel. I have made an attempt to add most of the validations for the flow. I have included this end-to-end test in the below blog. Background: The above architecture explains, microservices based architecture which […]
Pytest, argparse.ArgumentError and the -V: conflicting option
The CI tests for our open sourced framework suddenly started failing with: argparse.ArgumentError: argument -V/–ver: conflicting option string: -V. Pytest was clearly telling us that the -V option was being used elsewhere. But it was not clear about where the ‘used elsewhere’ was located. Further, while we knew what the error meant but could not understand why the error would […]
How screenshots are captured for a test run in Qxf2’s Page Object Model framework
This post will help you in understanding how the Qxf2’s page object model captures the screenshots when a test is run. Why this post: Screenshots are desirable for bug analysis. Suppose you write a test script to automate a web page, you would not keep monitoring to see if it’s working right every time. You would let the script do its job and […]
Highlight feature of Qxf2’s Page Object Model framework
Are you lost with locating the web elements while debugging your test script? The highlight feature of Qxf2’s Page Object Model framework helps you to debug locators by giving a visual clue. This blog post will guide you with the steps involved in using the highlight feature of Qxf2’s Page Object Model framework in your test script. The highlight feature […]
Converting test screenshots into Gif
When we run the tests using qxf2 page object model framework we capture the screenshots of the test run at certain steps using decorators Screenshots utility. Often, it is time-consuming to view each of these screenshots. We thought of adding a utility that can convert all this screenshot into a single Gif that is more convenient to use and debug any […]
How to run Qxf2 framework tests in parallel using pytest-xdist plugin
In this blog, we will show you how easily Qxf2’s page object model framework can be run in parallel using pytest-xdist plugin. As pre-requisite, Fork, and clone our framework. Follow the Readme.md and set up the framework. To run GUI tests in the framework parallel use the below command. As we have only 3 GUI tests I have passed 3 […]
Email your pytest results as html report
We have noticed that sometimes we want to see test results in our email inbox even though good reporting tools are being used. We at Qxf2 Services, use pytest as our test runner. A simple utility email_pytest_reports.py has been added to our framework which can send pytest results as simple HTML reports. This blog is on how we built an […]