In the realm of software development, testing plays a huge role in ensuring the quality and reliability of applications. Traditionally, Graphical User Interface (GUI) testing has been a common approach to verify software functionality. However, with the rise of modern architectures and the growing importance of APIs (Application Programming Interfaces), API testing has gained significant prominence, aligning with the principles of the Test Automation Pyramid. I already explained what the the Test Automation Pyramid is in a previous article.

Continue reading

Integration testing involves testing the interactions between different components or modules of a system to ensure that they work correctly together. One aspect of testing is the creation of test data that can simulate real-world scenarios. It’s important to have realistic test data that accurately simulates user input when testing software. Manually creating test data can be time-consuming and error-prone. This is where Faker comes in. Faker is a Python package that generates realistic fake data such as names, addresses, phone numbers, and email addresses. It can also generate data for specific domains such as finance, healthcare, and gaming.

Continue reading

As artificial intelligence (AI) becomes increasingly integrated into various applications, the role of software testers has become more critical than ever. Testing AI systems requires specialized knowledge. In AI, the confusion matrix is commonly used to evaluate the performance of the AI model.

Continue reading

Challenges of Testing Website Recommendations

There are websited that recommend some products, articles and other content to their users. This is called website recommendations. Website recommendations are a type of machine learning system that uses data to suggest the articles, products, or other content to users. These systems typically learn from user behavior, such as their browsing history or search queries, to make personalized recommendations. Testing these systems can be challenging for several reasons.

Continue reading

Continuous integration (CI) is a best practice in Agile development. It involves integrating and testing code changes frequently to ensure that the software is always stable, functional, and of high quality. However, implementing CI in an Agile environment can be challenging due to several factors.

Continue reading

WireMock is a Java-based web service mocking tool that allows developers to simulate a web service’s behavior for testing purposes. WireMock provides an Admin API, which manages the mock server and its interactions. I will explore the stub mappings and scenarios that you can manipulate with the admin API.

Continue reading

One of the principles of Agile is to develop small, manageable pieces of functionality known as user stories. Each story goes through a cycle of design, development, and testing, resulting in a potentially releasable increment of software. However, the question remains: who should perform the testing?

Continue reading

Author's picture

Bart Vanherck

Software Test Automation

Belgium