Introduction

rTest is a test tool for FME software from Safe Software. It is developed and maintained by the company Veremes.

rTest is used to automatically verify that the execution of one or more FME processes produces the expected results. The FME processes to be executed and the checks to be performed must be described in a test scenario, an XML document whose structure is defined by an application schema, rtest.xsd. Test scenarios are operated by an FME process named scenarioPlayer.fmw which runs the processes and checks the results. The result of a check is an html report that shows the status of each test, Success, Fail or Error, and provides information about processing time and memory consumption.

Technical characteristics

  • rTest is non-intrusive. It is not necessary to integrate specific transformers or writers in a project to be able to use it

  • rTest is not tied to any FME version. It requires at least FME Desktop 2019.0, but you can use it to check the operation of your scripts on the various FME instances present on your workstation, including older versions

  • rTest is suitable for automating checks via continuous integration environments, including Jenkins

  • rTest supports the control of asynchronous processes requiring a delay between the end of a process and the verification of the result

  • rTest is upgradeable. It must allow the easy integration of new formats and new test operators.

  • rTest is free and open, all the code is available

  • The test reports adapt to the browser language and it is possible to add new languages (English and French by default)

History

rTest was originally designed to meet the quality control needs of FME scripts developed by Veremes for our own products or for our customers. rTest was put into production in 2016 and was presented at the FME User Conference organized by Safe Software in Vancouver in 2017. Although originally published on GitHub and then on Veremes Gitlab server, rTest has essentially remained an internal project with an evolution related to our own needs and non-existent documentation.

In 2021, we decided to redevelop the code to modernize it and make rTest a real product with higher quality requirements. Since version 2.0 (officially rTest 2021.0), it has a real documentation (in French and English) and a web application to consult the reports, while keeping its free character and its open license.

Downloading

The resources needed to use rTest are available on our vStore platform.

To study, correct or improve rTest, developers have access to all development resources from the Developer Resources section of the documentation.

Our GitLab repository is no longer available for security reasons.

Limitations

rTest allows to launch any FME processing but the checks are limited to some formats (PostgreSQL, Oracle, ESRI Shapefile, Excel, AutoCAD, PDF...) and some test operators. In practice, it is possible to extend the list of supported formats quite easily and the test operators have proven to be suitable for the use cases encountered so far.

Functional improvements can be requested from technical support.