EXTENT-2018: Exactpro Open-Source Strategy

1. Proprietary vs. Third-Party Testing Tools

From the very beginning, Exactpro has been relying on in-house built testing tools in providing its QA services. There is a number of reasons for that:

  1. The imagination of the company’s QA engineers should always have room to grow. Sometimes, they are asked to provide features like sending broken messages, sending parts of messages, making a pause and then sending the rest of the messages (slow consuming). The availability of such features from third-party vendors would take too much time.
  2. Also for time and efficiency purposes, it is more convenient to rely on proprietary software and have its development and maintenance staff in-house. That way, the quickest possible reaction to the client’s needs is guaranteed.
  3. All QA service providers, Exactpro included, need to understand the full technology stack behind the platforms under test, from the technical level to to the business level.

Open-source libraries and frameworks underpin all Exactpro tools:

Exactpro Open-Source Strategy - Open-source libraries and frameworks - QuickFIX/J
• We have used QuickFIX/J (a full-featured messaging engine for the FIX protocol and a 100% Java open source implementation of the popular C++ QuickFIX engine) as our first FIX engine

To store all messages, we use:

Exactpro Open-Source Strategy - Open-source libraries and frameworks - MySQL
• MySQL, the world's most popular open source database, which many of the world's largest and fastest-growing organizations rely on to save time and money while powering their high-volume websites, business-critical systems and packaged software, and
Exactpro Open-Source Strategy - Open-source libraries and frameworks - PostgreSQL
• PostgreSQL, a powerful, open source object-relational database system that uses and extends the SQL language combined with many features that safely store and scale the most complicated data workloads.

2. Exactpro license policy

Exactpro Open-Source Strategy - World Map - Exactpro Clients

"Control over their test harnesses is important to our clients. Therefore, our strategy has always been to license the software testing tools along with their source code to the сlients to use at their discretion."

Control over their test harnesses is important to our clients. Therefore, our strategy has always been to license the software testing tools along with their source code to the сlients to use at their discretion. However, understanding this source code would require hiring several developers. Learning the particulars could take up to a year before the company is able to add their own features. If the contract is terminated, the client will stop receiving updates. There has never been a precedent to this situation, but, most likely, continuing the use of Exactpro software would be problematic in a case like that. For this reason, it has been decided to share some of our tools as Open Source. The Open Source Initiative (OSI) is celebrating its 20th anniversary this year, so this makes Exactpro’s contribution somewhat symbolic: after 10 years of using Open Source, we are ready to give back. Now with the completion of the management buyout from the London Stock Exchange Group, it is easier for us to implement Exactpro’s open source strategy.

3. JackFish to Open Source

Exactpro Open-Source Strategy - JackFish to Open Source

Just a few days ago, the Exactpro development team finished uploading one of the tools — JackFish — to GitHub. JackFish is a testing tool for GUI automation (We prefer to focus on API whenever possible. Still, in some rare cases, UI test automation is also required). Before uploading to Open Source, there is a long and complex process of clearing the code, i.e. getting rid of all the private customer data. In addition, guides, descriptions, and other documentation need to be provided along with the software.

4. Sailfish and Nostradamus to Open Source

Exactpro Open-Source Strategy - Machine Learning Applied to Defect Report Analysis - Nostradamus
Exactpro Open-Source Strategy - SailFish to Open Source
In just four months, before SIBOS in Australia, Exactpro plans to share its main functional testing tool — Sailfish. Shortly after, Exactpro’s defect report analysis tool — Nostradamus — will also be uploaded to Open Source.