Release notes
Minor release 26.2 Upcoming, target 01/11/2024
Enhancement
- Analytics:
- Optimizations for faster and smoother analysis of synthetic monitoring results (schedules) over large time range
- UI/UX:
- Improve display and control of screen inputs of type ‘checkbox’
Bug fixing
- Devops/Automation Package:
- Isolated executions triggered from CI fail after 1 hour of execution
- Execution from artifact repository fails for Java keywords
- UI/UX:
- Plan editor does not allow to set dynamic names for call keyword and call plan components
- Selecting a node in the plan editor highlight the whole tree
- Multiple screen inputs with the same ID but different activation expressions are not supported anymore
- Analytics:
- The time to live per time series resolutions defined in the housekeeping settings impacts the queries even when the housekeeping is actually disabled.
Minor release 26.1 18/10/2024
Enhancement
- Core:
- CLI checks now for version mismatch when operating a Step cluster
- Improves error reporting for executions and agent provisioning errors
- Plugin:
- JMeter: Support passing of properties to JMeter Keywords
- UI/UX:
- Allow table filtering by empty/null values
Bug fixing
- Core:
- Performance issue when loading the execution list on instances with a high number of projects
- Performance issue loading plans for setups handling many plans imported from external repositories
- Execution broken for plans that have recursive calls to themselves
- Isolated execution of Automation Package from artifact repositories leak resources in bin folder
- Unexpected commons-io version included in the distribution
- Plugins:
- Azure Devops: Tree selection/scrolling is broken when selecting bookmarks
- Alerting: System and Projects notification presets views are displayed even when plugin is disabled
- UI/UX:
- Loading indicator disappears while application is still loading
- Overview chart legend is missing on the analytics dashboards
- Browser back doesn’t always behave as expected
- User is stuck on the upload modal when wrongly trying to add a resource while in [All] tenant
Major release 26.0 - codename “Eiger” 30/09/2024
This section provides a comprehensive list of new features and bug fixes. For an overview of the key highlights in this release, please visit the Introduction to Step 26 page.
New features
DevOps / Automation as Code
Automation Packages
- Support for all keyword types – The wide range of integrations supported by Step are now available in Automation Packages. Read more
- Modular package descriptors – Use fragments to define automation packages more efficiently. Read more
- Tag plans with categories – Add categories to the plans within Automation Packages and use these categories at execution time for filtering. Read more
- Store Automation Packages in artifact repositories and trigger their executions in Step using the new CLI. Read more
- Rerun isolated executions of Automation Packages.
- Direct link to the Automation Package schema in the UI. Read more
- Option to automatically wrap Automation Package Plans into TestSets. Read more
- Support for dynamic node names.
- Support migration tasks for the Automation Packages - Technical feature that will enable backward compatibility with older Automation Package versions.
Step CLI (Command Line Interface)
- New CLI for Automation Packages. Read more
Core
- New agent provisioning: the agent provisioning engine introduced with Step 25 has been significantly improved and offers the following key improvements:
- Support for custom images and resource templates (StatefulSet, ConfigMaps, etc.)
- Enhanced reporting of provisioning logs
- Full support for all Step agent types: Default (Java, Cypress, Selenium, Playwright, etc.), .NET, Node.js
- Improved provisioning performance
- Read more
- Notification Presets: this release introduces notification presets, a more flexible approach to defining Webhook and E-Mail notification content. Read more
- Support Typescript in Node.js agent
User Interface
- Support arrays and objects for inputs in call keyword form
- Parameters with groovy expressions Read more
- Text editor for parameter value-field
- Improved workflow for the creation of multiple parameters Read more
- Simplify definition of parameter activation expression with a wizard
- Selection of test cases on Schedule configuration dialog
- Filter feature for table dropdown filter
- Split Admin Settings into project settings and admin settings
- Info banner to display additional information for new features
- Support for long descriptions in Plan nodes
- New automation package columns on parameters table
Analytics
- Support multiple resolutions. Read more
- Improvements of the analytics dashboards:
- Persist analytics filters in session
- Support multiple throughput units
- Customizable percentiles in charts and tables
- Ability to save rate unit
- Read more on the Analytics page
- Added new metric for execution duration
Integrations
- Improve JMeter log attachment to reports
- JMeter Keywords now load
system.properties
anduser.properties
Miscellaneous
- Step API - support map as keyword input
- Add a dedicated right for bulk operations in addition to the specific ones
Minor release 25.5 13/09/2024
Enhancement
- YAML support dynamic node names for plans
- Improved UI/UX for boolean screens inputs
- Support Webhook gateways in alerting rules
Bug fixing
- Selecting all test cases only select the visible ones
- SQLTableDataPool does not support complex SQL queries (such as JOIN clause)
- Name is not always saved when creating new entities
- The edit button of the plan name field in CallPlan controls doesn’t work
- Exporting plans as YAML fails for plans containing empty keyword input’s values
- The default value for custom screen inputs of type Text, overwrites the inputted value upon reconfiguration
- Link to Incident Root cause is broken on the Incident details page
Minor release 25.4 16/08/2024
Enhancement
- Improve Bookmarks management and handling of filters in multitenancy context
- Add automation package columns to parameters table
- Add project selection to the repository view when accessing it from an external link (i.e. QC)
Bug fixing
- ActivationScript for the Screen inputs doesn’t work
- Sorting execution measurements by duration sorts wrong
- Enum-based Keyword inputs no longer shows a dropdown to select values
Minor release 25.3
Enhancement
- Introduce new dedicated rights for execution bulk operations
- Improve support of arrays and objects for Keyword’s inputs
Bug fixing
-
Core and plugins:
- Assert metric rolling windows is imprecise
- Execution initialization contention (due to GroovyPool Mbean registration)
- Bulk restart should run executions for the user triggering it and not on behalf of original user(s)
- Export all plans also export hidden plans (plans created from external repositories)
- Exporting a single hidden plan does not make it visible
- Schedule CRON exclusions in YAML ignored when a single exclusion is defined
- Failed assertion using the Assert control are not reported as errors
- Cypress projects created on Unix are not supported
-
UI/UX:
- Analytics:
- Auto-refresh clashes with filter changes on analytics dashboards
- Some of the analytics dashlets do not display units
- Execution analytics dashboard incorrectly shows execution filter
- Adding table dashlet does not add metric’s filters
- Chart filters fails to be saved after the user perform changes on them within an Analytic dashboard
- Plan editor:
- Name column is duplicated on “Other plans” table of plan editor
- Copy/Paste plan nodes between tabs doesn’t work
- Others:
- Tooltip may be shown unexpectedly
- UI customization: Custom images are not displayed
- Login with another user does not properly update the project list
- “Show in plan” link in execution view does not work correctly
- UI Filter may throw regex exceptions while typing filters
- AutoManageIncidentAction not showing up in UI if compoundKey is not specified
- Analytics:
Minor release 25.2
Enhancement
- Support arrays and objects for inputs in call keyword form
- Step Keyword API: support map as keyword input
Bug fixing
- Isolated execution of Automation Packages on Step persist entities (impact limited to schedules and alerting rules)
- Missing delimiter option in Dataset and ForEach for CSV source
- Keyword long output are converted to integer
- Azure devops project switch does not reload the suites
- Analytics:
- Cannot sort by average in the statistic table
- Unit should be displayed for all columns of the statistics table
- Alerting Rules view: Add Automation Package column
- Accessing Step from a link or URL doesn’t change the tenant automatically
Minor release 25.1
Enhancement
- Analytics
- Support multiple throughput units in charts
- Dashlet can inherit a subset of the global filters
- Improved filter pickers
- Performance optimization with Web client caching
- Constraints on colors to avoid invisible series
- Step parameters: add text editor for parameter value-field
Bug fixing
- Analytics:
- Compare mode for running executions might show outdated data
- Cannot set or edit the dashboard description
- When switching to advanced OQL filter, the filter is not applied
- Thread group chart shows no data when setting some of the global filters
- TPS statistics should be rounded rather than truncated
- Plan editor:
- CallPlan control is not displayed correctly
- General UI/UX:
- CRON-validator in Step UI does not accept all valid expressions
- Releasing the mouse button on the left menu unexpectedly change the view
- Bookmark is not opened when clicking in manage bookmarks view
- Bookmark tables are requested more than once
- Sleep control and Automation package: the Unit is not displayed correctly in Step UI
- Miscellaneous:
- Grid file manager break execution of local keywords (i.e. keywords executed on controller)
- Some controller service exception are not logged
- Step @Plan annotation cause parsing errors if a method contains the word “Assert”
Major release 25.0 - codename “Niesen” 17/05/2024
New features
Cloud - Agent Autoscaling
Step 25 introduces Agent Autoscaling to take advantages of cloud setups based on Kubernetes. With the new agent autoscaling, the required number of agents is evaluated upon start of plan executions and automatically provisioned. Agents are automatically de-provisioned as soon as the execution ends.
DevOps / Automation as code
The feature coverage of Automation Packages has been expanded further. Following features are now supported as code:
- Step parameters can be fully defined as code including activation expressions. For example, define all variables and their values per SUT environments, then execute your Automation Package targeting a specific environment by using one single execution parameter.
- Cypress Keywords can now also be defined as code within Step Automation Packages to enable DevOps load testing and synthetic monitoring with Cypress.
Analytics
- Step Analytics dashboards are now fully customizable. All features supported until now only for the prepopulated dashboards are now available for any custom dashboards such as the comparison mode and the drill-down capabilities. New features are introduced too:
- Duplicate any dashboard including the prepopulated ones
- Share Step analytics dashboards by URLs, all important configuration such as filters and time range will be included
- Prometheus plugin: metrics exposed to prometheus includes fully qualified names in addition to the technical IDs improving the integration with external analytics tools such as Grafana
UI/UX and core functionalities
Table enhancements
- New column customization
- The Screen Template functionality has been split into entity models and table settings allowing to easily customize tables per user and/or project.
- Table filtering and sharing: share now any of the Step table views, including filtering, simply by sending links
Plans editions and features
- Plan editions:
- Improve plan tree interactions and components selections
- Improve inputs and script editors
- Dataset Control: Retrieve chunks of Data in DataSet
Miscellaneous
- Execution list: Improve displayed columns and filtering for better overview and search capabilities
- Improve and align time and duration settings / inputs across the Step UI
- Custom bookmark of specific pages
- License usage / state overview is now directly available in Step UI to monitor license usage and quotas state
- Export or import schedules definition
- Step REST API: Optionally disable object enrichment of execution in execution services
- Alerting: Improve rules definitions
Bug Fix
- Step maven plugin may use an incorrect project: (when using same credentials and invoking the plugin concurrently for different projects)
- Automation package updates may create deadlocks especially for packages containing multiple schedules with assertion plans
- Test cases overview don’t display the current operations anymore
- Plan edition:
- Ctrl+C event intercepted by tree component in plan editor
- Issues with operations on multiple nodes in visual plan editor
- Alerting / Notifications:
- Incorrect filtering of rules on Incident Events
- Inconsistent behavior of EmailNotificationGatewayConfiguration regarding subject and content
- Notification_Send (Library keywords) sends notifications without title and body
- Bulk delete executions - improve handling of retained executions
- Keyword API:
- An exception is thrown when trying to use optional default input values
- Session should support AutoCloseable objects
- Minor UI bugs:
- User management - canceling user role will still assign rule
- New password dialog is sometimes shown twice
- Alerting Rule is deleted regardless of where you click
- Artifact repository does not exclude methods properly
- Opening/editing global entities if not a member of the global project is not handled properly
Migration notes
For most users and setups upgrading from Step 24, no manual migrations tasks are required, but the following should be considered:
- Screen template functionality has been split into entity models and table settings
- Sleep controls time unit has been aligned with other components. For plans using dynamic expressions to define the time unit of sleep controls, an error will be thrown during the migration, these plans will have to be updated manually.
Read more on the migration page
Minor release 24.6
Bug fixing
- Plan editor:
- Navigating from a composite keyword to a called sub plan is broken
- WaitForEvent form is missing timeout input
- CRON-validator in Step UI does not accept all valid expressions
- Alerting and notifications:
- Alerting Rule is deleted regardless of where you click on the confirmation dialog
- Notification_Send Keyword sends notifications without title and body
- Inconsistent behavior of EmailNotificationGatewayConfiguration
- Modification of global entities from another project should not be allowed
- Cannot open global entities if not a member of the global project
- Can’t unlock locked plans
- Grid file manager break execution of local keywords (i.e. keywords executed on controller)
Minor release 24.5
Bug fixing
- Analytics: Time range selection using the date picker selects previous day
- Alerting: All rules are evaluated for Incident Events disregarding the tenant context
Minor release 24.4
Bug fixing
- An “anonymous” user is wrongly created when starting Step
While this has no functional nor security impact, it consumes one user from the license. The user must be manually removed when upgrading from Step 24.1-3 - Few user actions are broken when setting a custom web context root (such as marking an execution as retained…)
- Visual plan editor: “Ctrl-C” copy the plan node instead of selected text
- Skipped nodes are still saved when the option to only save failed execution nodes is enabled
Minor release 24.3
Bug fixing
- Analytics: charts doesn’t reflect correctly the table selections
- Plan visual editor: show plan as “YAML source” is not working for complex plans
- Oryon plugin: execution of Oryon keyword is no longer working
- Housekeeping: deletion of time series and measurement data is slow with PostgreSQL
- UI/UX:
- Deleting a user do not refresh the user list
- ForEach start field displays the value of the end field
Minor release 24.2
Improvements
- Automation Packages
- Improve update of Automation Packages while executions based on it are running to avoid inconsistencies:
- Queue updates of an Automation Package when executions depending on it are running
- New maven plugin async configuration to avoid waiting on queued Automation Package updates
- Automation Package descriptor support CRON exclusions for schedules
- Improve update of Automation Packages while executions based on it are running to avoid inconsistencies:
- UI/UX
- Customization of the report tree pagination in user preferences
Bug fixing
- Automation Packages
- Plan created from Automation Packages does not show Keyword input correctly
- Keyword schema are not supported
- Time series
- Ranger not scaling correctly when resizing
- Custom resolutions for RAW measurements throw errors
- Failures metric by ‘ErrorCode’ is broken
- Table display truncated names
- Core
- Schedules not recovering from initialization errors
- Poor performance of the execution report table when filtering by status
- UI/UX
- Adding / removing table screens require page refresh to reflect changes
- Bulk enable/disable of nodes in visual plan editor not working
- After moving a component under an “Echo” component the “Echo” will disappear
- Changing the execution id directly in the url does not refresh the tab anymore
- In the monitoring view, schedule entity are marked as belonging to the wrong project
- Filtering start / end time in execution details view uses wrong timezone
- Tenant url parameter is ignored when copy/pasting into another browser
Major release 24.1 - codename “Bernina” 31/01/2024
New features
DevOps / Automation as code
Step 24 introduces a completely redesigned version of the Automation Package. Based on the Automation as Code paradigm, the new Automation Package extends Step with DevOps-native functionality, allowing to maintain application and automation code in tandem, and bringing powerful automation capabilities to DevOps pipelines, as well as simplifying Step’s own usage and maintenance.
Automation Package
All features related to DevOps and CI/CD integration have been merged in the new Automation Package for native and consistent support of the Automation as Code paradigm:
- The code of Automation Packages is stored in the version control system, along with the code of the actual application to automate
- The Automation Package is built by the CI/CD pipeline together with the application itself
- Automation Packages cover the main automation assets of Step such as keywords (automation scripts), execution plans, schedules, assertions and alerting
- Automation Packages currently support Java-based automation (Playwright, Selenium, etc), JMeter and K6. The coverage will be extended to all supported automation frameworks in the next release
Step maven plugin
With Step 24 the Step maven plugin previously enabling CI/CD integration is now fully part of the DevOps module and serves as Command Line Interface (CLI) for all operations related to Automation Packages:
- Package automation assets
- Upload the automation package directly to Step and execute the contained plans in an isolated context, the results can directly be retrieved and evaluated in the pipeline
- Deploy the content of an automation package to Step, thus making available all contained keywords, plans, etc., and enable the contained schedules
IDE integration
- The integration with IntelliJ and other IDEs for development of Automation Packages is provided by the new YAML descriptors
- The Step runner has been moved to the DevOps module and natively supports local execution of Automation Packages
Alerting
Step 24 introduces a new incident management component, integrated with a new alerting mechanism that supports the flexible definition of rules to determine reactions to various execution or state-related events (e.g. open/close incident, send mail etc.)
- Detect problems and automatically manage incidents
- Out of the box incidents are automatically raised for failing schedules and resolved whenever they pass again
- Alerting rules can be defined to customize when incidents should be opened or closed and which action shall be taken when such events occur
Plugins
- .NET agent is now based on .NET 8
- Grafana K6 keywords improvements:
- optimized the processing of K6 reports on Step agent (memory usage)
- allow inputs to override default environment variables
- add all keyword properties to K6 environment variables
Analytics
- Drill-down from charts data point to the underlying execution report
- Create custom analytics dashboards tailored to your needs
UI/UX and core functionalities
- Schedules:
- Set schedule exclusions to avoid executions during maintenance windows, bank holidays…
- Use the new CRON wizards to easily define CRON expressions
- Force the interruption of executions waiting on keyword call completion (currently only K6 keywords are supported)
- Lock plans to prevent accidental changes
- Filter execution list by time range
Miscellaneous
- Grid file manager automatic cleanup for controller and agents
- Support API token for event broker keywords and controls
Bug Fixing
Analytics
- Response times measurements and other metrics are not project aware
- Execution metrics are emitted for the assertion of schedules
- Minor UI overflow bugs
Miscellaneous
- Exception when bulk deleting a large number of executions
- Missing string representation of error in the execution CSV exports
- Missing global filter on plan editor components tables
- Some incompatibilities with firefox (Spinning wheel, tenant switch)
Migration notes
For most users and setup upgrading from Step 23, no manual migrations tasks are required, but the following should be considered:
- The existing maven plugins have been refactored into a single open source plugin compatible with all Step editions: step-maven-plugin
- The Java Junit Step runner has been refactored for Step automation packages which implies some changes of behaviour
- Response times and other measurements are now project aware, analytics for former executions might not display all data, they should be opened in the “All” tenant
Read more on the migration page
Minor release 24.0 (skipped)
Note: Open source maven artefacts with version 3.24.0 (Step 24) were wrongly published, they are the same as version 3.23.0 (Step 23). The Step 24 release starts with Step 24.1
Minor release 23.3
Bug fixing
- Dotnet agent error when passing input to keywords
Minor release 23.2
Bug fixing
- K6: technical error when the additional parameters in the command line are wrong
- Plain text plan cannot be renamed
- Ctrl-F shortcut missing in plain text plans editor
- Cannot run a plain text test set from the plan list
- Test case selection filters for test set ignore newly added test cases
- Execution in state “IMPORTING” are shwon with a failure icon on the executions list view
Minor release 23.1
Bug fixing
- Composite Keyword sometime execute an empty sequence
- Analytics: Incorrect diff in and incorrect TPH in statistics table
- Notifications:
- Custom webhook payload does not stringify binding values
- Missing execution status for failed event notifications
- Plan visual editor
- PerformananceAssert control is sometimes missing the name input
- Missing driver class field for Foreach and Dataset controls using JDBC source
- Edit FunctionPackage: original resource removed when cancelling update
- Function importer does not correctly import schemas with non-ASCII characters (Umlauts etc.)
- Import Step archive from EE to OS is broken
- Slow housekeeping for time series
- Yaml Plan doesn’t support For and ForEach control properly
- Access Tokens cannot be saved as protected parameters when the encryption manager is activated
- The spinning wheel sometime goes below some ui components
- Exporting protected parameters warning is hidden
Major release 23.0 - codename “Piz Palü” 13/10/2023
New features
UI/UX improvements
- Introduction of the Step Wizards to create playwright and cypress load tests in a few clicks
- Overall improvement of the table views
- Move entities to different projects directly from the individual table views
- New filter to hide/show global entities
- Bulk selection now available for all entity list
- Protection of parameters can now be enabled for any parameter
- Easily define keyword’s schema in the UI thanks to the new schema editor
- Improvement of the UX for interactive execution
- Project selector can now be filtered
Plan and control flow improvements
- Allow more assertions with the Assert control
- Simplify reading keyword output syntax in plans
- Add versioning of Keywords in addition to plans and parameters
Analytics
- Compare analytics results, for instance between 2 executions
- Browse raw measurements to discover custom attributes for advanced analytics
- Add filter pickers to simplify the selection of execution, plans and other entities
- Configure graph resolution
- Configure displayed columns in the statistics table
See more on the Execution reports and Analytics
DevOps
- Write plans as code with the new Yaml plans with your favorite IDE
- Support of keyword package dependencies in Step maven plugin
Access management & security
- OpenId Connect:
- extract user and role information from both access and id tokens or from the userInfo endpoint
- Support JWKS without X.509 Certificate Chain
- Support State parameter for OIDC authorization code flow
- Implement API keys list and manual revocation under user preferences
- Enable HTTP Strict-Transport-Security when the controller is setup with SSL
- Possibility to restrict supported Cipher Suites
Plugins
- New and enhanced plugins for Synthetic monitoring use cases:
- Introduce assertion of scheduler task for cross executions assertion
- Notification plugin improvements:
- Add error summary and more detailed information to the notifications
- Support multiple recipients in email notification subscriptions
- New keywords plugin for Grafana K6 and Silk Performer plugin for running K6 scripts and Silk projects with the benefits of Step
- Cypress plugin enhancements
- Pass keyword inputs to Cypress keywords
- Cypress keywords can now run in parallel on the same agent
- Execute keywords in your own docker container enabling automating any client context or application
Miscellaneous
- Improve performance when using postgresql as Step database
- Restrict running execution on behalf of another user with new right
Bug fixing
UI/UX
- Scheduler settings don’t show proper error messages for missing right
- Find usage: unable to open plans from another project
- Keyword output with nested json not properly displayed on “Keyword calls” table
- Selected test cases in the execution view are deselected on refresh
- Unable to move tree node to the end in visual plan editor
- Incorrect errors displayed during the edition of the housekeeping CRON expression
- Scheduler list not updated after switching state of a task
- Click add mask is disabled without kw-write right
Miscellaneous
- Execution result not set for vetoed executions
- Link from error report to execution steps is broken with postgresql
- Java agent do not connect if the gridHost property end with a “/”
- ControllerServer does not stop on all exceptions occurring at initialization time
- ManagedProcess sometime kills the wrong process
- Un-managed DLL are not properly loaded on the dotnet agent
- Dotnet agent not running in Macos
Migration notes
For most users and setup upgrading from Step 22, no manual migrations tasks are required, but the following should be considered:
- With the Introduction of the API key revocations, exiting API keys are rendered invalid and must be renewed
- For complex usages of keyword outputs in plans, please read through the important information here.
Minor release 22.5
Bug fixing
- Composite Keyword sometime execute an empty sequence
Minor release 22.4
Bug fixing
- Dotnet agent:
- Dotnet agent not running on Macos
- Dependencies DLL available for multiple platforms are not always properly loaded
- ManagedProcess sometime kills the wrong process
- Unable to create Image/Pdf masks without the kw-write right
- Migration tasks for the versioning field wrongly throw errors for older Step version
Minor release 22.3
Bug fixing
- Label “test” displayed on execution view
- Tokens group view broken with multiple agents and running executions
- Selected keyword type not displayed when navigating back to keyword list
Minor release 22.2
Improvements
- Cypress plugin:
- Support debug mode (screenshot and log attachment) when executing Cypress Spec file
- Support spec files in subdirectories
- Enable parallel execution of Cypress keywords on same agent
Bug fixing
UI/UX
- Plan tree view: Nodes are re-activated when modifying a parent
- Filtering with dropdown values in tables wrongly use regex
- Opening attached log files in browser use a wrong character set
- New Keyword package dialog error when clicking on file chooser
Miscellaneous
- Step api version 1.1.11 and 1.2.0 may cause compilation errors for Java Keywords in IDE, respectively fixed with 1.1.12 (Step 21) and 1.2.1 (Step 22+)
Minor release 22.1
Improvements
- Analytics - Possibility to select/unselect all in the statistic table
- Messaging - Support audience for messages
- Messaging - Implement bulk operations for messages
- Authentication - Support State parameter for OIDC authorization code flow
- ASTRA - Add fields dllFile and librariesFile to Astra Keyword configuration dialog
Bug fixing
UI/UX
- Filters are shown with an underline
- Keyword routing in execution details is missing
- Improve displays of dropdown values in screen settings
- Authorization errors are not displayed correctly on the login screen
- Start time of report nodes displays incorrect milliseconds
- New Resource Dialog produces doubled resources sometimes
- FE hanging if plan cannot be saved
- Skip node with dynamic expression is not supported
- “0 Unknown Error” message shouldn’t be displayed
- Custom web context: missing few partial views
- Execution tree view not displayed at runtime
- Unable to set “measurement matching name” with multiple PerformanceAsserts
- Filtering test cases by status on the execution view is missing pre-sets
- Default sort column of the scheduler table not set
- Editable Inputs overlap with controls in Firefox
- Missing space in execution details for custom execution parameters
- Plain text plan editor not working with PostgreSQL
- Default sorting is not indicated
Miscellaneous
- Performance of Monitoring view decreasing with high number of executions
- Errors with Excel files larger than 10MB
- Auto number of threads is consumed even when only one thread is required
- Licensing messages are duplicated on controller start
- Wrong executions results in case of groovy errors in root node
- Missing logback libraries in Step agent OS
Major release 22.0 - codename “Churfirsten” 05/06/2023
New features
UI/UX improvements
Continuation of the complete redesign of the UI/UX, bringing:
- Bulks operations for all remaining Step tables
- Enhancements of the table filtering:
- Filtering supports dropdowns and checkboxes in addition to text search
- Filtering is persisted (per table) when you navigate back and forth between views
- A thread group’s wizard to automatically calculate the load parameters
- Support for copy/pasting between browser tabs for the visual plan editor
- Slight redesign of the executions list for a better overview on statuses and results
- A message inbox displaying relevant information to users. In this first edition, only information regarding license usages will be available.
Analytics
- Improvements and extensions of the filtering and grouping functionalities, so that you may:
- easily filter on multiple values (OR clause)
- filter or group on any custom measurement attributes
- use OQL (Object query language) for advanced queries
- export filtered RAW measurements to a CSV file
- Decommission of the legacy analytics views
See more on the Execution reports and Analytics
DevOps
- Implement Step maven plugins for pipeline integration
Keyword API
- New ‘Input’ annotation available to specify the keyword inputs and the related schema as Java function parameters
- Enabling the support for arrays and nested objects containing simple types (number, string, boolean)
- You can pass such values from the plan editor with JSON syntax, i.e. for arrays [ 1, 2, 3] and for object {“prop1”: “value1”}
- Enable the definition of composite keywords as code
- Support composite keyword in keyword packages
Plugins
- Cypress: Support execution of Cypress specs file in addition to Cypress commands
- Azure Devops: Support execution of individual ADO test case as a Step Test case (instead of a Test set)
Miscellaneous
- Removal of the system project and its artefacts. The housekeeping is now internal and fully configurable in the Step UI
If anyone was relying on the provided internal system monitoring task, they may restore it manually. More details on the migration page - Launch of the new licensing framework which will support central licensing server in the next release
Bug fixing
UI/UX
- Visual plan editor
- Copy/pasting nested structures produces wrong results
- Unable to modify keyword package routing options
- Results of the find usages for keyword are not displayed correctly
- The user preference to set the default size of tables is not working properly
- Monitoring view displays the status of new task as PASSED while the first execution is RUNNING
- Cannot individually switch scheduled tasks on or off when the global switch is off
- The link to the scheduler settings is broken for non admin users
- Multitenancy
- Unable to move unassigned entities (from [All] tenant) to a specific project
- Adding member to a project without actually selecting a user hangs
- Agent view - custom agents attributes are not available for grouping
Miscellaneous
- Public pages like monitoring are not supported with the OIDC integration
- Few documentation samples are out dated
- Loading Keyword package errors for long installation path
- Incorrect and duplicated embedded keyword packages after upgrading Step
- Swagger REST API errors for few REST services
- SQL dataset not supporting table names with uppercase for some databases
- Clean up the step-api-function jar for better integration with 3rd party dependencies
- Notifications subscriptions are not filtered by project when triggered
- The ADO plugin deletes attachments from the executions results when the execution ends
Migration notes
For most users and setup upgrading from Step 21, no other manual migrations tasks will be required (except for replacing the license files). Please read through the important information here.
Minor release 21.5
Bug fixing
- Tree view: Nodes are re-activated when modifying a parent
- Performance of Monitoring view decreasing with high number of executions
- Custom web context: missing few partial views
Minor release 21.4
Improvements
- Support execution of single ADO Test Case as Step Test Case
Bug fixing
- Unable to add output to the Return control
- Cannot switch scheduled tasks on or off when the global switch is off
- Agent custom attributes are ignored on the token group view
- Notifications subscriptions are not filtered by project when triggered
- Link to scheduler settings broken for non admin
- The ADO plugin deletes attachments from ended executions
- Tooltips are sometimes not showing and have two different designs
- Table size preference not working properly
- ExecutionParameters do not display description field as tooltip
- Clean up step-api-function jar to remove sl4j dependencies
Minor release 21.3
Bug fixing
General UI/UX
- Progress spinner is not displayed when adding / updating / removing keyword input
- Analytics: incorrect total throughput when changing metric unit
- UI Error message might displays http error instead of the actual error message
- Big execution trees are not readable
- Keyword routing is not displayed in execution view anymore
- Filtering on some custom column (screen input) is broken
- Export error not displayed in the UI
- CallKeyword selection criteria contains only “name”
- Start interactive execution of keyword fail with custom screen inputs
- Incorrect project selection in edge cases
Plugins
- Azure Devops: reporting results to azure devops fail with Java 17
- Azure Devops: fails to delete temporary files
- Dotnet agent: Binding issue with Dotnet 6 agent in docker
- Dotnet agent: error when two keywords contains dependencies with the same file
- Cypress: process might leak if errors occurs during startup
- Cypress: add logging for resolved Cypress version
- Managed process does not always cleanup the log folder
Minor release 21.2
Improvements
- Implement plaintext support for PerformanceAssert
Bug fixing
General UI/UX
- Minor UI layout issues
- Missing UI customizations for parameter table (last modification date & user)
- User preferences to set the default number of rows per table is ignored
- Upgrading an older Step version does not create initial versions for plans and parameters
- Navigating back and forward doesn’t work properly on all views
- Unable to edit notification subscriptions for external repositories
- Priority" filter from the Parameters page is not working properly
- Maintenance messages from earlier Step versions not supported
Plan editor
- Vertical scrolling of the plan tree of the visual plan editor is missing
- Errors while setting keyword inputs for some edge cases (using output of executions, optional empty inputs, dynamic keywords…)
- Tabs in the right sidebar can be unreachable
Execution view
- Jumping from keyword node in execution to plan does not focus on the correct plan node
- Execution tree not refreshed properly when an execution is running
- Navigating back to Execution of TestSet displays an empty ‘keyword calls’ table
Devops (Step runner, artefact repository )
- The update policy of the maven cache used by the artifact repository plugin is ignoring new snapshot versions of artifacts
- Keyword timeout not taken into account for artifact repository
- CallKeyword junit report throw NPE when the keyword is not found
Miscellaneous
- Unable to add project member without specifying the role (i.e. to use the main user’s role)
- Managing user (creating and editing name) is not disabled when userManagement is external
- Missing audit logs
Minor release 21.1
Bug fixing
Plan editor
- Various minor bugs around the keyword detail form (defining keyword’s inputs as json/dynamically, default values from schema,…)
- First click on visual plan editor tree ignored
- Line breaks in keyword descriptions not displayed properly on plan editor’s tooltips
- Tree nodes get skipped unintentionally
Execution view
- Auto-refresh cancel running requests
- Execution view date filter uses incorrect timezone
- Clicking on one testcase does not expand the Keyword calls panel
- Execution tree looses its state when navigating between tabs
- Opening the plan from an execution throw errors
Miscellaneous
- Step Upgrade: Login not possible due to browser caching issue
- Unable to assign role when users are managed externally, but roles are managed in Step
- Unable to duplicate composite keyword
- Parameter values with long text are not wrapped
- Scheduler settings missing in open source
Major release 21.0 - codename “Rigi” 13/02/2023
New features
UI/UX improvements
Continuation of the complete redesign of the UI/platform, bringing:
- Modernization of the UI/UX for additional views (plan edition, execution results…)
- Redesign of the call keyword form of the visual plan editor with enhanced support of Keyword schemas
- Versioning of plans and parameters
Analytics
- Enhancement of the execution performance view allowing complex filtering
- Dedicated analytics view for complex analytics such as cross executions analysis
Access management
- OpenID Connect integration supporting user and role management
- LDAP integration extended to support user management
DevOps
- CI/CD integration: Refactoring and improvements of the HTTP repository, renamed to Artifact repository
- Development and local execution: Step runner improvements (Junit reporting and parametrization)
Keyword API
- Step API enrichments, yet staying backward compatible, giving more configuration possibilities
- New hooks available triggered before and after the keyword execution.
Plugins
- Cypress plugin:
- Support of Cypress versions up to 12
- Improved dependency management
- Support of TypeScript
- New integration plugin for Astra enabling no-code automation
- New integration plugin for SikuliX for GUI-based automation
- Extension of the notification plugin to support custom payloads in webhooks
Miscellaneous
- Improvement of the Check control allowing more complex expressions
- New admin service to report the controller idle time is available
- From the user list you may now display the user’s projects memberships
Bug fixing
- Cloning plans imported from Test Management tools keep the source
- Remove the entry “tenant” from the repository parameters when starting execution from the root/repository
- Dynamic naming of controls wrongly toggled
- Plans imported with the HTTP repository are not persisted
- Keyword schema is not used in interactive mode
- Dual plan editor - focus should be in the plan text editor rather than plan name
- Modifying the number of items displayed per page is cancelled by the auto-refresh
- Reimplement entity migration service using BulkOperationManager
- FileWatchService fails to notice file changes for unknown reasons
Migration notes
For most users and setup upgrading from Step 20, no manual migrations tasks will be required. If you’re upgrading an older version, please consider following migration tasks
Minor release 20.2
Bug fixing
UI/UX
- Disabling the scheduler globally does not reflect on the scheduler list view
- Login view is not showing error messages
- Unauthorized operations redirect to the login page
- Filtering entities to move them to another project is not working
- Dynamic naming of controls wrongly toggled for imported plans
- Execution list empty after some time requiring a page refresh
- Parameter table not reloaded after parameter edit
- Navigating back to the plan list from the plan editor doesn’t work
- Bulk operations apply only one column filter
Miscellaneous
- Export execution steps to CSV does not work
- Cypress project storage space should be optimized
- Cypress error handling for project file structure needs improvements
- Fix dotnet agent and libraries names
- Web resources of custom made plugins are not available
- FileWatchService fails to notice file changes for unknown reasons
- Notifications of external repositories not properly triggered
- The behaviour of the method used to read Keyword output changed
Minor release 20.1
Improvements
Analytics and visualization
- Improved chart legends and contextual information
- Add more attributes to the timeseries for future analytics view
- Implement housekeeping for the timeseries
- Add metric selection (TPH, TPM, TPS) for throughput chart
- Indicate when queries are running in the background
- Keep table pagination in auto-refresh
Bug fixing
Analytics and visualization
- Performance Overview and Response Time charts use different rounding methods
- Dragging of the ranger selection does not stop it exactly in the dropped position
- Custom time range selection not working depending on browser local settings
- ThreadGroups chart wrong for plans with multiple thread groups
- ThreadGroups chart: Tooltip disappear between points
Miscellaneous
- Terminated session is not redirecting to login page
- Navigating back to a Plan doesn’t work
- Dotnet agent fails with unclear error
- Housekeeping not deleting grid monitoring measurements
Major release 20.0 - codename “Pilatus” 14/10/2022
Step’s versioning is moved from 3.19 to 20 to correctly mark our quarterly updates as major. This process is ongoing and will be changed over all our libraries until the next major release.
New features
UI/UX improvements
Complete redesign of the UI/platform, bringing:
- Modern layout
- Set of new features (new tables, bulk operations, etc.)
- Solid foundation for upcoming changes and improvements
Analytics and visualization
Complete analytics and visualization rewrite, bringing:
- Modern interface with numerous new features for the reporting and analysis of Performance Tests and Synthetic Monitoring
- In-house implementation of the analytics pipeline for a vastly superior performance for SaaS and On-Premise customers.
Integration
- Integration with Jira Xray in addition to the existing connectors for Azure DevOps, and ALM
- Support PostgreSQL as persistence layer
- Support java 17 runtime for the controller and the agent
- Improvement of the REST Api specification and finer access rights definition
- Add new agent endpoints for K8s liveness / readiness probes
- Expose Agent JVM metrics as Prometheus endpoint
Plan and control flow improvements
- After Sequence / After Thread controls are now also executed when interrupting an execution
Projects (multitenancy)
- Keep page location when switching project
- Specific access right for using the “all” project filter, it can now be assigned to any role
Plugins
- [Documents comparison] Enable document comparison to use file on agents
- [Azure Devops] support project names with spaces
Miscellaneous
- Improve usability of import/export dialogs (progress bar, import all entities disabled by default)
Bug fixing
- Execution Tree view doesn’t show on-going iteration
- Execution Tree view pagination is broken
- Legacy thread group execution chart maybe inconsistent, it should be replaced by the new visualization
- Variable set in before thread are not accessible in the thread context
- Step IDE cannot execute groovy keyword
- Step controller not gracefully shutting down
- [ALM] Multiple identical step import errors not displayed in UI
- [REST API] FindManyByCriteria with no criteria throw exception
- Duration of Cypress commands not measured properly in Cypress Keywords
- Missing project attributes for plan inner functions cause error at runtime
- Disabling authorization is broken
- Incorrect OTP and authorization error handling with the LDAP authenticator
Migration notes
For most users and setup, no manual migrations tasks will be required. However, if you use complex groovy dynamic expressions, custom screen input with custom HTML or self developed Step plugins, please consider following migration tasks
Major release 3.19.0 02/05/2022
Note: this release is mainly a technical one with core frontend changes. This will allow us to do a full redesign of the UI/UX in the coming releases.
New features
UI/UX improvements
- Technical refactoring of the Step web UI: the first milestone for an in-depth redesign of the UI/UX
- Improved UI/UX of the ‘used by’ feature (pagination, contextual information)
- Keyword call form: support default values in keyword schema
- Replace copy/paste functions by duplicate
- Execution view: add link from execution nodes to the corresponding plan’s node.
Projects (multitenancy)
- Automatically switch projects when opening referenced entity
Cypress plugin
- Support import of existing cypress projects/configurations
- Support custom Cypress commands
Bug fixing
- Stopping a test using thread group waits on the pacing
- New DB index required for the execution list view performance
- ConcurrentModificationException for the MeasurementControllerPlugin might appear in the logs
- Open keyword editor from plan is broken
- Reusing an existing resource as keyword package dependency is not possible
- Exporting plan with slashes in name is not working
- User with the role “tester” can rename plans and add/change nodes (but not delete)"
Minor release 3.18.5
Bug fixing
- [Azure Devops] project names with spaces are not supported
- [Azure Devops] Azure access rights errors are only displayed in the logs
- Step client remote accessor might fail with some limit/skip combination
- Project’s icons are not displayed on the Notifications subscription list view
Minor release 3.18.4
Bug fixing
- Assignment of notification subscriptions to other project is not supported
- Tenant is missing in webhook delivered data
- Performance of import/export and find usage should be improved
- Partial import from an export containing multiple type of entities is failing
- Importing all entities by default is misleading
- [Azure] Support shared steps
Minor release 3.18.3
Bug fixing
- Multitenancy
- Missing project entity icon in execution list
- “Proceed filtered” wrongly displayed on user assignment
- Migrating scheduler entities based on filter is not working
- Missing scope attributes of parameters for entity migration
- Deleting a tasks not yet executed cause a NullpointerException
- Audit logs for session invalidation of unauthenticated user shall be removed
- The controller hangs during a few seconds when aborting a test with large number of threads
Minor release 3.18.2
New Features
- Multitenancy: support bulk assignment of entities by search criteria
Bug fixing
- Switching project on repository plan should remain on the same page
- Project assignment and find usage errors for Keywords using dynamic expressions in the Jar-Path
Major release 3.18.0 16/12/2021
New features
Core changes
- Enforce Keyword package as leading Keyword management system
- Customization per keyword is still allowed in the UI, but this will be overridden when updating the package
- Single keyword (not part of a keyword package) are not impacted
- Resolve keywords by name instead of id for all keywords references (i.e. when called from a plan)
- greatly ease the import, export, migration from one environment to another…
- the resolution is done on all keyword’s attributes such as the default name and project but also any additional custom attributes that you may have defined
- Important: The keyword should be uniquely identifiable by its attributes (name, project and any additional custom attributes that you have configured)
Projects (multitenancy)
- Improve and enforce the use of projects
- Detect all unassigned entities and provide a wizard to properly assign them to a new or existing project
- New feature to move all entities per type (plan, keyword,…) from one project to another in one go
- New feature to move entities from one project to another recursively
- Deprecate multitenancy deactivation
UI/UX improvements
- Add a find usages feature for keyword, resources and plans
- Improve data table pagination
- Several other UI improvements (contextual information in dialogs, toolbars redesign…)
Analytics
- Replace the legacy dashboard view with our grafana dashboard integration
- Design a new grafana dashboard dedicated to synthetic monitoring (based on scheduled execution)
Integration
- Add token based authentication for the REST calls
- Document REST services with Swagger
- First (beta) version of the LogicFLow integration plugin
Azure DevOps
- Speed up retrieval of large test plans
- Cache and restore last used project, provide per-project bookmarks
Miscellaneous
- Modify user creation to define an initial and one time random password
- Support password strength requirements
- Implement Audit logs for Step rest services
- Deprecate the legacy report view for admins
- Exclude the log4j library (only used by the image OCR feature in the ImageCompare plugin) and replace it by the slf4j bridge
Bug fixing
- [Execution] Synchronized artefact not executing skeleton phase
- [Execution] Skeleton creation may fail when dynamic expression cannot be evaluated
- [Execution] Some complex error message are not persisted due to serialization errors
- [Execution] NullPointerException thrown in case of syntax errors in dynamic expressions
- [Step client] The project is not set when creating a plan with the Step client
- [Azure] Reporting uses wrong ID format, resulting in buggy reports in Web UI
- [Dotnet] improve agent url discovery
- [Dotnet]: Reusing the tmp folders is not robust
- [Dotnet] The file App.config is copied to the distribution of the .NET 5 agent
- [Dotnet 5] Missing runtimeconfig properties
- [Admin] Admin users are allowed to delete themselves
Minor release 3.17.2
Improvements
Azure DevOps
- Button to refresh plans of current project
- Improve error handling while browsing projects
- Add information about which user ran tests
- Support execution reports in plain text format
- Allow to preserve formatting in Action and Expected Results
- Support custom product name in DevOps reports
- Display Failure Reason in Execution Comment
- Support disabling steps by commenting them out
- Allow to disable DevOps reporting
- Allow to display DevOps IDs in tree
Bug fixing
- Execution context unexpectedly closed
- Azure DevOps reporting uses wrong ID format, resulting in buggy reports in Web UI
Minor release 3.17.1
Improvements
Azure DevOps
- Report test runs with errors/failures as “Investigation needed” instead of “Completed”
- Prefix attachment filenames with step number
- Unique report filenames
- Shorten Step description in report.html
Miscellaneous
- SoapUI: Manage environment variable
- Add execution parameters to webhook notifications
Bug fixing
- Unable to execute the .NET 5 agent from the mac finder
- Filter HTML entities on import in Azure
- Minor issues in the new .NET 5.0 agent
- Performance beta view - restarting execution show data of previous execution
- Performance beta view - execution panel not updated
- Prometheus charts displaying wrong y-axis label
- Prometheus transactions overview graph wrong min max
- Controller shutdown hook is broken
- Clean up of Groovy Errors in the controller logs
- PrometheusHandler causing a memory leak
- The attachment given by ResourceManager.download in the Step client has an invalid name
Major release 3.17.0 05/07/2021
New features
Analytics
- Implemented brand new performance dashboard for the real-time visualisation and analysis of performance tests
- Updated and enhanced Grafana dashboards. See our related tutorial
Step SaaS
Step features enabling the upcoming new SaaS solution:
- On-demand scaling of Step agents
- Graceful shutdown of agents
- Full Kubernetes integration (incl. Grafana and Prometheus)
While waiting for the self-service portal, you can still order your cluster from our current cloud offering form
Development distribution
- Introduced new standalone distribution of Step called IDE distribution (beta) to develop and test Plans and Keywords locally before pushing them to the Step server (Documentation upcoming)
.Net plugin
- The dotnet agent and keywords support now the .NET 5.0 framework giving the possibility to run them on Linux and macOS in addition to the Windows OS. The legacy agents for .Net 4.x is still supported
Cypress plugin
- First (beta) version of the Cypress.io plugin is available. You can now declare Step Keywords that run cypress commands and thus leverage the combined power of Step and Cypress as described here
Integration
- Webhook support added to complement the email notifications
- step Client API: new function to retrieve executions by interval and status
- Azure DevOps Plugin: Test Suite/Plan execution are now opened in new tabs
UI/UX improvements
- Further customization options added to change the navigation style as step CSS variable
- Browser cache invalidation added to help with upgrade of Step versions
Plan and control flow improvements
- Plaintext plans can have different type of root nodes and are not limited to testcases anymore
Miscellaneous
- Multiple performance optimizations implemented to increase the maximum throughput of your executions
- The routing criteria of keywords can be configured at the keyword package level
Bug fixing
- Infinite loop when starting a plan with an infinite while
- Wrong LDAP filter syntax and placeholder described in step.properties
- Grid view unresponsive for very large number of tokens
- The retryIfFail control’s tooltip is misleading
- PDF and Image Masks can be modified without specific rights
- Improve Syntax Error handling for repository plans (ALM,devops…)
Minor release 3.16.3
Bug fixing
- Shutdown hook of the controller is unable to fully stop the process
- Running load test with many concurrent testcases slow down the execution view
- To execute load test plans using testcases inside a threadgroup, it is recommended to upgrade to the 3.17 release
- Running load tests with the prometheus plugin active and large volume of transactions may cause stability issue of the controller
Minor release 3.16.2
Improvements
- Azure DevOps Plugin: Open Test Suite/Plan execution in new tab
- Allow Plaintext Plans to have root nodes other than TestCase
Bug fixing
- Protected parameters cannot be accessed within plans for data source passwords
- Monitoring dashboards export and config buttons are not clickable
- Editing a disabled scheduler task make it to be executed
Minor release 3.16.1
Improvements
- Grafana dashboards for step executions slightly reworked
- Sampling interval for new gauge metrics can be configured as step property
Bug fixing
- Document Compare Mask list is not displayed properly
- Test cases added to an already scheduled test set are skipped by the scheduler
- Table auto refresh is interrupted after (network) errors
- Plan and Function locator invoked from the plan editor are not project aware
- Connection aborted exceptions are thrown in controller logs
Major release 3.16.0 01/04/2021
New features
Analytics
- New plugins available for advanced analytics and integration with external solutions
- Prometheus plugin to expose execution metrics to your Prometheus server
- Log measurement plugin to expose execution metrics to your log ingestion pipelines (Logstash, Splunk,…)
- Jdbc measurement plugin to write the execution metrics to any compatible database
- Advanced dashboarding: whether you use the new plugin or still rely on the RTM mongo database, we prepared a set of dashboard and tutorial to integrate with grafana
- New metrics available (for all plugins)
- Threads usage per test execution and thread group
- Step’s grid usage
- New feature to export RTM raw measurements from the interactive analysis view
UI/UX improvements
- Support case insensitive filters in data table
- Support operations on multiple nodes for the Visual plan editor (Copy-paste, delete…)
Plan and control flow improvements
- Control of the execution flow on error has been improved. One can now control what to do in case of error for each and every node.
- Enhanced ThreadGroup for better control on execution duration, reaching throughput goals and designing ramp-up
Protection of parameters
- Provide out-of-the-box support for asymmetric encryption of password parameters
- Support for parameter encryption (passwords…)
- SSL connection between controller and agents (ref to the agent configuration)
Integration
- Azure DevOps Plugin: Implement test suite view as tree instead of list
- Adding repository information to notification subscription list to distinguish between local and external plans (Alm,…)
Operations
- Migrate to YAML format for agent configuration (AgentConf.yaml)
- step’s controller and agent now require Java version 11.
- Support of internet explorer has been dropped
Bug fixing
- Plan editor: unexpected collapse tree
- Report node details not visible in execution tree
- Button “Select test case…” on Execution Steps table rows doesn’t work anymore
- Performance issue on Parameters view
- Performance dashboard width is overflowing
- Table Export to CSV in Interactive Analysis doesn’t export all data it gets from the RTM
- Azure DevOps Plugin: support pagination in calls to the Azure DevOps APIs.
- PDF and Image Compare keywords are not properly initialized when Multitenancy is disabled
- Improve error messages for document compare misusage
Minor release 3.15.7
Bug fixing
- Parameter list is not displayed if it contains parameters created before version 3.6
- Document Compare Mask list is not displayed properly
Minor release 3.15.6
Bug fixing
- Displaying the parameter table is slow for large list
- Table auto refresh is interrupted in case of errors
- Test cases added to an already scheduled test set are skipped by the scheduler
Minor release 3.15.5
Bug fixing
- Scheduler setting “Execution user” ignored by the scheduler
- Table auto refresh broken when minimizing the browser
Minor release 3.15.4
New features
- Support default values for check boxes in screen templates
- Use “functionTable” screen definition instead of “compareMasksTable” for “Document Compare Masks”
- Add repository information to notification subscription list
Bug fixing
- Improve error messages for document compare misusages
- Performance dashboard width is overflowing
- Keywords annotated with @Attribute not found in JUnit Runner
- Keyword input keys containing spaces not supported by the plain text plan syntax
- Assertions with output attributes containing spaces not supported in plain text plan syntax
- Controller unable to start when multitenancy is disabled
- PDF and Image Compare KW not properly initialized when Multitenancy is disabled
- Report node details not visible in execution tree
- Automatic migration of notification subscriptions from 3.14 to 3.15 randomly fails
- Toggle “Enable scheduler” toggled when setting “Execution user” on scheduler setting screen
- Loading spin for data table not displayed
Minor release 3.15.3
Please do not use this version, it was mistakenly released from a wrong branch. It is superseded by the corrected version 3.15.4.
Minor release 3.15.2
Bug fixing
- Automatic migration from STEP versions < 3.13 to 3.15 is broken
Minor release 3.15.1
New features
- Azure: Add execution link to Azure DevOps report
- SoapUI: Added beta support for SoapUI PRO and improved reporting (missed in 3.15.0)
Bug fixing
Import/export
- Plan export failing if a Keyword referenced by attributes cannot be resolved
- Import of single entities type (i.e. plan) from a large export fails
- Import of parameters is failing
- Import/export from windows to linux is failing for exports containing resources
UI
- When editing a “callKeyword” control the focus on inputs was incorrect
- Map entry order got lost after using “Map output to” in keyword calls
Major release 3.15.0 17/12/2020
New features
Integration
- Implemented new plugin for Azure DevOps integration
Plan edition and execution
- Redesigned the Execution steps view
- Implemented instrumentation of plan nodes (see Visual plan editor)
- Added new notification subscriptions overview screen
- Scheduler global switch
- Added new button on start execution panel to generate curl request to start an execution via REST
Document comparison
- Implemented new plugin for Image comparison
- Added new PDF/Image Masks Editor overview screen (see PDF and Image compare plugin)
- Improved PDF comparison reporting
ALM plugin
- Added new switch to toggle off ALM reporting
- Implemented asynchronous ALM reporting
SoapUI plugin
- Added beta support for SoapUI PRO
- Improved SoapUI plugin reporting
Miscellaneous
- Enhanced JUnit runner
Bug fixing
- Cannot enter a running execution started via Step Client (REST)
- Click on testcase’s name to filter the keywords calls on execution view is broken
- Monitoring dashboard - incorrect names in configuration mode
Minor release 3.14.2
New features
- Improved responsiveness and accuracy of performance Dashboards
- Processing of performance measurements to generate graphics and statistic tables improved drastically
- Percentile approximation is now reduced to the millisecond in most cases (the actual precision reached is now displayed next to your statistics)
- Import/export improvements:
- Adding export of single keyword
- Export recursively keyword and plan referenced by attributes (CallPlan and CallKeyword controls)
Bug fixing
- Unable to edit project memberships after user deletion
- Project admin page does not reload when changing project
- Recursive export of resource from dataset is not working
- Default Test case not selected when executing a Plain text from the execution view
- Opened execution not being refreshed after test completion
- Missing screen inputs related rights in the default role handler used by the step OS version
Minor release 3.14.1
New features
- New Self monitoring dashboard to control step’s internal activity and resource usage
- Add the possibility to execute a keyword on the controller via keyword routing
Bug fixing
- Import of older plans with Assert to 3.14.0 is failing
- Import keyword package failing for controller installation with spaces in path
- Scheduler tasks are not executed within the right project after migration to 3.14.0
- Unnecessary/duplicated keywords delivered in step EE out of the box
Major release 3.14.0 08/10/2020
New features
Projects (multitenancy)
- Created new project admin rights enabling administration of single projects (without being a ‘global’ administrator)
- Introduced project settings view for project’s administrator
Dashboards and Performance measurements
- Plan and Task IDs added to RTM measurements enabling dashboarding & analysis across multiple executions (can be accessed through the monitoring view for example)
- Keyword measurements moved closer to the keyword invocation (do not include the delegation time to the agent anymore)
- Display Keyword measurements on execution view (see execution step details)
- Self-Monitoring dashboard added to step (all metrics can already be colleted with step 3.14.0, dashboard and documentation are coming soon)
Import/Export
- Refactoring and extension of Import/export features (more details)
- Introduced recursive export and import supporting multiple type of entities (plans, keywords, resources…)
- Reimporting in same controller can either overwrite or duplicate exported entities
Integration
- Introduced JUnit Runner as part of the Step Testing SDK to seamlessly integrate Step Plans in plain text format into JUnit tests
- Introduced Executable bundles (Plans, Keywords, and required dependencies) for self-contained executions on the STEP platform and seamless integration with CI/CD servers
- Implemented Artifact repository connector for retrieval and execution of Execution bundles located on artifact repositories (Nexus, etc)
- Added a Client API for managing parameters (see step client API’s service description)
Plan editor
- Added ability to undo/redo or discard all changes in plan editors
- Support dynamic names for any nodes (including test cases) used by the tree view and report nodes
- Improved Visual Plan Editor layout
Execution view
- Add Check to the execution tree & ALM reports
- Report nodes of keyword called by ‘CallKeyword’ are now named after the keyword name
- Optimization on performance dashboard
Controls
- Create implicit Session control in ThreadGroups, For, ForEach and TestCases
- Add performance-specific assertions to the Assert-Control
- Improve Asserts
- Implement controls BeforeSequence and AfterSequence for initialization and cleanup tasks inside sequences
- Implement controls BeforeThread and AfterThread for initialization and cleanup tasks inside threads
- Reviewed and extended tooltips of controls
Plugins
- Dotnet: Improved isolation of keyword execution allowing to use different versions of .NET libraries
- Dotnet: Improved error handling and error messages for the .NET agent
- SoapUi Keyword: add possibility to execute all test suites and test cases of a given project from one single keyword
Miscellaneous
- Notification: Change recipient field to a dynamic value
- Improving handling of keyword package import errors like “Invalid schemas”
- Improve error handling of non-existing or restricted scoped variables accesses in groovy expressions
Bug fixing
- Threadgroup - change rampup to start the 1st thread immediately
- Button “Show this node on tree view” in keyword list doesn’t work in big trees
- Improve interruption of test executions
- Table filter “Package” of the Keyword view not working
- Agent cannot be reached when using agentUrl
- Step Agent: Issue with locked .dll
- Plan attachments not deleted by housekeeping task
- Creating kw library with step client imports the Echo kw
- Execution list not showing up when root report nodes are missing
- Tokens already reserved error in Interactive mode
- Test cases defined under foreach create inaccurate reports
- Columns missing in data table in case of slow network
- Dashboard content displayed in the logs when saving
- Editing project name remove all its members
- Performance regression in Keyword call introduced in previous release
- Threadgroup with extremely large number of iterations cause out of memory
- Some tooltip are partially hidden
- Cannot set back the Testcase field in a SoapUi keyword to null
- Iterating over a CSV DataSet generates unnecessary tmp file
- Each For or ForEach control creates a useless dataset-write-thread on the controller
- FunctionPackage discovery not working when the java classpath of the controller process is relative
- Fairness not guaranteed in Synchronized controls
- Error in the logs when executing the Housekeeping job with no results
- Filter out new plan templates
- Oryon Keyword template adapted to latest API
Migration
Migration guidelines for this release are available here.
Main point:: Nashorn engine used to evaluate Javascript expressions and execute javascript (but not nodejs) keywords is deprecated starting with step 3.14. Support of nashorn will be removed in a future release, in 3.14:
- The engine used to evaluate the “Activation script” of parameters and screen templates has changed to groovy
- For now you may still revert to nashorn if required by changing the following property in ‘step.properties’ and restarting the controller: tec.activator.scriptEngine=nashorn
- Likewise keywords of type script and using javascript as language are deprecated
Minor release 3.13.5
New features
- Extend ‘RemoteExecutionManager’ and improve documentation
Bug fixing
- Number of tasks displayed on scheduler list limited to 50
- Empty execution description when starting plan using the step client
- Plan of composite Keywords are not hidden
- Simple expressions in Set controls not working in plain-text syntax
Minor release 3.13.4
Skipped (build deployment error)
Minor release 3.13.3
Bug fixing
- Import of plans with special characters fails due to encoding issues
- Issue when selecting existing jar at keyword creation
- Plan attachments not deleted by housekeeping task
- Plan is not directly saved after performing a Copy/Paste in plan tree
Minor release 3.13.2
New features
- Adding “Notification_Send” local keyword to send custom notifications (i.e. emails…)
- Prevent multi-threaded miss-usage of function group (sessions)
- Improve error handling of non-existing or restricted scoped variables accesses in groovy expressions
Bug fixing
- Sporadic IOExceptions observed in controller logs for server side data tables
- Selecting a new Plan in a scheduler task doesn’t refresh the tasks table
- NPE errors raised from the current operations view
- RetryIfFail with report last node only option: last try is not reported if the timeout is reached
- Javascript incompatibility with IE11 issue was introduced with step 3.13
Minor release 3.13.1
Bug fixing
- Table filters might stop working under rare conditions
- Execution view is not refreshed in specific context
- Duplicated auto refresh of the execution list view causing unnecessary load
- Editing a scheduler task from the monitoring view is not working
- Opening the Keyword editor from the plan tree is broken
- Migration breaks for plans with unexpected ID type
- Import of plans from previous version is not handled
- Sleep control is executed in Simulation mode which should not be the case
Major release 3.13.0 07/04/2020
New features
Projects (multitenancy)
- Implement project-based role assigment
- Implement global projects for common entities (Common Plans, commons Keywords, common Parameters, common Execution Parameters)
- Implement project support for STEP Client (REST) API
- Enable definition of project specific screen templates
- Enable definition of project specific monitoring dashboards
Dashboards
- Implement timeline selection widget on “Performance” view
- Extend “Performance” view of “Execution view” to custom measurements
- Implement timeframe size toggles in real-time performance monitoring view
- Integrate “Interactive analytics” (RTM) as step dashboard session
Plan editor
- Manage plain-text plans exactly like visual editor plans
- Improve plan editor tree usability
- Implement a function in the visual plan editor to disable nodes
- Provide proper filename upon plan export
- Support keyword with spaces in plain text syntax
Keywords
- Support package managers (nexus, etc) as repository for Keyword Packages
- Add field description/documentation to Keyword
- Package embedded keywords as Keyword package
Execution view
- Scrolling position of “Execution tree” reset after refresh
- Redesign the auto refresh
- Monitoring of current operations in test cases
- Improve WaitForEvent reports
- Optimize performance of the execution view
- Show waiting controls in executions steps
Controls
- Release Agent Tokens in waiting controls
- For and ForEach: add the maxFailedLoops parameter to the gui
- Implement named and global locks via Synchronized control
- RetryIfFails control: Add switch to persist only last iteration
- Add checkbox to choose to display failures to the RetryIfFails control
- Implement data set reset for source type “Directory”
- Add UserID handle to ForEach (analog to ThreadGroup)
Miscellaneous
- Add “New” button in Resource view and Scheduler View
- Disable closing of dialogs when clicked outside
- Add link to open entity editor from table rows
- Add tooltips to execution parameters
- Assign dedicated URLs to “Admin” views
- Implement move up & down to define order of Screen Template inputs
- Make the title (STEP) like the favicon configurable
- Custom HTML Templates for Keywords
- Placeholder lookup in Keyword properties should also take Keyword Inputs into account
- Call Timeout and Keyword not passed as property to the Keyword
- Improve the usability of the Parameter list
- Add field “Parameters” to the “Edit scheduler task” dialog and remove editable execution parameters from scheduler table
- Improve configurability of ScreenTemplates
- Replace legacy datatable directive by st-table
- Standardize CRUD REST services and migrate Remote Accessors to AbstractCRUDRemoteAccessor
- Report a business error when a PDF Mask is missing
- Make scheduler task table configurable
- Add system chooser to resource loader
Bug fixing
- Parsing error in plain-text plans when separating key-values by carriage return
- executionParameters with an activation expression are not properly evaluated
- Concurrency issue with the Echo function
- In .Net, the exception captured when a timeout occurs capture the wrong AppDomain stack
- Common Keywords not listed under Keywords when a project is selected
- Double clicking the refresh button of a FunctionPackage creates a duplicate entry of the FunctionPackage
- Keywords not isolated properly between projects
- Display errors in the “Current operation” table of the execution view
- Skip/limit fields on Execution Tree view not working as expected
- ForEach: infinit loop for empty json map
- The notation “Application.Keyword” isn’t supported by the Parameter scope definition for the scope Keyword
- CosmeticsHandler redirects to non secure connection
- Plans cannot access parameters from which the scope has been changed from application to global
- Parameters are displayed on 2 rows
- Fix NPE in ReportNodeStatisticsView and RtmPlugin when a KW cannot be found
- Items potentially processed several times in parallel controls (For, ForEach, TestSet, ThreadGroup)
- Encoding issue in the execution errors view
- Execution parameters sometime hidden
- QuotaManager not blocking on acquire permit and not propagating errors
- Escaping of $ in Set controls (Plain-Text) doesn’t work properly
- Fix various regressions in dashboard presets
- ConcurrentModificationException in service threadmanager/operations
Migration
Migration guidelines for this release are available here.
Minor release 3.12.3
Bug fixing
- Items potentially processed several times in parallel controls (For, ForEach, TestSet, ThreadGroup)
- Global Parameters cannot be used in Keyword Jar-Path placeholders
- The notation “Application.Keyword” isn’t supported by the Parameter scope definition for the scope Keyword
- Plans cannot access parameters from which the scope has been changed from “application” to “global”
- Rename attribute keyword.attributes.app to keyword.attributes.application
New features
- Implement data set reset for source type “Directory”
- Placeholder lookup in Keyword properties should also take Keyword Inputs into account
- Add field “Parameters” to the “Edit scheduler task” dialog and remove editable execution parameters from scheduler table
Minor release 3.12.2
Bug fixing
- Controller not starting under certain circumstances due to conflicting libraries of the mongo driver
Minor release 3.12.1
Bug fixing
- Column Package disappears from Keyword table after screen template update
- Clicking the groovy button while adding a new KW input inconsistency
- Multitenancy plugin switch off cause errors
- Filter by IDs on entity does not work
- Projects dropdown not automatically reloaded
- Screen template admin view broken when using projects
- Scheduler entries plan name disappear when migrating to 3.12.0
- Parameters created using a previous version of STEP disappear from the parameter list after switching the Project
- Plans aren’t imported to the current project
- The feature “Export all plans” exports the Plans of all projects
- When starting an execution in a specific project the parameters of other projects are also applied
- Toolbar layout of the dashboard view not correct in IE
- Notification gateways are not visible when selecting a specific (non global) project
- html elements not aligned properly
- All keywords referenced in a keyword package take its name when the package is edited
- Composite keywords not working anymore on agent
- Custom attributes of a new FunctionPackage are ignored when referencing an existing package
- Classloaders are loaded twice on the agent side
- JNI resource management issue as part of a java keyword
- Remove unnecessary column in Keyword library view (Plan Editor)
- Keyword name not displayed on “Keyword calls” table when running Plain-text plan (ALM, organizer, etc)
New features
- Add config variable switch for root true vs false in ALM parsed plans
- Updating to viz alpha-37+
Major release 3.12.0 05/12/2019
Community Edition
Core functionality
- Introducing a new visualization framework for consolidating and displaying data into Dashboards, allowing for historical analysis, aggregation and real-time monitoring of data and events originating from step itself as well as from foreign data sources. The visualization framework is fully configurative, allowing users to design their own visualization dashlets and provides modular components which will be reused throughout exense’s products.
- Multiple pre-populated Dashboard presets are provided
- Introducing Dashboard session entities for built-in persistence and management of dashboard instances
- Keyword Session artefacts used in Plans now implicitly support multiple token types (for instance, a session can now concurrently handle Java and .NET keyword executions)
- Complete overhaul of the Performance tab in the execution view for monitoring keywords & transactions (both in a real-time way and summary-oriented way), users can now easily navigate from the default Keyword-based view to a Transaction view (to view their Custom “Measures”)
- Parameters now support a “scope” which restricts access from keywords depending on the keyword’s context (Global, App-based, Keyword name based).
- A global maximum number of threads can now be assigned to an execution via the variable execution_threads_auto, serving as a safety cap or garantee of “fair” resource allocation to concurrent executions
- Fixed issues with search headers in various data tables (among which Keyword Package, Scheduler Task, Resources)
Operations
- step’s controller and agent can now be run on Oracle’s JRE 11. Step itself is still compiled using JDK 8, thus still allowing the controller and agent to run on JRE 8.
Keyword API
- Introducing property validation
- Due to the new feature allowing the scoping of parameter use, developers now need to make sure that their keyword has proper access to the relevant parameters
Ergonomy
- Fixed an issue where modal dialogs were shut prematurely on mouse release
Enterprise Edition
Operations
- While Step’s controller and agent can run on JRE 11, the ALM plugin (more specifically, the ALM daemon) requires a 32 bit JVM, which is not available in Oracle’s Java 11 distribution.
Project Entity (multitenancy)
- Introducing the Project entity for implicit isolation of almost all of step’s entities in the table views. New projects can now be created and entities can be assigned to a project. Lists are automatically listed based on the selector chosen in the top right corner of the screen. Plans, Keywords, Executions, Parameters, Scheduler Tasks, Resources, FunctionPackages are governed via projects. The following entities and views are not covered as of 3.12.0: Monitoring, Dashboards, Reports, Event Broker Monitor.
- Project creation and migration workflows are made available in a new view under Admin -> Settings -> Projects
- 2 default projects are pre-created: system (used for instance for housekeeping) and alm (for storing parsed plans and executions from alm)
- Project management services have been secured and additional default rights created in the access matrix file
Dashboards
- Specific additional Dashboard presets are made available by default to Enterprise customers: RealtimeSelfMonitoring (containing a Free token per agent dashlet and a Current on-going execution dashlet), UserExecutionDashboard (offering a breakdown of user activity over the last week) and ProjectOverview (providing an overview of the related plan and keyword executions over the last week, after applying the corresponding project entity)
Ergonomy
- A viz-presets file has been added to the list of customizable cosmetics (conf/cosmetics) for easily modifying and extending dashboard presets
- Various bugfixes relating to modal popup behavior and text overflows have been performed
Plugins
- ALM: necessary updates have been made to the daemon and the parser in order to ensure compatibility with project management and keyword and keyword package multi-versioning (this includes path-based resources and multi-version scenarios)
- EventBroker: services have been secured and additional default rights created in the access matrix file
- .NET: new annotation-based functionality is supported in .NET (similar to Java)
- FunctionPackage: redesigned FunctionDiscovery as a managed process, thus unlocking the jar file in path scenarios, preventing concurrency issues and not requiring to open extra network ports anymore (in .NET). Keyword packages now support path-based resources and multi-versioning in Java and .NET. A new field “Reference Package” field has been added in order to preserve (i.e re-apply) any attributes which may already have been added in a previous version of the package or in a different package.
Deprecation & backward compatibility
- Backward compatibility to step-api 1.0.0 is preserved, however, in order to benefit from new API features (such as property validation), an upgrade to 1.1.0 is needed
Migration
Migration guidelines for this release are available here.
Minor release 3.11.1
Features
- step Client API
Added new workflow based on the identification of keyword packages via resource name for simplified management.
In this scenario, the developer doesn’t have to worry about storing the FunctionPackage object or its id. The workflow is simple: if the resource changes, the keyword package is refreshed. This means that the old Keywords and Resources are updated (and if necessary, cleaned up). As a consequence, in this scenario, it is assumed that different resources have distinct names and that only one KeywordPackage instance is to be managed per Resource name. FunctionPackage objects can now also be looked up remotely by resource name.
See for example method resourceBasedKeywordPackageCreationAndUpdate in our demo class StepClientDemo
- KeywordPackage
Upon editing a keyword package and changing its resource(s), old resources are now cleaned up automatically.
Bug fixing
- .NET Agent
Fixed multiple issues related to error handling and the absence of attachments in cases, such as returned exceptions or in the event of a Timeout. The SetError which had disappeard during Api refactoring is now present again.
- Performance
Fixed a significant performance issue caused by redundant calls made in the Resource Manager, between the controller and agent. Although this had virtual no functional impact as well as no perceivable latency impact on instances with sufficiant resources, the theoretical maximal throughput of keyword executions was affected (since 3.10).
- ResourceAccessor
Fixed mismatch in service URL causing for the delete function to fail with an HTTP error.
- Logging
Fixed minor issue causing warnings to be logged by the web container in Enterprise versions.
- Ergonomy
Fixed display glitch causing for text to overflow in the Execution Tree view. Fixed an issue causing bootstrap dialogs to close unexpectedly. Fixed a glitch specific to Internet Explorer, causing for custom screen attributes not to be displayed.
Major release 3.11.0 13/09/2019
Community Edition
Core functionality
- Customizable affinity evaluation to allow scenarios such as host-based token selection and selection through custom affinities
- Allowing Do-While via “Post contiditon” attribute in While artefact
Keyword API
- Full isolation of Keyword API dependencies to allow desynchronizing keyword dependency upgrades from controller upgrades (users choose when they upgrade their script’s dependencies)
- Supporting bundling of properties and schemas in keywords
Ergonomy
- Plan Editor: Resizable panes, modal for value editing, keyboard shortcuts, improved drag&drop support (multiple artefact move)
- General: new Community style
Enterprise Edition
Operations
- Automatic Housekeeping via built-in LocalFunctions and admin plan, switch in settings, and “retain execution” policy
- Batch deployment workflow for Java and .NET via Keyword Package : keywords are now automatically created based on Jar and DLL inspection
Ergonomy
- Customizable static resources & new EE-specific style
StepClient API
- Improved performance in local execution
- Fixed issues in which event payloads were serialized incorrectly or causing errors
Plugins
- ALM: enabling copy of ALM plans as regular editable plans, worksheet argument in ForEach
- EventBroker: allowing choice between unicity or duplicates in Group+Name scenario
- Plan parser / Dual plan editor: support for escaped characters
- RTM: allowing transaction logging for log-based integration (Splunk, ELK, etc)
- .NET:
- dynamic dependencies deployment is now supported just as in Java.
- Log4Net support: the .NET agent will now log critical errors and keywords can log information into the agent’s log file. See example here.
- PDB support (simply packed along with dependencies zip)
- support of keyword call timeout & thread interruption mechanism, similar to Java
- using multiple assemblies in the context of the local KeywordRunner is now supported
Deprecation / Deletions
- Removing Selenium as a built-in Keyword type: native Keywords (Java, .NET, Node.JS) + libraries are now the standard approach to deploying Selenium Keywords, this has the major advantage of allowing users to configure their own custom version of Selenium easily and without having to worry about mismatches between their project dependencies and the platform’s dependencies
Migration
Migration guidelines for this release are available here.
Minor release 3.10.2
Features
- step Client API: First implementation of the RemoteExecutionAccessor client. This includes the functions getAll(), findLastStarted() and findLastEnded()
- Plain text syntax: Adding the “Delimiter” parameter in the step parser for the ForEach control
- PDF-Plugin: Improving error handling in keyword PDF_compare
- Web interface: Adding the field “Parameters” to the “Edit task” dialog
Bug fixing
- ALM-Plugin: Fixing reporting of empty step names
Minor release 3.10.1
Features
- Monitoring plugin: Implementing new monitoring plugin
- ALM Plugin: simplifying installation
- Plain text syntax: Adding worksheet parameter to ForEach in plaint text syntax
- Other: Implementing logging of std-out and err-out for ManagedProcess
Bug fixing
- Web interface: Fixing drag&drop issue when uploading resources in Firefox and IE
- Web interface: Fixing edition of preferences under MyAccount for non-admin users
- ALM Plugin: fixing reporting issue of failed-reason and tester fields
- Plain text syntax: Fixing escaping
Major release 3.10.0 13/03/2019
Community Edition
Core functionality
- Introduced the ResourceManager to allow the upload, management and tracking of central resources on the controller. The ResourceManager is also used to store attachments and thus replaces the old attachmentdir (See http://docs.exense.ch/wiki/step/view/Versions/3.10.x/Migration/ for migration details)
- Upgraded to RTM 2.2.4
- Implemented support for write operations in CSV DataSets
- Added MaxDuration field to ThreadGroup
- Added support for upload and zipped projects in Node.js plugin
- Added support for Puppeteer
Enterprise Edition
API (Remote-Client)
- Implemented JUnit report writer for local and remote executions
- Renamed ControllerClient to StepClient and refactored the API
ALM-Plugin
- Implemented reporting of testcase start
- Implemented asynchronous testcase export
- Fixed username (tester) reporting issue