Curiosity Software Ireland
Analyst Coverage: Daniel Howard
Curiosity Software Ireland is a software company founded in 2017 and based in Dublin. Its product areas include test automation and robotic process automation, and its partners include Digital-Assured, Ostia, Micro Focus, Eggplant, Windocks, and Parasoft.
The company offers a variety of products designed to enhance, accelerate, and automate the testing process, including Test Modeller and Test Data Automation, solutions for test (design) automation and test data management/automation respectively. Most recently, it has developed an open testing platform that acts as a collaboration hub for testing.
Curiosity Software Ireland Test Modeller
Last Updated: 5th February 2020bb
Test Modeller is a test design automation product based on VIP, the Visual Integration Processor, a rapid application assembly framework developed by CSI. It provides functional, UI, performance, API and mobile testing via a model-based testing framework; advanced test data management capabilities, including synthetic data generation, allocation, subsetting, masking and cloning; and direct integration with a number of other testing products and vendors, including Eggplant, Tricentis, API Fortress and Parasoft. The product is entirely browser based, but can be deployed either in-cloud or on-premises.
“Gone are the days where you had to allot time for designing test cases. With modeller as soon as you create process model it automatically generates test cases using advanced coverage techniques.”
Information Technology & Services company
“Automated testing within reach and without writing the same tests scripts. VIP Test Modeller does enable an organization to seriously make a big left shift in their continuous development strategies.”
Test Modeller allows you to create a BPMN model for your system under test, as shown in Figure 1, which can then be leveraged to automatically generate testing assets. This model can be created manually using the built-in model editor, imported (for example, from a BPMN or Visio file), or built automatically using either existing testing assets, such as Gherkin feature files, or process mining via either Fluxicon or Dynatrace. Test Modeller also enables you to create user journeys by recording your interactions with your system. These are managed and analysed centrally and can also be used to automatically build your model. Furthermore, the tool can accelerate and guide model creation using its Fast Models feature, which automatically detects typical boundary values and valid and invalid test paths associated with an object under test.
Models can contain data variables, which will be found, parameterised, and populated with appropriate static data if your model was imported or built automatically. If not, you can add them manually. You can also opt to replace the static data in your model with dynamic synthetic data that will be generated automatically during test creation. Over 500 synthetic data functions are built-in, and you can create your own if necessary. Models can also be nested inside each other, enabling subflows. Importing models in this way is simple, and once a model is nested inside another, it is treated as if it were a part of that model. This makes managing nested models quite easy while creating a significant amount of reusability.
Once your model is complete, Test Modeller will automatically generate the minimal set of test cases for achieving 100% test coverage, as well as a corresponding set of executable test scripts. In addition, every part of your model can be tagged, and you can create coverage profiles for each tag in your model, enabling you to test different parts of your system with different levels of coverage. Test scripts can be executed within Test Modeller or exported into other products. Automated change management is also provided, and the framework can even “self heal” during test execution, allowing it to detect when something has changed, adapt, and keep your test(s) running. This enables highly resilient automation, particularly in regard to frequently changing UI objects.
Finally, for performance testing, Test Modeller integrates with Micro Focus LoadRunner, Apache JMeter, and Taurus. What’s more, it can implement performance testing actions from these frameworks as part of your existing model. Mobile and API testing work in much the same way, including integration with Appium, REST Assured, and the entire Parasoft stack.
Test Modeller’s most significant strength as a model-based test design automation platform is that is easy – and therefore quick – to use and to implement. For starters, it uses BPMN, which as a standard format will likely be familiar to your users, particularly nontechnical users such as business analysts. Creating your model is relatively easy: automatically creating it from existing test assets is, of course, the easiest method if those assets are available, but if not then recording user journeys and objects and building it from them is not difficult, and notably does not require any coding. Nested flows are handled elegantly, and the ability to overlay performance, API, and other types of testing on top of your model makes it much easier to implement those forms of testing alongside your functional tests. Several of these advantages should also help to enable collaboration. Consider, for example, that user journeys can be recorded by anyone, not just testers or developers, without requiring any expertise to do so. This means that, in principle, anyone in your organisation can contribute to your testing efforts simply by recording their usual interactions with your system.
What’s more, Test Modeller is highly effective at coexisting with an existing test automation framework. Being able to scan your code for existing functions and import them into your model is a particularly significant feature in this regard. Combined with the ability to export your test scripts back into your original test automation framework, or even into Git, it becomes easy to leverage the product to generate test cases and scripts automatically – thus saving a significant amount of time and effort – without otherwise altering your testing process. In addition, being built on VIP is a significant advantage, allowing Test Modeller to integrate with a long and highly extensible list of third-party products.
The Bottom Line
Test Modeller is an easy to use model-based testing framework that integrates extensively within the testing space. It is certainly worthy of your consideration.
Curiosity Software Test Data Automation
Last Updated: 12th July 2021
Mutable Award: Highly Commended 2021
Curiosity Software Test Data Automation (TDA) is a solution for test data management and, more importantly, test data automation. This means that it doesn’t just seek to help you create viable test data sets, but also to embed (and thus automate) the creation and delivery of those sets into your testing processes.
By itself, TDA provides a range of test data utilities, including data subsetting, data masking, and synthetic data generation, the latter of which is the most notable in this case. With Test Modeller, it can overlay onto a visual model of the system under test and act in concert with it to generate test data at the same time you generate your test scripts. With Curiosity Connect, the integration infrastructure underpinning Curiosity’s products, it can connect with a variety of environments and third-party products, and a partnership with Windocks provides options for containerisation and database virtualisation. Finally, Curiosity’s Open Testing Platform provides a means to capture, centralise and proactively deliver testing intelligence, and thus acts as an additional layer of automation on top of your testing processes, including test data management. In short, TDA is one part of an eminently complete and extremely automated testing solution.
“We found the software extremely flexible in allowing us to set up various techniques to automate our data generation. In fact we couldn’t find a use case that we couldn’t manage to cover. While the access to standard data sources was great, what most impressed us was the ability to access difficult mainframe data sources such as VSAM, IMS and DB2 and we were even able to generate data into a CICS program and an MQ queue. We haven’t seen that flexibility with other software.”
TDA offers a wide range of services through a web-based self-service portal (shown in Figure 1). This includes an extensible library of hundreds of synthetic data generation and data masking functions, a data subsetting capability, and various test data utilities, such as data cloning, data ageing, and data comparisons. Its synthetic data generation functionality, in particular, is highly sophisticated. For instance, it includes the ability to create clustered synthetic data for the purposes of AI or graph database testing, as well as advanced support for generating message data (including time series messages) by working backwards from your desired outputs using a solving algorithm. The product also provides a test data catalogue that centralises all of your test data related activities, including test data usage, requests for test data, and the fulfilment of those requests.
That said, the real power of TDA comes from its ability to work in concert with Test Modeller, as seen in Figure 2. Test Modeller allows you to construct graphical models that mimic your production environment, then leverage those models to automatically generate a set of easily maintainable and maximally covering test scripts. TDA adds test data to these models, meaning that whenever your test scripts are generated, they will gather whatever test data they need automatically. In other words, the combination of TDA and Test Modeller intimately marries test data with your test automation processes, enabling much more effective overall test automation. Note also that test data attached to Test Modeller is delivered “just in time” to ensure that it is always as up to date as possible when it is leveraged in your tests.
In addition, production messages, APIs, and databases can all be analysed to identify and visualise key characteristics and trends within your data. This analysis can then be used to ensure that your test data accurately represents said trends and characteristics. Moreover, this process is dynamic and runs in real-time, meaning that it can execute automatically whenever you create your test data. In this way, it can be used to ensure that your test data is, and remains, meaningfully representative.
Owing to Curiosity Connect – effectively an entire product designed to make it easy to build integration pipelines – underpinning Curiosity’s offerings, both Test Modeller and TDA benefit from a huge variety of prebuilt connectivity and integration options. For APIs in particular, you can import Swagger/OpenAPI JSON specifications, along with the endpoints they contain, to leverage in your models. Past that, Curiosity’s integration with Windocks (as of recently one of the company’s partners) is particularly notable for providing containerised database virtualisation that can be executed within TDA.
TDA has a number of features that separate it from its peers: it offers extensive synthetic data generation and competitive masking and subsetting (as well as a range of other test data utilities), making it ideal for either a solution driven purely by synthetic data or a hybrid solution involving both production and synthetic data; it embeds test data within your test design automation processes, providing the former with the benefits of the latter (reusability, combinability and so on); it creates, maintains, and delivers test data as part of said processes, enabling the automated delivery of up-to-date test data on the fly, and precisely when you need it; it ensures your test data is representative via trend analysis, and does so, again, at the point the data is needed; its extensive connectivity capabilities allow it to seamlessly integrate with your existing pipelines and toolchains; and to top it all off, it’s comparatively lightweight and easy to use.
In sum, it is an extremely effective tool for automating, and thus accelerating, the creation and delivery of your test data. This has obvious upsides, not the least of which is that it enables your testing efforts to much more readily keep pace with development, a perennial problem (especially) in an increasingly Agile world.
The Open Testing Platform is also worth mentioning as a method for making your testers more informed and efficient by automatically providing them with directly actionable information. Although it doesn’t speak directly to test data management, it certainly doesn’t hurt.
The Bottom Line
Test Data Automation is an innovative and effective solution that is not content just to manage your test data, but reaches further in order to automate that management. In doing so, it provides a very appealing value proposition. When combined with its partners (Windocks, in particular) it is capable of forming a solution that is not only highly complete, but that might even be considered best-of-breed.
Mutable Award: Highly Commended 2021
Visual Integration Processor
Last Updated: 9th November 2018
Mutable Award: One to Watch 2018
Visual Integration Processor is a .NET based rapid application assembly framework for integrating software. It acts as ‘software glue’, allowing you to very easily assemble existing applications and other software components into a single, automated business process or application. Its chief gain to efficiency comes in its ability to eliminate the need to write large quantities of generic ‘plumbing’ code that is normally needed to pipe software together, opting instead for a user-friendly, drag-and-drop flowchart model that is vastly quicker and easier to use.
Although VIP is a low-code product in the most literal sense – it dramatically reduces the amount of code you need to create software applications – it diverges significantly from much of the low-code market. Where many low-code products focus on customer facing applications, VIP instead emphasises its ability to quickly create and automate business processes. Moreover, it does so without being married to an all-encompassing Business Process Management (BPM) suite.
VIP is available on-premise and in the cloud. It is distributed in packages, with each package providing a ready-made set of connectors that allow you to easily leverage products and tools common to a particular use case.
“After evaluating a number of Robotic Process Automation platforms, the UK’s largest house builder decided to go with Visual Integration Processor to undertake their Digital Transformation as it was the only toolchain that was able to fuse workloads from legacy Enterprise IT platforms together with our modern Enterprise Resource Management platform.”
“We have found that VIP gives us the flexibility and the range of functionality to tackle any process our customers ask us to automate no matter how complex.”
VIP allows you to create software applications, including automated business processes, by building flowcharts. These flowcharts are created by dragging and dropping a) connectors to existing software and b) ‘core components’ (basic flow operations such as branching) into a model. This allows you to create sophisticated flows between your different software applications and data sources. An example can be seen in Figure 1. Flows in VIP can be exposed as self-contained components and reused in other flowcharts, allowing for nested flows. It is also possible to include loops in your flowcharts.
The various model components available have a variety of configuration options. Chief among these is the ability to detect variables exposed in any of your connected software components, allowing them to be leveraged and acted upon either by the model itself (for instance, as part of a branching decision) or another software component. Moreover, VIP keeps track of your data as it moves through your flow and allows that information to be accessed at any time. This can be helpful for setting up rules engines or predictive analytics that may be able to act on or derive useful insights from the movement of your data.
A variety of connectors are available out of the box, although the specifics may vary depending on your chosen package. This includes spreadsheets such as Excel and Google Sheets; APIs, including SOAP and REST (specifically, OData); popular data formats, such as XML and JSON; test automation, including Selenium and Parasoft; ‘ChatOps’ integration with Slack and Facebook; and a number of other popular products such as Git and JIRA. Additional, pre-configured solutions are available to enable chat bot integration with Slack, sentiment analysis, and integration with Eggplant Functional. The creation of connectors and solutions is primarily user-driven, and CSI promise to build any additional connectors or solutions that you need.
It is also possible to include software in your model even if it does not have a connector. This includes your own in-house and legacy software. Moreover, if the software in question is written in a .NET language, such as C# or Visual Basic, you can effectively create a custom connector by building the application and placing the resulting DLL file in a pre-specified location for VIP to access. For software where this is not possible, you can leverage test automation products (such as Selenium) to create scripts that automatically interact with your software, then include those scripts in your flowchart. These scripts interact with your software just as a user would, before extracting and relaying any relevant information back to your model.
There are two major use cases for VIP. Firstly, it allows you to easily and quickly create new software applications by stringing together existing software applications and products. Secondly, it allows you to automate your existing business processes, or create new, automated processes, by incorporating actions that would normally be done manually into a flowchart. For example, a very simple flowchart might automatically convert newly uploaded documents into a PDF format, where previously you were having to save each document as a PDF by hand. In this case, the flowchart only represents a small saving in cost. But across an enterprise, those savings can add up rapidly. In addition, VIP supports a model in which your business processes can be automated gradually, starting with the most mundane and repetitive tasks. You do not need to automate everything in one go (or, indeed, at all).
Both of these use cases are enhanced by the fact that creating flowcharts in VIP is easy and intuitive, even without a background in software development. Moreover, the visual models used by VIP are very easy to understand. This is helpful for enabling collaboration between developers and business users (for example, when designing a business process). Finally, it’s worth noting that VIP makes it easy to integrate new technologies into your business processes: all you need to do is add the appropriate connectors. This provides a measure of future-proofing that many organisations sorely lack, particularly in the current climate of extensive (and in some cases recurring) digital transformation.
The Bottom Line
VIP is a lightweight, easy to use product for assembling disparate software into a single application or automated business process. It allows you to automate as much, or as little, as you like, and can interface with a large variety of testing products, data types, and APIs out of the box. All in all, it is an effective point solution for automating your business processes. If that is your interest, we wholeheartedly recommend adding it to your shortlist.
Mutable Award: One to Watch 2018