ZenoTest
ZenoTest is a lightweight and powerful tool for Windows desktop UI test automation. Record, generate, and run automated tests efficiently for WPF, WinForms, and native apps.

Windows UI Test Automation Features

ZenoTest combines a powerful automation core with an intuitive workflow for stable, maintainable, and framework-independent UI tests.

Core Windows UI Automation Features

🔧 Works with any Windows Application

No matter whether your software is built with Qt, WinForms, WPF, Java, Web technologies, or a custom UI – ZenoTest detects and interacts with it effortlessly.

Extended support includes Qt 6.x.x applications (full property access, MinGW and MSVC toolchains), as well as Embarcadero C++ Builder (VCL) applications – without the need for plug-ins or framework restrictions.

🧠 Intelligent Object Recognition

ZenoTest automatically combines multiple UI attributes to uniquely and reliably identify UI elements across different technologies and implementations. Even when the UI layout changes or elements are reorganized, ZenoTest continues to recognize them correctly.

This results in stable test cases that significantly reduce test maintenance effort and minimize rework caused by UI changes.

🖼️ Screen Compare

ZenoTest provides Screen Compare functionality to automatically detect visual differences between screens or UI elements. It offers two robust comparison modes: Edge-Based, which focuses on structure and is tolerant to anti-aliasing, slight rendering shifts, and compression artifacts, and Pixel-Exact, which verifies precise pixel differences within defined tolerance and color delta.

This ensures that your application's appearance remains consistent across versions, reduces manual verification effort, and improves overall test reliability.

Test Development & Maintainability

💻 Simple, C-like Scripting Language

ZenoTest’s lightweight C-inspired scripting language is easy to learn. Advanced users can leverage loops, conditions, parameters, and global functions for complex automation scenarios.

StartAUT();
LeftMouseClick("DIE_ANZEIGE_LAUTET_0_LANDMARKTARGET");
SendKeys("9+10*9=");
Verify("DIE_ANZEIGE_LAUTET_0_LANDMARKTARGET", "Die Anzeige lautet 171");
LeftMouseClick("RECHNER_SCHLIE_EN_RECHNER_RECHNER");

🧠 Powerful & Extensible Scripting

ZenoTest’s scripting language combines simplicity with power. It supports method chaining, rich string operations, automatic type conversions, and advanced auto-completion.

This allows testers and developers alike to write clean, expressive, and maintainable test code without sacrificing flexibility.

💬 Recorder & Automatic Code Generation

Record your actions and let ZenoTest generate executable test scripts instantly. You can edit, extend, and reuse them – creating test automation in minutes, not hours.

📂 Organized Project Structure

Manage everything in one place: project files, test suites, and test cases. ZenoTest keeps your tests structured, maintainable, and scalable – even for large projects.

Reporting, CI/CD & Automation

📈 Clear, Readable Reports

Every test run is automatically documented. Beautiful HTML reports with execution time, status, and detailed results give your team full transparency.

  • Automatic HTML report generation
  • Detailed execution logs and timing
  • Visual pass/fail summary
  • Shareable and team-friendly output

📊 Traceable Test Results

ZenoTest reports provide full traceability from test results back to the exact script location. Log entries include file names, test suites, test cases, and line numbers, allowing one-click navigation directly to the source of an issue.

This drastically reduces analysis time and improves collaboration across QA and development teams.

⚙️ Automation & Integration

Run ZenoTest in GUI mode for manual testing or via command-line mode for full automation. Integrate it into your CI/CD pipelines to trigger tests automatically with each commit, nightly build, or release.

🚀 Reliable Console & CI Execution

ZenoTest can be executed entirely via the command line, making it ideal for CI/CD environments. Select projects, test suites, or individual test cases, define report paths, and run tests fully unattended.

This ensures reliable automation for nightly builds, regression testing, and release validation.

Platform & Technology Depth

🧪 Deep Qt Integration

ZenoTest offers deep, native integration with Qt 6 applications. It supports both MSVC and MinGW toolchains and provides direct access to internal Qt properties without requiring source code or application modifications.

Advanced widgets such as QTableWidget, QTreeWidget, and QTextBrowser are fully supported, enabling precise validation of complex UI states and content.

🔍 Automatic AUT Analysis

When an Application Under Test (AUT) is configured, ZenoTest automatically analyzes it to detect framework, compiler, architecture, and runtime details. This includes precise Qt version detection and compatibility checks before test execution.

Potential issues are identified early, resulting in faster setup, fewer runtime failures, and more predictable test execution.

🖥️ External Process Automation

With its integrated ShellProcess support, ZenoTest can start, monitor, and control external processes and tools. Capture standard output and error streams, set working directories and environment variables, and execute processes synchronously or asynchronously.

This enables automation beyond UI testing – including build steps, toolchains, PowerShell scripts, and system-level workflows.

🧩 Open. Extendable. Future-Proof.

ZenoTest is continuously evolving. Planned features include visual testing with OCR, parallel execution, Python and BDD (Gherkin) scripting, and integrations with Jenkins, GitLab, and more.

Stability, Diagnostics & Reliability

🐞 Advanced Script Debugging

ZenoTest provides professional debugging capabilities directly within your test scripts. Set breakpoints, pause execution, step through code, or continue execution at any time. Scripts are executed in a controlled thread, allowing precise inspection and intervention during runtime.

This enables faster test development, easier root-cause analysis, and significantly reduces debugging time for complex automation scenarios.

💥 Crash Detection & Failure Evidence

ZenoTest automatically detects application crashes during test execution and captures all relevant evidence. Screenshots are taken at the moment of failure and saved alongside the project, making issues immediately reproducible.

Crash information and screenshots are directly linked in the report, enabling fast diagnosis and clear communication between testers and developers.