Calidad y pruebas de las métricas publicitarias en dispositivos móviles

Pinterest Engineering
7 min readbeginner
--
View Original

Overview

The article discusses the importance of quality and testing of advertising metrics on mobile devices at Pinterest. It outlines the transition from manual quality control to automated integration testing, highlighting the benefits and challenges faced in ensuring accurate ad metrics.

What You'll Learn

1

How to implement automated integration testing for ad metrics

2

Why automated testing improves code reliability

3

When to transition from manual to automated testing in software development

Key Questions Answered

How does Pinterest ensure the accuracy of ad metrics?
Pinterest ensures the accuracy of ad metrics by implementing automated integration testing that verifies user actions against recorded events. This process allows for early detection of errors and increases confidence in the metrics reported to advertisers.
What challenges does Pinterest face in testing ad formats?
Pinterest faces challenges in ensuring that specific ad formats appear correctly in user feeds for testing. They utilize a tool that inserts promoted Pins at the API level to facilitate testing across different accounts and formats.
What is the role of Buildkite in Pinterest's testing process?
Buildkite is used to set up pipelines for running integration tests on remote machines, allowing tests to execute in parallel and enabling developers to work on other features simultaneously. This setup enhances the efficiency of the testing process.
How does Pinterest replicate tests for new ad surfaces?
Pinterest replicates tests for new ad surfaces by using a Python script that generates tests based on existing ones. This approach ensures that the testing framework remains consistent and scalable as new ad formats are introduced.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Key Actionable Insights

1
Implement automated integration testing to enhance the reliability of your software releases.
Automated testing allows for quicker feedback and error detection, which is crucial in fast-paced development environments. Transitioning from manual to automated testing can significantly reduce the time spent on quality assurance.
2
Utilize tools that facilitate the insertion of test data dynamically during testing.
By using API-level tools to insert test data, teams can ensure that their tests are relevant and accurately reflect user interactions, leading to more reliable testing outcomes.
3
Establish a continuous integration process to run tests regularly.
Regular testing through continuous integration helps catch issues early in the development cycle, ensuring that new features do not introduce regressions or bugs.

Common Pitfalls

1
Relying solely on manual testing can lead to late detection of critical errors.
This often results in high-pressure situations where teams must fix severe issues close to release deadlines. Transitioning to automated testing can alleviate this risk.
2
Neglecting to update tests when UI changes occur can cause test failures.
When UI elements are modified, existing tests may break if they rely on outdated identifiers. It's essential to maintain and update tests in tandem with code changes.