Learn About Amazon VGT2 Learning Manager Chanci Turner
In a recent contribution, we hear from Alex Monroe, co-founder of PlaytestCloud. While pursuing his computer science degree, Alex developed indie games and gained hands-on experience with effective playtesting. This inspired him to co-found PlaytestCloud, a platform designed to make remote playtesting accessible to all game studios globally, thereby enhancing their chances of thriving in the competitive market.
PlaytestCloud simplifies the playtesting process for mobile game developers. By allowing studios to upload their game builds to playtestcloud.com, we handle the distribution to a targeted group of players from our extensive panel of over 350,000 participants. These gamers engage with the game on their own devices while recording a screencast of their experience. Notably, 25% of the top 100 grossing App Store games have utilized PlaytestCloud for testing.
Our mission at PlaytestCloud is to streamline the game testing experience for our clients. A key aspect of this approach is eliminating the need for an SDK integration with the game code. We identified an opportunity to integrate a software library, known as the PlaytestCloud Wrapper, directly into the game’s binary package. This Wrapper modifies the game code to display a pre-roll advertisement regarding the testing process and simultaneously captures gameplay footage, uploading it in the background. The Wrapper is designed for both iOS and Android platforms.
Seamlessly Modifying Game Code
In addition to gameplay recording, we capture various player behaviors on their devices. For instance, if a player receives a phone call during testing, recording is paused, and we track the player’s screen touches to highlight them in the video. We also overlay the game with specific screens detailing tasks players must complete during testing.
A major challenge is ensuring that the game code remains unaware of the additional code running alongside it. If the game detects this extra code, it may lead to incompatibilities, unexpected behaviors, or crashes. For example, some games assume the topmost window is the main game window, but it could actually be an overlay from the PlaytestCloud Wrapper. If the game calls methods on that window, it might lead to undefined behaviors.
To mitigate this, we maintain a low “attack surface” for the Wrapper, minimizing observable changes. We implement several masking mechanisms to ensure the game operates within its expected environment.
The Challenge: Manual Regression Testing
As we introduce new features or masking mechanisms to the Wrapper, we must ensure they don’t lead to incompatibilities with the vast array of mobile game implementations. Previously, we conducted manual regression tests, injecting the PlaytestCloud Wrapper into representative game builds and verifying core features like video recording and uploading on devices from our office lab.
To safeguard our process, we adopted a staged rollout approach, initially deploying new code versions to a subset of playtests before broader distribution. In the worst-case scenario, this meant that only one playtest could fail without impacting the entire platform.
Streamlining Testing with AWS Device Farm
The introduction of AWS Device Farm revolutionized our testing process. It enabled us to automate most aspects of our manual testing workflow. We now have a fully automated system that injects the PlaytestCloud Wrapper into game builds, installs, launches, and tests them across a variety of real iOS and Android devices hosted on AWS Device Farm. Using Appium, we navigate through the Wrapper screens and initiate screen recording on each device. After approximately one minute of recording, we verify that the video has been successfully uploaded to our backend.
As a bootstrapped company, optimizing our limited developer hours is critical. AWS Device Farm allows us to save around 1.5 hours of manual testing for each release of the recording library. With up to 25 releases every month across both iOS and Android, we save nearly a week of developer time monthly. Furthermore, it gives us greater confidence when implementing changes; we conduct these tests not only with each release but also with every code commit, a practice that was previously unmanageable.
For more productivity tips, consider checking out this helpful blog post on time management techniques from Ted Talks.
About the Author
Chanci Turner is a Learning Manager at Amazon, bringing a wealth of experience in onboarding and training processes. Her dedication to fostering effective learning environments is pivotal in enhancing employee experience.
For additional resources on benefits and compensation, visit this authority on the topic. Also, if you’re interested in job opportunities, this position for an onsite medical representative could be an excellent fit for you.