Multitenancy and project management helps isolating and managing assets (such as Plans, Keywords, Executions, etc) throughout the application.
The main benefits of working with projects is the ability to serve multiple tenants and/or group of users with a single instance of step facilitating the organization of your work and improving security.
Except for administrators, user must be assigned to at least one project to be able to work with step.
A couple of predefined projects will be created automatically by step upon starting the controller:
The “System” project is designed to store step’s internal entities (for instance plans, keywords and scheduler tasks used for Housekeeping or self-monitoring). This way, internal entities and executions are isolated from business projects.
The “Common” project is a global project meaning that all entities created in it are accessible by other projects. It’s main purpose is to pre-populate step with our out-of-the-box keywords and predefined customization such as screens templates. You may add more global entities to this project or create your own project.
This special tenant is only available for admin users, selecting it allows administrators to see all entities across all projects but in a read-only mode.
Switching project is simply done using the project picker on the top right corner.
A project is simply defined by following 3 attributes:
unique name defining your project
the name of the user owning the project. Note that this field is only there for feature usage and is currently optional
if enabled all entities defined inside the project will be accessible from the context of other projects. This can be used for instance when reusing the same automation keywords to cover multiple applications and projects, defining global parameters or screen templates centrally…
Except for global administrators, step’s users must be assigned to a project to access it. Out of the box, following role exists in step.
grants read-only access, while preventing modifications or executions
grants most privileges required for defining and executing test plans
in addition to the tester rights it allows to define keywords, and to administer individual projects
grant all privileges
Management for global administrator
To administer your projects head to the Admin -> Projects view. There you will be able to
create, edit and delete projects
add users as members of the project
assign (move) entities from the current project to another one
Management for project administrator
Member of project with sufficient rights will be able to configure directly the settings and members:
Assigning entities from one project to another
Assigning entities from one project to another can only be done by global administrator. The source project is always the project currently selected, you then click on the assign button next to the project which is the target:
The wizard will then guide you though the process. Note that you will have to select one single type of entity like plan, keyword, parameters… (assigning all entities from one project to another in one go is not supported). Following options are available:
“Select entities to assign”: allows to manually select the entities from the selected type
“Assign all entities”: will assign all entities from the given type
Assign recursively: Allow to reassign entities recursively (for instance when moving plans recursively, all keywords and resources references by the plans are as well reassigned to the new project)
Note: the process always start by a simulation which will tell you how many entities are about to be reassigned and ask you for confirmation.