End-to-End testing for an IoT Security Product
IoT Security
Engagement Highlights
- Developed a custom automation framework tailored to the specific needs of the SDS Desktop Application.
- Increased approximately 80% automation test coverage and reduced manual effort.
- Successfully deployed the automated test suite in the production environment, ensuring smooth operation and ongoing maintenance.


SDS Introduction
Shooter Detection Systems is a premier IoT security company. The Guardian Indoor Active Shooter Detection System incorporates the world’s finest acoustic gunshot identification software and combines it with infrared gunfire flash detection to produce the highest performing, fully automatic, and most accurate gunshot detection technology available today. The Guardian System is certified by US and UK Government authorities and trusted by customers in corporate, school, government, and other private and public venues across the globe.With millions of hours of use, The Guardian Indoor Active Shooter Detection System has delivered a 100% detection rate – without a single false alert – a perfect operational record.
Challenges & Goals
Shooter Detection System was looking out for a QA partner that could help them with the following challenges and goals:
- Accurately detect sensor objects and consistently render floor plans with test automation, reducing the need for manual verification.
- Automate shot detection on sensors to ensure correct system responses without false positives.
- Capture and track color transitions of sensor icons during shot detection events for reliable visual indicators.
- Validate sensor placement and appearance across different scenarios and UI configurations.
- Automate installation and upgrade processes, handling OS-level security prompts effectively.
- Replace unreliable OCR-based tools like Sikuli with more robust automation solutions.
Solutions
To address the challenges associated with the SDS Desktop Application and achieve robust UI automation, we used TestComplete as the primary automation tool:
- Neova Solutions implemented a cost-effective automation solution to address the challenges in the SDS Desktop Application, ensuring high-quality and long-term results.
- Successfully achieved compatibility with Java Swing components, which are heavily used in the SDS Desktop Application, ensuring reliable performance.
- Addressed challenges in object detection and recognition, particularly for sensor objects on floor plans, through rigorous testing and fine-tuning.
- Leveraged a well-established automation tool with extensive support resources, allowing for quick resolution of any issues encountered during the project.
- Provided flexibility by supporting multiple programming languages, enabling our team to work with the language that best suited their expertise.
- Accelerated the creation of test cases using Record & Playback functionality, which streamlined the script development process.
- Delivered valuable insights through detailed and customizable reporting, helping track the progress of automation efforts effectively.
- Unified automation efforts across desktop and web interfaces of the SDS system, thanks to the tool’s cross-platform testing capabilities.
- Integrated automated testing into CI/CD pipelines, ensuring consistent execution as part of the software development lifecycle.
- Scaled the automation framework to accommodate growing testing needs, allowing for the expansion of test suites and more complex scenarios with minimal overhead.
Business Impact
Implementing TestComplete for automating the SDS Desktop Application has the potential to deliver significant improvements in testing efficiency and coverage:
- Maximized Test Coverage: Neova Solutions achieved approximately 80% automation test coverage, including complex scenarios like sensor detection and color change transitions, which were previously difficult to automate.
- Workarounds for Non-Automatable Scenarios:
- Command Line Shot Simulation: We simulated shots via command line commands and validated detection through system logs, ensuring core functionality was thoroughly tested even when direct UI validation was challenging.
- Color Transition Validation: We used logs to confirm the system correctly registered color transitions, bypassing the complexities of direct UI-based validation.
- Reduced Time to Release: By automating repetitive and critical test cases, we significantly reduced the time required for manual testing, leading to faster release cycles. Certain functionalities still required manual validation, but overall testing efforts were greatly minimized.
- Improved Accuracy and Reliability: Our automation efforts minimized human error, ensuring consistent and accurate test execution, leading to more reliable results and early identification of issues in the development cycle.
- Enhanced Reporting and Analysis: We provided detailed insights into test performance, identifying trends, and making informed decisions on where to focus manual testing efforts, ensuring a more strategic approach to quality assurance.
- Future-Proofed Automation: The versatility and scalability of our customized automation framework ensured that it could adapt to future changes in the SDS Desktop Application, including updates to the UI or underlying technology.


















