This post shows how to set a webdriver instance produced by thirtyfour as a member of the World struct defined by Cucumber-rs. We hope to follow up with one more simple post on How to use thirtyfour crate with Cucumber-rs showing ways to write browser driven BDD test automation in Rust using thirtyfour and Cucumber-rs. Why bother writing browser automation […]
How to use thirtyfour crate with Cucumber-rs: Part 1
Setting up Synthetic data in Neo4j
Qxf2 engineers are fans of using synthetic data for testing. We have used this technique for years now. But until recently, our experience was limited to SQL. We needed to work with neo4j in one of our projects. There was enough custom Python code and Cypher queries that we had to write as part of creating, backing up and restoring […]
Error handling with Rust using delta-rs as an example
In this blog, I will explore the various ways to do handle and/or propagate errors with Rust. Qxf2 is transitioning to using Rust as our primary programming language. The Rust documentation is great and has a nice section on error handling and propagation. However, everytime we tried to implement some of those ideas in our day to day work, we […]
Virtualizing GraphQL Microservice using Apollo Server
There is plenty of information online about how to virtualize REST based microservices. At our clients, Qxf2 has implemented different techniques like using a Flask app, using wiremock, etc. But recently we found the need to for virtualizing a GraphQL microservice to expand the scope of our test automation on our CI environment. In this post, we will show one […]
Test Automation with Testim
Qxf2 recently explored a tool called Testim, a low code tool for test automation. We found it useful in specific cases and wanted to quickly write about it. Why bother with a low code tool? Readers of this blog will know that Qxf2 loves to use code for testing. All our engineers write code. Our GitHub page is extremely popular […]
Reset password on multiple machines in parallel using AsyncSSH
I am a member of the TestOps team at my client. Our team is responsible for building test systems. In some releases, it is mandatory to reset the default password right after the application installation and this is time-consuming. This scenario was ideal for automation. I wrote a Python program using AsyncSSH and asyncio to save our team’s time. Limitation […]
Implement PartialEq for a custom type in Rust
This post will show you a couple of ways to implement the PartialEq trait for a custom type in Rust. This is particularly useful for testers since we end up using the assert_eq! macro. A bit of background: Qxf2 has started adopting Rust as our primary language to write our tests and tools. The reasons for the shift from Python […]
State of testing survey 2023
Please participate in the annual ‘State of Testing Survey 2023’ conducted by PractiTest. To participate, please follow this SURVEY LINK. The survey is full of questions relevant to the testing industry. Qxf2 engineers love reading the results of the survey. The survey data says a lot about the direction of our industry. You can even use some portion of the […]
Creating a virtualized Service for MailChimp
You might have come across a situation where you felt the need of creating a virtualized service for your testing purpose. This is especially true if your application is integrating with third party applications. One such situation led me to creating a virtualized service for MailChimp and I am going to talk about it in this blog. This post will […]
Unresponsive function while creating new project in Rust
While working on a rust-based hackathon project at Qxf2, I encountered an unresponsive function when creating new project in Rust. Being a newbie in rust, I was unable to figure out the cause. I tried looking up the internet but could not find any suitable solutions. Hence, I thought of documenting the resolution to this issue so that anyone hitting […]