My role
- Worked as the project's sole QA, covering requirements analysis, test design, Android/iOS execution, defect investigation, and retesting.
- Maintained a happy-path regression suite of roughly 100 checks per platform and ran it after each new build.
- Designed and executed camera-condition scenarios for the flight recordings used to train the client's detection model.
- Joined client and design grooming sessions, where I raised usability gaps such as an awkward scrolling interaction and a missing action.
Technical challenges
- The recording model covered 1,000+ combinations of camera lens, weather, time, target count, capture device, and other conditions. With limited flight time, I had to select the combinations that would give the training dataset the most useful variation.
- Each physical scenario required a complete capture and validation flow, so I prioritized the available flight time around the combinations that mattered most and completed roughly 50 recordings.
- P2P video transfer had to work between physical phones over both Wi-Fi and switched Ethernet, which exposed timing and connection problems that did not appear in isolated testing.
My approach
I defined the variables and rules for the recording matrix, then used a combinatorial generator to produce the full set of possible conditions. From that set, I selected and executed roughly 50 physical scenarios. For every recording, I checked the footage, scenario parameters, expected outputs, file placement, and final archive before it was transferred to the client. The delivered dataset was accepted for model training.
Application testing followed a short build-feedback loop: test the new Android and iOS builds, discuss findings directly with the developers, verify the fixes, and repeat. During P2P testing across representative Android devices, an intermittent crash appeared over both Wi-Fi and switched Ethernet. Working with the developer, we traced it to a non-thread-safe collection used to manage connected clients, then verified the fix. Regression testing also exposed an iPhone crash when exporting a large video, which was likewise fixed and verified in a later build.
Root cause
Found while testing P2P transfer on physical devices over Wi-Fi and switched Ethernet: concurrent connect/disconnect events hit a shared client list that wasn't thread-safe, producing the intermittent crash - fixed by swapping in a thread-safe collection.
Results
- The client accepted the roughly 50 validated recordings and used them to train the drone-detection model. Selecting them from more than 1,000 modelled combinations gave the training set broad coverage despite limited flight time.
- The Android and iOS regression suites surfaced high-impact failures, including the P2P concurrency crash and an iPhone crash when exporting a large video. Both fixes were retested successfully.
- The final mobile apps and test dataset worked as expected in the closing demo and were accepted by the client.
Stack
More case studies