Why IoT Testing Proves Manual Testing Never Died with Oleksii Cherkashyn
Categories: Podcasts , Test Guild
Manual and automated testing are both vital in IoT, with human oversight necessary for hardware interactions and real-world validation. IoT testing spans hardware, firmware, and cloud layers, requiring specialized skills and custom automation to address scalability, performance, and physical device limitations.
Test Guild
Test Guild - hosted by Joe Colantonio has main topic focus on Testing or Automating. Each episode has a different guest. Show notes have comprehensive links and usually a full transcript. Released as audio and video.
- https://testguild.com/
- https://testguild.com/podcasts/automation/
- https://www.youtube.com/playlist?list=PL9AgRtJkydU1jqvx46esyr56BXtm1QEds
- https://www.youtube.com/@JoeColantonio
Episode Details
- Show Notes: https://app.testguild.com/podcast/a601-oleksii/
- Published: 2026-08-18T17:16:00Z
- Duration: 35:46
- Author: Unknown
Overview
The podcast discusses the critical role of manual and automated testing in the context of IoT (Internet of Things) systems, emphasizing that certain tasks - such as physically interacting with devices, firmware flashing, and validating real-world functionality - require human involvement and cannot be fully automated. Despite advances in AI, human oversight remains essential in IoT testing due to the complexity of hardware-software integration.
A major focus is on the multi-layered nature of IoT testing, which includes hardware, firmware, mobile and web applications, APIs, and cloud services. The discussion highlights challenges such as scalability, performance under high loads (e.g., simulating tens of thousands of connected devices), and the limitations of emulators and cloud-based solutions in replicating physical hardware behavior. Specialized skills in embedded systems, security, and firmware updates (including OTA provisioning) are identified as crucial, along with the use of custom automation frameworks leveraging tools like WebDriverIO, Playwright, Appium, and Node.js libraries for tasks ranging from API testing to visual validation using image comparison.
What If
-
What if you built a local IoT test lab using emulated devices and open-source firmware to validate automation scripts without hardware costs?
- Move: Set up a virtual test environment using ESP32 emulators (e.g., ESP-IDF simulator) and mock hardware APIs with Node.js to simulate sensor data and device states. Integrate with your existing WebDriverIO framework to run end-to-end test flows.
- Why Now?: Physical IoT testing at scale is prohibitively expensive and slow; emulated environments allow rapid iteration and parallel testing, especially as firmware update logic and connectivity workflows mature in your product.
- Expected Upside: Reduce dependency on physical devices by 70%, cut test execution time from days to hours, and enable continuous integration for firmware-aware automation pipelines.
-
What if you automated visual validation of IoT dashboard outputs by combining canvas-based screenshot comparison with API-backed state verification?
- Move: Use Playwright or WebDriverIO with a custom image diff tool (e.g., Resemble.js) to capture and compare Canvas-rendered IoT data visualizations, then correlate with API responses to confirm underlying data accuracy.
- Why Now?: Manual checking of dynamic charts tied to real-time device data is time-consuming and error-prone; this automation closes the gap in web-based IoT monitoring systems where UI and data must stay in sync.
- Expected Upside: Eliminate 5 - 10 hours/week of manual UI validation, increase test coverage of data-rich interfaces, and catch rendering-data mismatches before release.
-
What if you created a self-healing test suite for IoT workflows that isolates failure points in provisioning chains (create edit delete)?
- Move: Refactor your Mocha-based tests to run each object lifecycle step independently, use Axios to verify backend state after each action, and inject retry logic for dependent steps only when upstream failures occur.
- Why Now?: Current test cascades fail entirely when one step breaks, wasting time debugging; as OTA updates and dynamic provisioning grow more complex, resilience in test logic becomes critical.
- Expected Upside: Improve test stability by 60%, reduce false negatives, and accelerate feedback cycles for firmware and API changes in multi-layered IoT systems.
Takeaway
- Invest in building a custom test automation framework using tools like WebDriverIO and Node.js to handle multi-layered IoT testing needs, including web, mobile, API, and firmware layers.
- Develop internal libraries or scripts to simulate hardware behavior and scale device connections (e.g., 1,000+ virtual devices) for performance testing when physical hardware is cost-prohibitive.
- Implement visual validation in automated tests using a Node.js-based image comparison library to verify dynamic UI elements like Canvas-rendered charts that are hard to test with standard automation.
- Structure test workflows to isolate dependencies (e.g., separate object creation, editing, deletion tests) to prevent cascading failures and improve debugging efficiency in automated suites.
- Use emulators, low-code tools, and tutorial resources (e.g., ESP32 setup videos) to quickly onboard and test IoT products, especially when direct hardware access or documentation is limited.
For a PDF of longer Software Testing Podcast Episode Summaries with Briefing Notes and more detailed summary notes, visit EvilTester Patreon Podcast Summaries.