Open Source Projects

Naresh Jain has contributed to the following Open Source Projects


Qontract is a contract driven development tool that allows us to turn our contracts into executable specification.

According to us there are 2 key advantages, which were never possible before:

  • Death of Integration Testing - As long as the service provider and consumer adhere to the contract, you can be 100% confident that each of them can develop and deploy their parts independently. No need for integration testing.
    • On the provider side, run Qontract in test mode
    • On the consumer side run Qontract in stub mode - Qontract ensures that the expectations you are setting on your stubs are in-fact valid as per the contract.
  • Backward Compatibility Verification - Typically for the provider to ensure they've not broken backward compatibility, they need to test their new version of the service with an existing version of the consumer. You might have multiple consumers. This is a complex and time consuming process. With Qontract, you just need to run the contract with new version of the contract with the previous version of the contract to check for backward compatibility.


C3 stands for Coverage, Complexity and Churn. The C3 project provides an actionable dashboard to quickly understand the health of the codebase and to identify hotspots in the application.

Most teams look at coverage and complexity in isolation. Just because some file has very low coverage, does not mean, we should invest in building test harness around it. We also need to see if it has high complexity and high churn. This is the approach we take with C3.

Most teams suffering from Tech-Debt, can use C3 to get pragmatic guidance on how to prioritise files to start paying off the debt.


Karate is the only open-source tool to combine API test-automation, mocks, performance-testing and even UI automation into a single, unified framework. The BDD syntax popularized by Cucumber is language-neutral, and easy for even non-programmers. Powerful JSON & XML assertions are built-in, and you can run tests in parallel for speed.

Test execution and report generation feels like any standard Java project. But there's also a stand-alone executable for teams not comfortable with Java. You don't have to compile code. Just write tests in a simple, readable syntax - carefully designed for HTTP, JSON, GraphQL and XML. And you can mix API and UI test-automation within the same test script.


FitNesse is a fully integrated standalone wiki and acceptance testing framework.

Great software requires collaboration and communication. This is a tool for enhancing collaboration in software development.

It enables customers, testers and programmers to learn what their software should do and to automatically compare that to, what it actually does. It compares customer's expectations to actual results. Know More

Presentation Stack

Presentation Stack is a free responsive pure HTML5 widget for displaying SlideShare presentations.

It's responsive, built on HTML5, JS and CSS3, and released for free under the MIT license. You can use it for any of your personal or commercial projects! Know More


The Panopticode project provides a standardized format for describing the structure of software projects and integrates metrics from several tools into that format. Reporting options provide correlation, historic analysis, and visualisation. Know More


Protest stands for Prioritized Tests. It is an intelligent test ordering tool, which aims to improve the test-feedback-cycles for the developers. ProTest maintains a history of test runs and knows what code changes affect which tests. ProTest is able to run the mostly-likely-to-fail tests first and hence is more effective.Know More


Patang is a framework for testing server-side code. Patang intends to simplify writing and executing acceptance and unit integration tests for server-side code. It implements an in-container testing strategy, meaning that the tests are executed inside the container.

It provides the infrastructure/framework to run fit tests inside the container. What type of fit tests you write will determine which type of testing you can do with Patang.Know More


DbFit is a set of fixtures which enables FIT/FitNesse tests to execute directly against a database. This enables the developers to manipulate database objects in a relational form. Hence makes database TDD much easier than with xUnit-style tools. Know More


Lattu is a framework for testing Eclipse RCP applications. It can run both Unit and Functionality tests. Essentially, it is an Eclipse Plug-in which provides FitNesse extension to run unit and acceptance tests. It uses Junit for unit testing, FitNesse for functional acceptance tests and Abbot for UI tests. Know More

With this framework you can completely automate your RCP build. You can build products out of your plug-ins and even run JUnit and Abbot tests against the newly built product.


Framework for writing decorator for FIT(Framework for Integrated Test) fixtures. This project also provides a set of standard fit fixtures, which can be used to decorate existing FIT table without modifying them. Know More


Java Web Application Stack built on top of Wicket, Spring, Hibernate/Ibatis, Jetty, HSQLDB, Junit, functional testing(Selenium), code coverage(Cobertura), DB Migration and CI. Its intent is to provide a rapid method for creating Java web projects.Know More

© 2021 Naresh Jain. All rights reserved.
No monkeys were harmed in A/B testing this site. Made from 100% recyclable pixels.