In this page you will find some of the most frequently asked questions our customers and trialists have when using Test Modeller. This page is being updated on a regular basis with new questions and answers.
Each question and its corresponding answer have been split into three broad categories, Usability, Technical, and Compatibility, which can be viewed and sorted accordingly.
Usability contains questions that focus on the logistics of using Test Modeller.
Technical contains questions relating to the functionality of Test Modeller, and how to take advantage of each feature.
Compatibility consists of questions around the connectivity of Test Modeller into existing systems and CI/CD pipelines.
Note that each category assumes some prior knowledge of Test Modeller.
If you have any questions that do not appear on this list, please contact firstname.lastname@example.org, or, your Curiosity representative.
How can I add the rest of my team to my workspace?
To add a new user to your workspace from the Test Modeller dashboard, navigate to Workspace -> User Management, and invite a new user to the workspace. Note that the new user will need to have an existing Test Modeller license, if you need another license approved please contact your Curiosity representative.
How do I let the rest of my team edit my project?
From the Test Modeller dashboard, navigate to Projects & Releases. Here you will see all the projects within your workspace. Click the edit button next to the desired project, and select 'Global'. This will make the project visible to everyone in the workspace.
How can I implement Naming Conventions within Test Modeller?
This can be done manually by editing the tag of each test path after test generation, with each test path representing a test case. To do this, click the cog next to each generated test in the Test Modeller canvas and edit the tag utilising your required Naming Convention. An automated approach here can also be taken within the Coverage Profile settings, various naming fields can be specified here. Our recommended approach is to utilise both methods, specify required naming fields and customise the tag further after generation. Note that each automatically generated test path tag will include the name of the Coverage Profile at the beginning.
My workspace has expired, what do I do now?
If you are a trialist, please contact us at email@example.com so we can talk to you about licensing and extending your trial period. If you are a customer, please contact your Curiosity representative and we can take the appropriate action.
I am having trouble configuring one of my connectors, what resources are available to help me through this process?
We are adding new connectors and integrations on a regular basis, most of these integrations and connectors have videos explaining how they are configured and the functionality they provide. You can find these videos here:
. If you cannot find a video for your integration or connector, please contact: firstname.lastname@example.org
I am new to Test Modeller, what are some good tutorials to start with?
There are two tutorials we recommend our new users follow. The first, Modelling 101, provides a walkthrough of the core features of Test Modeller and a broad introduction to the concept of Model-Based Testing. The second, Java Selenium, tutorial utilises our Java Quickstart automation framework to enhance your Test Modeller capabilities, building upon skills learnt during Modelling 101. Both tutorials, along with all of our other tutorials, can be found here:
How can I build more complete models, faster?
The wide range of accelerators, including web scans and model imports, are designed to decrease the time required to build comprehensive models of the system under test. To find out more about which of our accelerators are compatable with your system, contact email@example.com, or your Curiosity representative.
Can I tag/label the models and the test cases for classification purpose?
Within Test Modeller implementing Naming Conventions is simple, this can be done manually by editing the tag of each test path after test generation, with each test path representing a test case. To do this, click the cog next to each generated test in the Test Modeller canvas, and edit the tag utilising your required Naming Convention. An automated approach here can also be taken within the Coverage Profile settings where various naming field parameters can be specified. Our recommended approach is to utilise both methods, specify required naming fields and customise the tag further after generation. Note that each automatically generated test path tag will include the name of the Coverage Profile at the beginning.
How can we manage versioning of different models between each software release?
Test Modeller has a versioning engine built in, from the base version of your model and application (1.0) best practice is to simply implement any changes to your application within your model, then match up the models you are saving to the version number of each release.
I can't open the VIP Server Controller (VIP Executor), what do I do?
If you are unable to open VIP Server Controller, first you should open VIP and check if you have a license applied (Help -> Enter License). If your license has expired, or one has not been applied, you will need to contact your Curiosity representative for a license.
What Version Control is built into Test Modeller?
At the model level there is a versioning engine built in, allowing users to roll back to previous versions and view any changes that have been made between versions.
I have download the VIP Server package, there are three server options; AUTO, Hopper and Rest. Which ones do I need to install and setup?
For use with Test Modeller for automation, AUTO server is required as this is where all the jobs triggered in Test Modeller will be executed, you will need to start this server up everytime you go into Test Modeller/ have it constantly running on an external machine. Hopper is predominantly used for Test Data Automation and test data jobs triggered in Test Modeller. Rest is used for dynamic forms, this is rarely required. This video will show you how to set up all three, you should pick which ones to set up that are most relevant to you: https://www.youtube.com/watch?v=h9Ib0JbA1DM
What is the best way to move blocks on the model around?
Grabbing a block on the Test Modeller canvas by its name allows you to move the block around on the canvas, grabbing a block anywhere else allows you to draw arrows and link it up to another block. Alternatively, if you want to move a lot of blocks around at the same time, you can select one of the options from the 'Relayout' menu option.
What server can I use to generate my automation?
You can set up your own private or shared server following this article in the Knowledge Base:
Alternatively, you can use the Community Server that comes pre-installed when you login.
I need to add a custom automation action into my model, how do I do this?
To add custom automation objects, navigate to the relevant module collection from the Test Modeller dashboard. From here add a new function and select custom code from the Function Type dropdown. This can be used to implement custom actions, for example switching a tab in Selenium.
Why is my test case and automation code generation on the community server not working?
Sometimes our community server needs to work its way through a large backlog of jobs that have accumulated over a period of 2 to 3 months, please try to generate tests and code in an hour or so. If the problem persists, please contact: firstname.lastname@example.org
How can I prevent unnecessary testing of a non-changing feature after a new release?
Upon the release of a new version of the system under test, Test Modeller best practice is to first create a new version of the model that replicates the system, then update this model to accurately map the functionality of the system. Now you can begin to overlay 'New Feature' and 'Existing Feature' filters onto the respective nodes. To do this, click on the Filters button under the Test Generation and overlay the requisite filters. After this you should set a new coverage profile for the new version of the model, within the settings here you will be able to specify the extent to which each filters will be tested. Set 'New Feature' to Exhaustive, and 'Existing Feature' to Ignore, this will prevent unnecessary testing of non-changing components.
How can I import my existing code-based page objects into Test Modeller?
In your Workspace, navigate to Models from the Test Modeller dashboard and you will see an option, in the upper right-hand corner, to import code-based page objects, along with options to import objects from alternative repositories. Select a .zip file that contains the target page objects in one of the following file types: .java, .js, .cs, .py, .qfl.
How do we connect different models to create an end-to-end test cases?
Models created by users can be easily integrated by embedding existing models using sub processes, this can string together either a UI model with another UI model, a UI model with a Database model to define complex test data combinations, or UI models with API endpoint models. This creates an extensive end-to-end model of the system under test, from which the perfect set of test cases can be generated.
How tight/loose is the coupling between the model and the automation framework? Can one implement the framework their own way yet derive the benefits of syncing with the model?
Any model you have created and automation code you have generated will automatically synchronise with the automation framework you have defined within Test Modeller. To keep your models, and any code you are generating, up to date with your framework, you just need to update it within the Test Modeller configuration section.
I have an error when I am trying to generate automation, the log file says there is no Git profile linked, how can I link a Git profile?
There are two things to check that may be causing this issue. Ensure that you have downloaded Git for your operating system and have a licensed copy of Microsoft Excel installed and activated on your machine.
I am getting an error whilst trying to save a model, how can I save?
Perform a hard web browser reload and clear the browser cache, this should allow saving.
How can the models we create in Test Modeller handle frequent UI changes in our application?
All the page objects that exist on your application that are used in your model are kept in a central repository within Test Modeller. This means that in order to maintain the models and keep them up-to-date with your application after a UI change, all that is required is to update the central page object repository. Once this is updated, you can use the new page objects to update the model to replicate the new functionality, whilst any object changes are automatically synchronised across the models.
What are some of the most significant modelling and automation challenges Curiosity have faced in past projects?
Some of the largest challenges and blockers to Test Modeller implementations that we experienced and overcome include: defining business rules, poor existing CI/CD pipelines, instable applications, lack of documentation for systems under test, no existing automation or automation assets, existing poor automation. If you would like to find out more please contact your Curiosity representative.
Can Test Modeller handle automation non web-based applications, like desktop apps?
The general rule of thumb for Test Modeller's automation capabilities is that if your framework code based, then we can ingest the framework into Test Modeller and subsequently generate tests and allocate data.
Does TestModeller also use AI/ML in any way?
The answer is that some people in the industry would say yes. We have intelligence that can identify when page objects are invalid then use the alternative identifiers to repair it. Additionally, when a path fails we have intelligence that can generate a specific test suite to address the failed test case to fully look into the problem. Test Modeller also has an intelligent test generation engine that enables testers to minimise the number of tests that are generated whilst maximising the coverage of those tests. Advanced techniques can be applied here to tailor the generated test suite to meet the exact needs of the sprint.
How can I set up custom data rules for valid and invalid data combinations?
In either of the following two places: 1) Manually at the model level (good for one off cases), create a reusable data rule in the configuration engine for a set of data options, here you can overlay what you want (static or dynamic) and reuse it. 2) Use the data rule when you select to bring in a new automation object into the model.
How can we set up Test Modeller so that we can generate different amounts of test cases from a given model?
Within Test Modeller you can have different criteria you can set to generate different numbers of test cases, at a basic level this is the Low – Medium – High – Exhaustive coverage ‘range’ you can set in the coverage profile. In more advanced cases you can set feature tags on the model to drive different levels of test case generation.
How does test execution work with my GitHub connector and a VIP Server that is hosted on a virtual machine?
Test Scripts are generated by Test Modeller and, using the GitHub connector, are automatically pushed into the required automation framework that has been set up in a GitHub repository. On the virtual machine that hosts the VIP Server that has been selected for the test executions, you must install GitHub and clone that repository onto the machine. This means that whenever you generate tests, they are automatically pushed into the cloned repository on the target virtual machine and executed by the VIP Server that is hosted there, with run results fed back into Test Modeller.
What does Test Modeller commit to Git/Source Control?
It is just the page objects and test cases that are being committed to GitLab. There is no need to commit the whole framework, as the framework already exists within your GitLab repository and any edits to the framework should be made away from Test Modeller. We wouldn’t recommend uploading the testing listener to Test Modeller, and actually there is no provision to commit that file to GitLab from Test Modeller. Test Modeller only comes in at the ‘top level’, i.e we don’t do anything with the underlying configurations, we just generate code for test cases and page objects/function libraries and then commit those files accordingly.
How to use Test Modeller with an existing automation framework?
Check out Section 9 of this tutorial series, it provides written documentation with a video: https://testmodeller.io/tutorials/selenium-java/ . In short, Test Modeller can be used with any code-based automation framework after a one time effort to integrate the framework with Test Modeller has been undertaken.
Can a user story be automatically converted into multiple test cases without any manual intervention?
We can convert a written user story automatically into a model, it does need some manual intervention to augment the initial import to create a large end-to-end model with significant variation, in our experience in the field we’ve seen that this technology is very rare. Alternatively, if that user story is designed in a BPMN style, then we can import that directly into Test Modeller. Here is our product page for that solution: https://curiositysoftware.ie/resources/requirements-driven-test-automation/
What is the recommended browser for Test Modeller?
Google Chrome is recommended, however Test Modeller will work with all the major browsers. Note that the Test Modeller browser extension is only available on Google Chrome.
How can we use Test Modeller with our existing automation framework?
This is easily configured within Test Modeller. From the dashboard navigate to Profile -> Configuration. Here you can add a new framework or edit an existing one. Once this is done, you can generate tests ready to be used in your framework.
What CI/CD pipeline tools does Test Modeller integrate with?
A full list of Test Modeller integrations and connectors can be found here:
How can my organisation access Test Modeller, via an on-premise install or on the cloud?
Both options are available. After a license is purchased we can install on-premise at your organisation, or you can access Test Modeller on the cloud via a web browser (Google Chrome is recommended). Trial accounts will usually access Test Modeller on the cloud, however, on-premise trials are available on request.
What requirement management systems can Test Modeller connect to, and how is the mapping between requirements and model maintained?
Users have the ability to export generated test cases to a range of test case and requirement management tools, including; JIRA, Excel, HP ALM, Xray, Zephyr, Micro Focus Octane, TFS. See the full list of integrations and connectors here:
if you are a customer and need help configuring one of these connectors, contact email@example.com
What export/import formats are supported like json, xml, etc.?
Some of the file types that can be imported into Test Modeller include: .java, .js, .cs, .py, .qfl, .rxrep, .xml, .csv, .vsd. Note that this is not an exhaustive list and we may support importing/exporting your file type, please contact support to find out more: firstname.lastname@example.org
All the features are available only online or are there certain steps that could be performed offline too?
If you are accessing Test Modeller using a cloud instance, you will need a full internet connection to be able to load the application and perform any jobs. If you are using a locally installed instance, you do not always need an internet connection. You just need to make sure your VIP server is running if you want to execute any jobs. However some pieces of functionality will require an internet connection.
How can I automatically import page objects and custom automation actions?
To automatically import compatible page objects and automation actions, follow the instructions in this video:
. If your files are not compatible, to manually add a custom automation action you will need to create a new function within the module collection () and you can embed your custom code here (watch the first part of this video:
). To manually add a page object, you need to first create a new page object within the object repository (listing out identifiers, parameters and data rules), and then add a new function in the module collection, linking it to the new page object within the object repository via the function type dropdown.
Within Dynamics 365 applications there are dynamic and complex page identifiers, can we use the Test Modeller scanner to pick out these dynamic identifiers?
Yes, the Test Modeller scanner has the ability to pick out the most complex identifiers, and will automatically find, and rank static identifiers above the dynamic identifiers often found in Dynamics 365 applications.