• All Articles

The Importance of QA in Ad Tech Product Delivery

author

By Macarena Parisi

May 26, 2023

image

Table of contents:

QA in the Ad Tech Industry

In an increasingly competitive digital environment, businesses share the same concern for establishing a strong market presence and ensuring top-notch user experiences. In the ad tech industry, this is no different, and users seek platforms that offer reliable services and smooth functioning of the platform to streamline their processes. For this reason, Quality Assurance has emerged as a critical discipline for ad tech product development, and at EXADS, we give it the utmost importance. Let’s see what QA in ad tech entails! 

The Importance of QA in EXADS’ Product Delivery

Quality assurance, commonly known as QA, includes any process used for determining whether a product or service meets specified requirements making sure these result in reliable products. 

Quality assurance is crucial for an ad serving platform company for several reasons:

  • It ensures the smooth functioning of the platform and its associated services. By conducting thorough testing and quality checks, potential issues, bugs, or technical glitches can be identified and resolved before they impact users' experience or disrupt ad delivery.
  • QA boosts confidence in the platform among advertisers, publishers, and other stakeholders. A reliable and stable ad-serving platform that consistently delivers high-quality ads helps build trust and credibility with clients, leading to long-term partnerships and increased revenue opportunities.
  • QA contributes to user satisfaction. By proactively identifying and resolving issues, ad serving platforms can provide a seamless user experience. This translates into higher user retention, increased engagement, and a competitive edge in the market.

EXADS QA Processes

EXADS has established itself as one of the number one choices for advertising professionals seeking a white-label ad platform. Our success is attributed to our highly skilled and collaborative squads which consist of experts in different areas such as product managers, designers, developers and QAs. 

QAs in particular, participate in every single project in the whole development lifecycle. It may seem simple to develop a small program, but building enterprise-level software is quite challenging. Consequently, at EXADS, we believe it is key to follow a proper methodology when developing our products, one that focuses on quality. 

For this, we have been working hard on defining our Software Testing Life Cycle (STLC) in order to make sure we cover testing and assure quality every step of the way. The Software Testing Life Cycle (STLC) consists of the activities our testing team performs to ensure the quality of the software application as part of the testing process. 

Software Testing Life Cycle (stlc)

Source: OptimumBrew

At EXADS, we include our QA team early in the SDLC - as early as the requirement review phase. This is because the further you go into the SDLC, the more likely it is that bugs that could have been detected early, will have gone into production and the time and cost involved in finding and fixing these bugs at a later stage are going to be significantly higher. 

The relative cost of fixing defects

Source: SegueTech

Requirement Analysis

As mentioned before, our QAs are embedded into every single ticket that goes live and participate in them since the very early stages of their conception. The team works closely with the Product department to conduct a thorough analysis of every requirement and make sure to identify both functional and non-functional testable requirements. QAs will also assist in better understanding any possible edge cases not being considered, ambiguities, flaws, inconsistencies with the already existing features and any other concerns they could find. The main objective at this stage is to identify issues and project risks at their earliest before they become defects, saving both time and money.

Test Planning & Test Design

This early involvement in requirements analysis enables our QAs to plan their testing before the first line of code has even been written. At EXADS, we call this stage the QA Story Review and it is one of the most important stages for the team. This is when a Test Plan is created, and the different test case scenarios are defined.

The team prepares a corresponding Requirement Traceability Matrix to map user requirements with test cases, in order to ensure all the test cases are covered and no functionality is missed. These scenarios are created on our Test Repository tool and they get constantly updated as the project progresses, leaving all the requirements well-documented for future consultation and at the same time increasing our Test coverage. 

QAs also assess the automation needs at this point and define the test cases that should be automated as part of the project.

Lastly, the team also defines which other types of non-functional tests would be required, such as Performance Testing, Security Testing, UI Testing and Accessibility Testing to mention a few.

Environment Setup & Test Execution

As part of the plan, the team needs to also define in which environments the testing will occur, with which users and which test data. If mock data is needed, this is the stage in which the team will create relevant queries and templates.

Once there is already some deliverable to be tested, the QA team will ensure that the test environment is properly configured based on the prerequisites and will continue to conduct smoke testing to determine if the environment is stable enough for testing the product.

The team will proceed with executing the Test Cases, comparing the results obtained and keeping track of the ones completed and passing. If there are any issues encountered, corresponding bug reports are created for the Development team to fix. Each issue is then retested and compared with the expected results until they match.

Environment Setup & Test Execution

The team also conducts system integration testing, to make sure that the user flows are correctly integrated and working in conjunction with the rest of the system, and Regression testing to make sure that the new changes have not impacted existing functionality. This is achieved by running our automated test suites. 

Test Closure

Finally, if the exit criteria are met, such as all manual Test Cases are passing and all automated tests have been completed and passed, the product is signed off and the project is now in a QA Complete status.

The QA team is now tasked with posting a detailed analysis of the test conducted with their corresponding statuses and a list of reported bugs and errors found along the process.

Deployment - Product Release

At EXADS we work in a fast-paced environment with regular releases, which means that the team and the processes must be prepared to assure a smooth and successful release that won't affect our clients and our products negatively.

This is why on each release we work with a rigorous process that covers different types of testing including unit testing, smoke testing, functional testing, integration testing and regression testing. Automated scripts that are composed of our smoke and regression test suites are run on both staging (pre-production) and production environments every time a release is done. On top of this, the whole QA team is involved in making sure that the new changes are stable before signing off on staging and giving the green light to go live.

Once a release is live, the team spends time monitoring the products and services making sure that the release has been successful.

Deployment - Product Release

How do we Achieve Quality?

  • Methodical Processes: As mentioned before, our professional QA team is involved in the whole STLC, testing early. We plan ahead, keep track of test execution results and follow a well-structured plan for releases.
  • Test Cases coverage and maintenance: Our QA team takes this seriously, regularly maintaining the manual Test Cases in our Test Repository with every product and requirements iteration. Moreover, the team is also tasked with maintaining test automated scripts to make sure they are running smoothly and also increasing its coverage by adding more Test Cases to be run automated.
  • Tools: We use tools that greatly enhance the effectiveness and efficiency of our testing processes: 
    • Test Automation tools: we automate repetitive and time-consuming tasks, allowing the team to focus on more critical aspects of testing and reducing the chances of human error as well. We are currently using Protractor with TypeScript and Cucumber to write our automated tests and we are soon embarking on using Playwright.
    • Test Management tools: to help us achieve a broader test coverage we create comprehensive test suites inside our Test repository. We use TestLink to manage them.
    • Reporting tools: these help us track the progress and results of our testing efforts. We generate comprehensive reports, analyze test metrics, and identify patterns or trends to make data-driven decisions about the quality of our software using Kibana, Jira and monday.com. These are also useful for project tracking, triaging, release planning, and bug reporting.
    • Collaboration tools: we facilitate collaboration among team members by providing weekly Knowledge Transfer sessions, creating documentation on Confluence and our own training video recordings in Udemy. 
    • Other types of tools: in order to perform different types of testing, we use Lambda Test (for cross-browser testing), Postman (for API testing), and MySQL (for white box testing).
  • The Team: Our special recipe for success is our team. We have a collaborative team that unites to find solutions and improvements to commonly encountered challenges that arise across our processes. We meet on a regular basis to discuss ongoing improvements needed for the testing efforts and how these are being solved. In addition, we review support tickets, triage them and keep reports on how long each ticket spends in each status along the workflow, address any blockages or statuses that are consuming the time and enhance our predictability of delivery for future tickets that come through the same process flow. 

Conclusion

Altogether at EXADS, we always aim to create a positive impact and make the users of our ad serving platforms happy and their lives easier and simpler. If you are looking for an ad platform that meets all your requirements and standards, contact a member of our team today!  

Share this article on