Automated GUI Testing on MCUs
Address automated GUI testing on Microcontroller Units (MCUs) using Squish. It offers specialized support for Qt Quick Ultralite applications operating on STM and NXP boards.
Take advantage of the robust Squish IDE to develop reliable tests and smoothly integrate into your existing CI/CD system.
Automated UI Testing in Limited Environments
Squish for MCUs enables automated user interface testing on microcontrollers, which have limited CPU power, memory, and storage. Traditional UI testing methods cannot be directly applied due to these constraints, but Squish leverages image-based testing, OCR scanning, and user event injection to overcome these challenges.
Reduce Manual Testing Errors
Manual testing is error-prone and time-consuming. Squish for MCUs offers an automated alternative, ensuring consistency and reducing human intervention. Unlike manual testing or robotic arms for UI interaction, Squish provides automated verification of images, text, and user interactions, making testing more reliable and efficient.
Easy Integration with Existing Testing Tools
Developers familiar with Squish can easily integrate MCU testing into their existing test suites. Squish for MCUs supports the same scripting languages, test automation tools, and debugging features as other Squish editions, allowing teams to reuse scripts and resources while maintaining their continuous integration workflows.
See Squish for MCUs in Action
Qt Ultralite Demo from ESE Kongress 2024
Squish for MCU applications
Squish for MCUs is an automated UI testing tool designed for microcontroller-based applications, particularly those built with Qt Quick Ultralight. Microcontrollers (MCUs) have strict resource limitations, making traditional testing approaches difficult. Squish for MCUs overcomes these challenges by using image-based testing, OCR (optical character recognition), and external event injection to verify UI functionality.
Unlike manual testing, which is time-consuming and error-prone, Squish for MCUs provides a reliable, automated alternative. It allows developers to validate UI elements, detect changes, and simulate user interactions like taps and clicks without modifying the application code. Additionally, it integrates with existing test frameworks, making it easier to incorporate into automated testing pipelines and CI workflows.
With Squish for MCUs, teams can efficiently test embedded UIs on supported hardware platforms, ensuring a high-quality user experience even in resource-constrained environments.
Squish includes dedicated support for:
Automated UI Testing for Microcontrollers – Designed for Qt Quick Ultralite applications on resource-constrained MCUs.
Image-Based Testing – Verifies UI elements by detecting and comparing screen images.
OCR-Based Text Recognition – Scans and validates on-screen text using optical character recognition.
Simulated User Interactions – Automates taps, clicks, and gestures without modifying the application code.
Screenshot and Visual Verification – Captures and compares screen states for accurate UI validation.
Support for Multiple Scripting Languages – Write test scripts in Python, JavaScript, Perl, Ruby, or Tcl.
Seamless Integration with CI Systems – Easily integrates into existing automated testing workflows.
Multi-Board Compatibility – Supports STM and NXP microcontrollers, with more to come.
Squish IDE Support – Includes debugging tools, code completion, and test management features.
Squish for Other Applications
The beauty of Squish is that it is compatible with a wide range of browsers, operating systems, and platforms.
Beyond Java applications, it can also be used to automate Qt, native Windows, Web and HTML5, Android and iOS, macOS, and Tk applications. It also supports all applications running on desktop, mobile, or embedded devices capable of running a VNC server.