The Iron Code

triangles

Introducing Havocompare: Simplifying Complex Test Validations for CI Testing

written on 2023-08-15 18:53

As someone deeply passionate about software quality and testing, I'm excited to finally introduce Havocompare. This versatile open-source utility is the culmination of my experiences and insights gained during my time at Volume Graphics GmbH. With some spare time before I embark on my new role, I couldn't be more thrilled to share Havocompare with the world.

Why Havocompare?

  • Configurability Without Complications: Unlike proprietary tools that often come with convoluted configurations, Havocompare embraces simplicity. YAML configuration files make defining intricate validation rules a breeze. For example, the following rule validates numerical results in CSV files:
    rules:
      - name: "Numerical results csv"
        pattern_include:
          - "**/export_*.csv"
        pattern_exclude:
          - "**/export_1337.csv"
        CSV:
          comparison_modes:
            - Relative: 0.1
            - Absolute: 1.0
    
  • Version Control and Collaboration: Say goodbye to non-versionable and non-diffable proprietary settings. Havocompare's configuration files are Git-friendly, enabling seamless collaboration and history tracking.
  • Blazingly Fast, Thanks to Rust: Havocompare is written in Rust, a language known for its speed and efficiency. Experience rapid test validations without compromising accuracy.
  • Battle-Tested in Volume Graphics' CI: Despite being nominally version 0.4.0, Havocompare has already proven its mettle in the rigorous CI environment at Volume Graphics. It has confidently replaced proprietary tools like Beyond Compare in our testing workflows, handling thousands of test cases per night with ease.
  • Written in Rust for Enhanced Security: By leveraging Rust's memory safety guarantees, Havocompare is poised to minimize the risk of introducing new security issues.
  • MIT License for Unrestricted Use: Havocompare is licensed under the MIT license, empowering you to enhance, modify, and use it at will—even in commercial contexts.
  • Diverse Comparison Modes: Havocompare supports numerical tolerance checks, text comparison, image similarity, hash comparison, file metadata checks, and even external tool integration.

Developed by Volume Graphics GmbH

Havocompare is more than just a utility; it's an open invitation to a community-driven initiative. This open-source initiative is a testament to our shared commitment to quality assurance and collaborative software development.

A Heartfelt Thank You to Volume Graphics

I'd like to take this opportunity to express my deep gratitude to Volume Graphics for the wonderful five years I spent there. Working with such a talented team was a privilege, and I was fortunate to collaborate with some of the most brilliant C++ software engineers I have ever encountered. Their expertise and dedication have continually inspired me.

In addition to the engineers, Volume Graphics boasts a team of crazy good QA specialists who have played a pivotal role in ensuring the quality of our software products. Their outstanding skills in test design and Gherkin formulations have not only ensured the robustness of our applications but have also set new standards for quality assurance in our industry.

Moreover, the technical operations team at Volume Graphics has consistently worked wonders behind the scenes. Their expertise in managing and optimizing complex systems has ensured smooth operations and kept our projects running seamlessly.

And I would be remiss if I didn't mention the incredible camaraderie within the company. Everyone at Volume Graphics is not only talented but also incredibly friendly. It was easy to not only meet colleagues but form friendships that hopefully will continue to thrive beyond my time there.

Having the freedom to bring numerous interesting projects to life, including Havocompare, has been an incredible journey. The support and encouragement I received from every corner of Volume Graphics have been instrumental in the development of this tool.

Thank you for creating a workspace where innovation thrives and excellence is the norm. I am truly grateful for the experiences and opportunities I gained during my time at Volume Graphics.

Best regards Chris

Tagged:
General
Programming