Cycle Release Notes

Cycle Release Notes

Cycle Release Notes

Cycle 2.27 + Cycle MCP / 2026-05-15 

New Features and Enhancements 

Cycle MCP: Agent-Assisted Cycle Server (Experimental) 

Cycle 2.27 introduces an experimental Cycle MCP server, enabling AI coding agents to author, run, and debug Cycle tests through the Model Context Protocol (MCP). The MCP server connects your AI agent directly to the Cycle engine, allowing it to work with your CycleScript feature files without manual copy-paste workflows. 


With this release, the following capabilities are available through the MCP server: 

• Write and edit CycleScript feature files from natural language descriptions 

• Validate feature files against the Cycle engine to catch error before running 

• Execute tests and retrieve run results in real time 

• Retrieve and analyze failure details to assist with debugging 

• Explore application pages and assist with locator authoring using the agent's live browser tools The Cycle MCP server has been validated against Claude Code for this initial experimental release. Setup instructions for Cursor and Copilot in VS Code are included in the User Manual but were not exercised in this release's validation window. Please keep this in mind if you choose to integrate with those tools at this time.


Because this feature is experimental, its behavior, configuration, and availability may change in future releases. Refer to the Cycle User Manual for setup and configuration instructions: Cycle User Manual Updated Master Service Agreement.

Bug Fixes 

Report Dashboard 

Fixed an issue where Cycle execution summary emails could misfire. Emails now send only when the configured conditions are met. 

Resolved two related navigation issues: 

• Fixed recursive behavior when navigating into nested Scenario results. 

• Fixed an issue where drilling to a Scenario result displayed an empty detail view instead of the expected step content. 

Cycle Desktop: License Agreement Text Displays as Garbled Characters 

Fixed an issue where the MSA text in the Cycle Desktop application was rendering as garbled characters due to a character encoding issue. The agreement text now displays correctly.

Cycle 2.26.1 / 2026-04-15 

New Features and Enhancements 

File System Step Plugin 

File system operations are now delivered as a dedicated step plugin rather than being built directly into the Cycle Engine. This change decouples file system steps from core engine code, making the platform easier to extend and maintain going forward. 

• All 20 file system steps (create, copy, move, delete, rename, verify, append, and directory operations) are now bundled as a standalone File System plugin shipped with Cycle. 

• Steps behave identically to their previous Engine-hosted counterparts. 

• The plugin follows the simplified plugin architecture introduced in Cycle 2.26. 

Standardized New Project Structure 

New Cycle projects created through any tooling (CLI, Electron, etc.) now follow a consistent, standard directory structure aligned with the Cycle library baseline. 

• The Datasets folder has been removed from the project root; dataset files belong under Scripts.

      • New projects now include the following pre-created folders: Batches, Output, Performance Files, and Test Case Validations

Cycle 2.26 / 2026-03-03  

New Features and Enhancements 

Step Plugin Architecture Updates 

Introduces a simplified Step Plugin architecture to make it easier for test automation engineers to create their own CycleScript steps. Key updates include: 

• Introduced a simplified plugin lifecycle model to streamline plugin initialization, loading, and execution. • Converted the WebDriver Step Plugin to the new architecture. 

• Enabled step plugins to call steps in other plugins. 

• Updated plugin directory structure and plugin loading behavior. 

• Replaced the OpenAPI-based step specs with a much simpler steps.yml format. 

Step Plugin SDK & Developer Tooling 

New developer tooling has been released to simplify plugin creation and management: 

• Released a Java Step Plugin SDK for plugin development to Maven Central. 

• Added example Step Plugin projects to serve as reference implementations.  • Introduced VS Code extension commands to create new plugin projects with boilerplate code.

Reporting & Platform Performance 

Platform performance improvements were implemented to support larger execution environments: • Implemented Report Dashboard performance optimizations. 

Documentation and Legal Updates 

Supporting documentation and legal attribution materials were updated to reflect current platform components and workflows: 

      • Updated high-impact copyright notices and refreshed EULA-related linking/attribution where applicable.
      • Updated User Manual documentation for the simplified Step Plugin architecture. 

Bug Fixes 

Step Guide Plugin Visibility 

An issue was identified where the Step Guide did not display steps provided by installed plugins, limiting discoverability of available functionality. This has been corrected to ensure all plugin-provided steps are surfaced properly within the Step Guide. 

• Fixed Step Guide filtering logic to correctly include plugin-provided steps. 

• Ensured plugin-loaded steps are indexed and displayed consistently across environments. • Rewrote the Step Guide as a standalone local component to improve performance and reliability. • Improved OpenAPI-driven step handling and execution workflows. 

• Enhanced overall step discovery and plugin development usability. 

Cycle 2.25.2 / 2026-01-28 

New Features and Enhancements 

Project and File Management Moved from Engine to Desktop IDE 

We have addressed some technical debt by moving project management from the Scala Engine to the Go Engine. This includes: 

• Create New Project 

• Open Project 

Additionally, we have removed usage of <cycle-app-data>/config/CycleProjectTemplate directory for creating projects, instead using the embedded template directory within Cycle itself. We also removed usage of <cycle-app-data>/config/cycle2settings.json file for the default settings for a new project, instead letting Cycle do that directly. This removes a source of backwards compatibility issues. 

We also moved the ChangeLogLevel message from the ApplicationSocket websocket to the ApplicationStream websocket. There are two log levels in Cycle, INFO and ERROR. When specifying the Preferences Verbose log files setting, "on" corresponds to providing both INFO and ERROR logs, whereas "off" provides ERROR only logging. 

Cycle 2.25.1 / 2025-12-18 

New Features and Enhancements 

Project and File Management Moved from Engine to Desktop IDE 

We have addressed some technical debt by moving project and file management from the Engine to the Desktop IDE. This includes: 

• Scala code no longer reads or writes the UserName field in the cycle2settings.json file. 

• UserName/currentUser is no longer stored in any 'settings' data structures in scala. 

• Current user is still passed to scala engine as it is today - by go in CLI mode, and by the Cycle Desktop IDE in gui mode

• Project open tabs persistence is handled exclusively by Cycle Desktop IDE 

• Project file watcher was moved from Scala to the Cycle Desktop IDE. A project file watcher is started when a project is opened, and stopped when a project is closed 

• File tree operations were moved out of Engine sockets into the Cycle Desktop IDE 

• File tab operations were moved out of Engine sockets and into the Cycle Desktop IDE. 

• The email connection test was moved out of the Scala Engine and entirely into the Cycle Desktop IDE and Report Service. 

• Create new project and read project details were moved to Go 

• Remove usage of <cycle-app-data>/config/cycle2settings.json file for default settings for new project, instead letting Cycle do that directly. This removes a source of backwards compatibility issues. 

• Remove usage of <cycle-app-data>/config/CycleProjectTemplate directory for creating projects, instead using the embedded template directory within Cycle itself. 


Report Dashboard Reporting is Required 

The Report Dashboard has been enabled by default, but previously was able to be disabled by the end user. This Feature removes the CYCLE_LOCAL_RESULT_SERVICE_ENABLED environment variable and its conditional logic. The Report Dashboard being enabled is now required for all test runs. This work is done in preparation of moving the test results data source from the internal H2 database to the Report Service. 

Bug Fixes 

• Fixed an issue where no syntax error was provided for incorrect syntax for the Cycle step to combine variables or values. The expected syntax error is now displayed. 

• Updated the step description to more accurately reflect the behavior of the step. The .png extension must be present in the file path. 

• Fixed FrameFinder to work with HTML4 frameset and frame tags. We also updated Spring Boot to 3.5.8, updated Selenium to 4.38.0 and fixed warnings. 

• Fixed "Frame" element finding strategy reset to ignore closed windows. 

• Added a new step to allow users to explicitly set Selenium's page load strategy when WebDriver is initialized. This addresses the discrepancy between Cycle's default and Softeon's required page load strategy for waiting for popups to become ready. 

• Re-implemented four MOCA steps that were erroneously removed in the 2.25.0 release. 

Cycle 2.25.0 / 2025-11-19 

New Features and Enhancements 

Deprecate Steps and Add Replacement Steps 

Cycle has deprecated 3 steps that work against result sets for both moca and sql. The deprecated steps are: • Given I assign row <ROW_NUMBER> column "<COLUMN_NAME>" to variable "<VARIABLE_NAME>" • Given I verify "<VALUE>" in row <ROW_NUMBER> column "<COLUMN_NAME>" in result set • Given I verify <NUMBER> rows in result set 

In preparation for migrating existing steps to step plugins, identical copies of the steps have been added for explicitly moca result set or sql result set. The syntax of these steps includes "moca" or "sql" in the step. The new replacement steps are: 

• I verify "<VALUE>" in row <ROW_NUMBER> column "<COLUMN_NAME>" in SQL result set

• I assign row <ROW_NUMBER> column "<COLUMN_NAME>" from SQL result set to variable "<VARIABLE_NAME>" 

• I verify <NUMBER> rows in SQL result set 

• I verify "<VALUE>" in row <ROW_NUMBER> column "<COLUMN_NAME>" in MOCA result set • I assign row <ROW_NUMBER> column "<COLUMN_NAME>" from MOCA result set to variable "<VARIABLE_NAME>" 

• I verify <NUMBER> rows in MOCA result set 

Bug Fixes 

Bug 9262: Group Tests Containing Scenario Outlines Only Show the Last Substring on the Report Dashboard 

Group tests that contained scenario outlines previously only displayed the last substring of the Group Test name on the report dashboard. This has been fixed so that the entire Group Test name is displayed. 

Cycle 2.24.0 / 2025-11-03 

New Features and Enhancements 

Moca Connectivity Utility 

We have created a small network utility to help diagnose MOCA connectivity issues in customer environments. It performs a battery of diagnostic checks and creates output that we can review after a user provides it to us. Details on how to get the utility, run it, and extract the output can be found in the Knowledge Base Article

Bug Fixes 

Bug 1771: Error Message Needed for: Cycle will not open when there are two .cycproj files in the same project 

The error message has been updated to be more specific: "Error: Found multiple .cycproj files in project directory. Only one .cycproj file is allowed in a project directory" 

Bug 2280: Infinite looping when using groovy and Cycle lists 

Cycle was resetting the iteration index for a list whenever groovy was called. Cycle has been updated to preserve the iteration index for a list when it calls groovy. Note that this will be true no matter what modifications the groovy script may make to the list. If the iteration index is '2' before groovy is called, it will be '2' after groovy is called, even if the list has all elements removed. 

Bug 4352: CLI not generating report when no -p arg is provided 

Cycle has been updated to use the current working directory as the project directory, if the project directory is not explicitly specified by the user. 

Bug 7838: Stuck loading icon in Report Dashboard while using While Loop with a wait step 

Bug 7880: Cycle step suggestion breaks on certain steps when using backspace to remove characters

Fixed an issue with completion logic for matches with literal tokens that start with ordinals, such as start. The case where an ordinal token begins a longer literal token is now handled correctly. 

Bug 7929: Validate step assist shows appropriate steps Failed using Trim keyword / Bug 9086: Step Suggest offering different order of steps in VS Code than in Desktop Application 

Bug 8118: Inserting a string that contains a $ causes issues with replace variables Cycle step 

Bug 8939: Incomplete uninstall when VS Code extension is open 

Added vscode to the list of processes that the installer will close. This is currently missing a prompt to save changes before closing, so be sure to ensure all changes are saved within VS code before selecting this option in the installer. 

Bug 8987: Tags are not auto-populating in CVT Files 

Tags are now auto-populating as expected in Group Test files. 

Bug 9805: Cycle-cli does not handle ctrl+c gracefully in Windows Terminal 

Ctrl+C now correctly terminates cycle-cli. 

Bug 10144: Input focus issue with 2.22 Steps / Bug 10046: Step incompatibilities between 2.22 and earlier versions 

Fixed an issue with parameter types between Cycle 2.22 and earlier versions where parameters included in quotations were not being recognized as valid values. During parameter type checking, Cycle will check the contents of quoted tokens to see if they are valid numbers, according to the desired number types of the steps. 

Bug 10048: Users not being logged off with "I close MOCA connection" step 

Bug 10168: Replace variables in XML step not replacing variable 

Previously, variable replacement was only supported for the xml body. Variables in attributes were not replaced. Now, Cycle supports variable replacement in xml attributes. 

Bug 10169: Implicit hovers and clicks on elements in Plugin causing failures 

Bug 10170: CLI does not report Scenario Outline failures 

Fixed an issue where CLI was not reporting Scenario Outline failures accurately. Cli reports scenario outline failures correctly again.

Cycle 2.23.0 / 2025-10-13 

New Features and Enhancements 

Eliminate Deprecated Steps from Cycle 

The Cycle Labs team is rolling out improvements to our steps using our new Step Plugin Architecture. As a result, we will be removing support for some long time deprecated steps. 

Please find the full list of deprecated steps in the Knowledge Base article linked here. These steps have been deprecated for quite some time, and replacement steps have been released over the years to cover the functionality provided by the deprecated steps. 

Be sure to update your Cycle Features and Utilities to use the newer replacement steps if you are still utilizing any of the deprecated steps. 

Please note for those using the Cycle Test Library for Blue Yonder WMS version 3.4.1 or earlier, you will need to update the following files with the replacement step "I assign "<VALUE>" to variable "<VARIABLE_NAME>"": • Test Cases\Base\Integration\BASE-INT-3030 Checkbox Example.feature (Lines 63, 67, 68, 73) • Utilities\Base\Data Management Utilities.feature (Line 70)  • Utilities\Base\Native App Utilities.feature (Lines 170, 194, 239) 

Bug Fixes 

Bug 9968: Cycle Desktop App: Output Panel - Scrolling Issue / Can't Nav Through Results 

Bug 9845: Report Dashboard: Test Run Sidebar Stops updating on a VM when disconnected 

Bug 8519: Cycle GUI menu doesn't load all options when opened without default project and authImplementation set to cycle-cli 

Cycle will now display all menu options when the authentication method is set to cycle-cli in the uisettings.json file. 

Bug 10063: Fix application security signing 

Fixed an issue where the application security signing was not being performed. This will ensure the warning upon download will no longer appear. 

Bug 10062: Missing step to verify browser in 2.22 

Added back the step "Given I verify current web browser is "<BROWSER>"". The step is now recognized and able to be executed. 

Cycle 2.22 / 2025-08-07 

New Features and Enhancements 

WebDriver Step Plugin 

The WebDriver step plugin is the first major plugin to utilize the Step Plugin Architecture (released in 2.20). It comes bundled by default in Cycle 2.22. The WebDriver step plugin introduces a few new project settings. To

ensure your projects are automatically updated with the default settings, you will need to open your project in the Desktop IDE before attempting to run tests locally or in your CI pipelines. 


New execution settings include: 

• Element finding strategy: indicates how the webdriver step driver will find or "locate" the elements on a page. • "Frame" finder strategy: Automatically searches through both the main part of the page or in any iFrames on the page (slower but backwards compatible). We recommend most testers should select this strategy to maintain backwards compatibility. 

• "Direct" finder strategy: Requires testers to be explicit about entering and exiting iFrames. • Default waiting timeout (ms): Sets the amount of time that Cycle will wait to find an element or validate a condition before failing a step. This is used for all steps, even if the step does not contain a "within" timeout. • Chromium switches: Cycle now enables testers to set any command line switches that they want for Chrome and Edge. 


New Web Steps for Handling Alerts 

We have renamed some previous "JavaScript" alert steps to use the more intuitive term "alert". Please note the original steps using the verbiage "Javascript prompts" or "JavaScript modals" have been preserved for backwards compatibility. 

• I click cancel on alert 

• I click cancel on alert within {timeoutValue} {timeoutUnit} 

• I click ok on alert 

• I click ok on alert within {timeoutValue} {timeoutUnit} 

• I copy text from alert to variable {variableName} 

• I copy text from alert to variable {variableName} within {timeoutValue} {timeoutUnit} 

• I scan {text} in alert 

• I scan {text} in alert within {timeoutValue} {timeoutUnit} 

• I type {text} in alert within {timeoutValue} {timeoutUnit} 

• I see {text} in alert 

• I see {text} in alert within {timeoutValue} {timeoutUnit} 


New Web Steps for Element Properties and Attributes 

You can now interact with HTML attributes and properties directly via the following steps: • I copy attribute {attribute} from element {locator} in web browser to variable {variableName} • I copy attribute {attribute} from element {locator} in web browser to variable {variableName} within {timeoutValue} {timeoutUnit} 

• I verify attribute {attribute} from element {locator} contains {text} in web browser 

• I verify attribute {attribute} from element {locator} contains {text} in web browser within {timeoutValue} {timeoutUnit} 

• I verify attribute {attribute} from element {locator} is {text} in web browser 

• I verify attribute {attribute} from element {locator} is {text} in web browser within {timeoutValue} {timeoutUnit} • I copy property {property} from element {locator} in web browser to variable {variableName} • I copy property {property} from element {locator} in web browser to variable {variableName} within {timeoutValue} {timeoutUnit} 

• I verify property {property} from element {locator} contains {text} in web browser 

• I verify property {property} from element {locator} contains {text} in web browser within {timeoutValue} {timeoutUnit} 

• I verify property {property} from element {locator} is {text} in web browser

• I verify property {property} from element {locator} is {text} in web browser within {timeoutValue} {timeoutUnit} Please refer to the User Manual for more information on understanding the difference between attributes and properties. 


New Browser Zoom Step 

A new zoom control step is now available. Please note that the step parameter should be a non-negative integer value. For example, "50" represents a 50% zoom. 

• I set the page zoom to <NUMBER> percent 

Please note that behavior can vary depending on the web page implementation. 

New Element Drag and Drop Steps 

• I click in element "<FROMLOCATOR>" and drag to element "<TOLOCATOR>" in web browser • I click in element "<FROMLOCATOR>" and drag to element "<TOLOCATOR>" in web browser within <NUMBER> "<TIMEOUTUNIT>" 

New File Input Steps 

These steps will type the specified text into the file input element/set the target file input element to the given file path value. 

• I set file input element {locator} to file path {text} in web browser 

• I set file input element {locator} to file path {text} in web browser within {timeoutValue} {timeoutUnit} Along with the introduction of new steps, we have deprecated web steps that were previously marked as "deprecated", as well as image matching steps. For a full list of these steps, please refer to the Knowledge Base article linked here

The WebDriver step plugin uses the latest version of Selenium (4.34), which includes Selenium Manager; this means Selenium will automatically attempt to download and install the appropriate WebDriver executables if they are not found on that machine or if they are out of date. If a tester explicitly provides WebDriver paths as execution settings, then Cycle will use them. If a tester leaves the WebDriver paths blank, then Cycle will default to using Selenium's mechanisms for searching the system path or using Selenium Manager; in that case, it is important to ensure that your version of Chrome is up to date. 

The existing web steps will work the same way, but under the hood, they run much more efficiently. Based on performance benchmarks, web tests may run up to 25% faster with the new WebDriver step plugin.


Report Dashboard Improvements 

Syntax highlighting: The scenario trace in the Report Dashboard now has syntax highlighting that mirrors the feature file editor in the Desktop IDE. This feature makes it easier for testers to read their test results. Mark restarted scenarios in a group test worker: The Report Dashboard now clearly indicates when a worker has been restarted during a group test. By clearly labeling when these restarts occur, it is easier for the tester to understand test results for troubleshooting. 


Language Server Updates 

Make the language server distinguish between scenario types: The language server can now nuance the difference between test case scenarios and "@wip" scenarios. This is important for the VS Code extension to be able to distinguish what should appear in the Testing view. 

Feedback Items Addressed 

Feedback 7970: Cycle should have a better mechanism for interacting with the Windows file browser pop up

Customers requested the ability to interact with a Windows file browser pop up for the purpose of uploading a file into their system. This was not supported with previous steps. We have introduced new steps with the WebDriver implementation to allow this functionality (see above section for new WebDriver steps). 

Feedback 8381: Show that Group Test workers were restarted in Report Dashboard 

Feedback was received that it would be helpful to have an indicator that the repeated failed scenarios in the report dashboard were from workers restarting. This feedback item was implemented through the feature to mark restarted scenarios in a group test worker. 

Feedback 7476: Report dashboard should have a way to more easily distinguish between lines displayed 

This feedback item was addressed by adding syntax highlighting and report dashboard line indents (implemented in Cycle 2.21). 

Feedback 8500: Enable way to retrieve value of HTML elements attribute 

Customers suggested it would be nice to have the ability to retrieve the value of an HTML element attribute. We added new steps to the upcoming WebDriver step plugin for copying and verifying web element attributes (see above section for new WebDriver steps). 

Bug Fixes 

Bug 4505: Windows uninstall can fail / Bug 9445: Cycle Setup Installer can't overwrite files if the App is open 

Added a checkbox option on install that, if selected, will close background processes related to Cycle, including cycle.exe, cycle-cli.exe, cycle-result-service.exe, chromedriver.exe, edgedriver.exe, and IEDriverServer.exe. 

Bug 6263: Electron App: Packages - "Given I open Chrome using basic authentication" not working with new web steps 

The implementation of the WebDriver step plugin fixes an issue with using the basic authentication web step. 

Bug 6399: Caching issue with Pendo prompts for new installer 

Cycle will now display in-app notifications that an update is available when new versions are released. The link will download Cycle without having to reauthenticate. 

Bug 7931: CYCLE_WEB_DRIVER_SERVICE_ENABLED set to true causes failures in text finding within elements 

The implementation of the WebDriver step plugin fixes an issue with failures in text finding within elements. 

Bug 8981: Cycle 2.20 not sending email summaries 

Addressed the issue of email summaries not being sent. 

Bug 9171: Electron App: Project Settings - Reporting Settings not Passed in from Project Level 

Bug 9178: Group Test Workers do not appear in alphanumerical order 

Group Test Workers now appear in alphanumerical order. 

Bug 9907: Headless browser default window size is too small for Blue Yonder tests

Headless browsers will now be automatically set to a standard size of 1920x1080 upon initializing headless browser WebDriver instances. 

Bug 9434: Electron App: Fix Typo on Group Test screen 

Fixed a typo from "Add an entry to being building a Group Test" to "Add an entry to begin building a Group Test" 

Bug 9440: Electron App: Fix Typo for Blacklist Variables in Reporting Settings 

Bug 9926: Update Cycle's README 

Updated the links in Cycle's readme to reflect the most current domain usage for the Cycle website, Cycle Terms, including End User License Agreement, and Cycle Third-Party Software Usage and Licenses. 

Known Compatibility Issue 

There is a known issue when downgrading from Cycle 2.21 or later to a previous version of Cycle. This issue is caused by changes to default settings in the cycle2settings.json file. More details on the issue and the steps to resolve the issue can be found at the Knowledge Base article linked here

Cycle 2.21 / 2025-05-09 

New Features and Enhancements 

Report Dashboard Navigation Enhancements 


Group Test Enhancements:
In the previous release, the dashboard presented the scenarios for a worker separately, which made troubleshooting difficult as testers needed to bounce back and forth between views. Now, all scenarios for a worker are displayed in the same place. 

Scenario Outlines: Scenario Outlines are now represented as a level of hierarchy in the navigation sidebar. A tester navigates Feature > Scenario Outline > Example rather than Feature > Example. This provides a cleaner, more intuitive test result presentation that better mirrors the test specifications. 


Report Dashboard Test Run Deletions 

A tester can easily remove old or erroneous runs while testing. They can also delete large runs that take up too much storage space. By intentional design, parts of a test run (like an individual Scenario) cannot be deleted to avoid missing data. 


Report Dashboard Scenario Display Enhancements 

The T and F letters in the true/false arrow status result icons have been made more prominent in the Report Dashboard so that testers can more easily troubleshoot tests. 

Line wraps are now indented in the report dashboard to allow testers to easily scan through scenarios line by line and know where the steps are. 


Java 21 Upgrade 

The Java version that Cycle is bundled with has been upgraded to Java 21. This should enable Cycle to run more efficiently. Additionally, testers can now use a more current Java version when developing step plugins. 

Feedback Items Addressed 

Feedback 7537: Consider implementing a setting that sets a cap on the output storage before historical reporting data is overwritten for the Report Dashboard

Implemented this feedback item through the addition of the feature to delete test runs. This allows a user to identify the storage cap without unnecessarily deleting test run data. 

Bug Fixes 

Bug 4237: Assigning SQL results NULL values to Cycle variables 

Addressed the issue where Cycle was not returning an error message to indicate it does not support assigning nulls to variables. If the user attempts to assign a null value to a variable, Cycle will return the error message "Cycle does not support assigning nulls to variables". 

Bug 8517: Resolve UX issue with icon and text overlap in Report Dashboard scenario view 

Bug 8793: Scenario Outlines cannot be imported with SQL or MOCA examples 

Bug 8980: "I verify test case has been executing for less than <X> seconds" step causing Cycle to not terminate upon .feature file execution completion 

Addressed the issue where Cycle was not terminating test executions within the Report Dashboard when the step completed. 

Bug 8996: Cycle Plugin loading error is nondescript 

When trying to open a plugin with an invalid schema in Cycle, Cycle would display an error message indicating the schema is bad, but not why. This fix includes updating the error that is displayed to display the full error. 

Cycle Testing VS Code 1.6.0 / 2025-02-26 

VS Code checks for the Cycle installation on the local machine. If Cycle is missing or has an out-of-date version, VS Code notifies the testers to download the latest version. These commands make Cycle test development more efficient. They also make the coding experience feel more native to VS Code. All features of the Cycle Testing extension now have French translations. This includes commands, menus, and messages that originate from VS Code. No other parts of the Cycle Testing Platform have yet been localized. Any messages originating from Cycle will not be translated. To update your display language in VS Code, open the VS Code Command Palette, type in "Configure Display Language", and select francais (fr). 

Cycle Testing VS Code 1.4.0 / 2025-01-28 

VS Code now has commands for creating new Feature files as well as for opening resources like the user manual, knowledge base, and admin panel. For more information on the commands included, please refer to the User Manual. 

Cycle 2.20 / 2025-01-29 

New Features and Enhancements

New Report Dashboard Layout 

The Report Dashboard has been redesigned with a new, more intuitive layout. A key update is the addition of a collapsible navigation sidebar, which displays all your local test launches. This allows users to easily drill into specific scenario results as needed and maximizes screen visibility for step details, improving overall user experience. 

Group Tests are now supported within the updated Report Dashboard layout, allowing you to manage and review tests more efficiently. 

Implemented the Step Plugin Architecture 

The new Step Plugin Architecture allows users to extend Cycle's functionality by creating custom CycleScript steps using step plugins. 

• A step plugin acts as a local service that extends Cycle with new steps through an API. • One plugin can define multiple new steps. 

• Steps are specified through an OpenAPI specification for clarity and ease of use. 

• Step plugins can be developed in any programming language, but Go and Java are recommended for compatibility and performance. 

• For detailed instructions on how to create your own steps, please refer to the Cycle User Manual. Removed dependency on H2 Database for CSV and Email Summary Reports 

CSV and Email Summary Reports now utilize the Result Service instead of relying on the H2 MVStore, improving performance and reliability. 

Removed stdout capture for Java App Steps driver 

We've eliminated the stdout capture for the Java App Steps Driver, enhancing system efficiency and performance. 

Feedback Items Addressed 

Feedback 7999: Details should not persist when selecting a different feature/scenario on the left panel in the report dashboard 

Fixed an issue where details persisted in the step details panel when switching between features or scenarios in the Report Dashboard. Now, selecting a different item in the left panel resets the step details accordingly. 

Feedback 7839: Report Dashboard scroll height is too large to show Cycle branding Adjusted the Report Dashboard's scroll height, ensuring that the Cycle branding remains visible, even with a large number of executions. 

Bug Fixes 

Bug 6722: Missing .api file extension when selecting a file to find and open 

Fixed an issue where selecting a file to open through the Cycle application did not offer the option to filter for .api files. 

Bug 7988: Report Dashboard button overlap with large terminal size 

Resolved a button overlap issue within the Report Dashboard when using a large terminal size. 

Bug 7991: Using "Jump to Failure" for a test that fails in both the Test Scenario and the After Scenario results in jumping to last failure instead of first failure 

Addressed an issue where the "Jump to Failure" button would jump to the last failure in the test case execution. This strayed from the expected behavior of jumping to the first failure.

Bug 7682: Jenkins Parallel execution Report Generation timing out with Report Dashboard enabled 

Bug 7887: Incorrect Subscriptions in App.tsx 

Fixed issue where we were subscribing to SuiteEndEvent twice instead of subscribing to ScenarioEndEvent. 

Cycle 2.19 / 2024-10-02 

New Features and Enhancements 

Report Dashboard 

Note: The Report Dashboard is not suitable for viewing Group Test results at this time. Users can now view their test results through the new Cycle Report Dashboard. This dashboard is easily launched from the Cycle application by clicking the "Launch Report Dashboard" button on the right side bar. It will display the tests executed along with their scenario and step details in real time. Test results can be expanded or collapsed for the amount of detail desired. Each step will return important troubleshooting information such as duration, file location, error details, screenshots, and snapshot information. 

The Report Dashboard is a local web viewer with a configurable port. By default, Cycle will set the port dynamically. A journal mode setting is available to define how the journal file for the database is stored and processed. By default, the journal mode is set to "WAL", or write-ahead logging. WAL is significantly faster in most scenarios, but does not work over a network filesystem. Other valid journal mode settings are:

       • DELETE: Default mode, deletes the journal file after a transaction. 

• TRUNCATE: Truncates the journal file instead of deleting it. 

• PERSIST: Keeps the journal file but reuses it. 

• MEMORY: Stores the journal in memory, faster but less safe. 

• WAL: Write-ahead logging, offers better concurrency and performance. 

• OFF: No journaling, unsafe in case of crashes. 

The port and journal mode settings can be overridden by manually setting them in the file located at C:/Users/<your-user>/AppData/Roaming/Cycle/config/.env. 

Additionally, users can opt out of using the Report Dashboard by setting CYCLE_LOCAL_RESULT_SERVICE_ENABLED = false in their .env file. This file can be overridden for cycle-cli executions using the --env-file argument. VS Code Extension 

With the release of the "Cycle Testing" VS Code extension, users can now edit their Cycle projects in VS Code. This includes support for: 

• Syntax highlighting for the CycleScript code, similar to the colors in the Cycle application • Step Assistant documentation when a user hovers over a step 

• Suggestions to automatically complete the step 

• Highlighting of syntax errors 

• CTRL+/ to toggle comments on and off 

• "If" and "While" statement snippets to help users write code faster 

Go-To Scenario Compatibility 

Along with the Cycle VS Code Extension release, Cycle 2.19 offers "go-to scenario" compatibility. Users can CTRL+Click an "I execute scenario" step or its shorthand equivalent 'Given "<Scenario_Name>"' and it will go to

the definition of that scenario. In the event there are multiple scenario definitions with the same name on different project layers, it provides a default editor popup to select which one you want. 

Interact with Shadow DOM Elements Using the 'multi' Locator in Cyclescript 

This build introduces the option for the "multi" locator to extend Cyclescript's capabilities to interact with web elements nested within Shadow DOMs. 

Disabling the Search Engine Choice Screen in Chrome 

The "--disable-search-engine-choice-screen" argument is now passed in by default into Chrome. This bypasses the screen that prompts users in the EU to choose their search engine each time Chrome is opened. Removal of Gin-Debug Messages from cycle-cli Logs 

GIN-Debug messages will no longer show by default in cycle-cli logs. 

Feedback Items Addressed 

VS Code Cycle Extension documentation to include EPERM failures 

Documentation has been updated in the README to include EPERM failures. 

Improve API test report details 

After calling an API in Cycle, users can now assign the response time to a variable through the step 'I assign http response time to variable "<variable>"' 

Request to add <Modifier_Key> click steps for Java App 

Steps are now available to <MODIFIER> click objects in Java Apps. 

Clicking the View Terminal Button to View Terminals 

The terminal window will now automatically become visible upon execution of a terminal test. 

Bug Fixes 

Bug 6312: Cycle npm package high vulnerabilities 

Resolved Cycle npm package high vulnerabilities. 

Bug 6395: API bug with 2.18 

Fixed issue where Cycle crashed by sending a GET, then POST, then switching back to GET. 

Bug 6849: Integrated Security/Windows authentication for SQL Server still not resolved 

Bug 6880: Custom Report templates missing 

Report folder is generated in new Cycle projects. 

Bug 7073: Step Assistant not working 

The step assistant is working as expected to show the documentation for the step selected within the editor. 

Bug 7243: .env files not created until Cycle opened twice 

A .env file is now created upon installation and opening of the application. 

Bug 7764: API file save and test results in blue screen 

Fixed the issue where an invalid endpoint was not handled appropriately.

Cycle 2.18 / 2024-04-10 

New Features and Enhancements 

Cycle Proxy Config Improvements 

Proxy configuration, if necessary, has now been consolidated into the file located at 

C:/Users/<your-user>/AppData/Roaming/Cycle/config/.env. This file can be overridden for cycle-cli executions using the --env-file argument. 

Support for Client Credentials Authentication Flow 

Within user management, a new feature called "Application Secrets" has been introduced. This feature allows you to generate a client ID and client secret specifically for authentication purposes when running cycle-cli. This is particularly useful in scenarios such as CI/CD pipelines, where you prefer autonomous authentication not tied to a specific user. Instructions on generating OAuth2 client credentials can be found at this link in the Cycle User Manual. 

Improve logging for clilauncher process 

Logging from the main CLI process has been enhanced to now direct to a separate "cyclecli.log" file located in your app data directory. This implementation includes log file rollover and purging functionality, with a maximum file size of 10MB, a maximum file age of 30 days, and a maximum of 5 backup log files. 

Feedback Items Addressed 

API Call URL field does not propagate query parameters 

When query parameters are included in the URL field, they are now incorporated into the resulting HTTP request. API Request - store repeated headers as a list 

We have updated our system to store repeated headers in an HTTP response as a comma-separated string, ensuring consistency with HTTP RFC2616. 

Add step "I assign SQL status to variable" 

A new step, "I assign SQL status to variable" has been added to enable referencing the variable from subsequent steps. 

Parse CSV files in steps should not be line oriented 

Previously, CSV file parsing operated on a line-by-line basis. To address data inconsistencies caused by new lines within CSV record elements, we have implemented parsing based on CSV records rather than individual lines. 

Add support for integrated security/windows authentication for SQL Server 

We've introduced a new step called I connect to Microsoft SQL Server database at "HOSTNAME;integratedSecurity=true" and upgraded the JDBC driver to enable Integrated Security/Windows Authentication support for MS SQL Server. 

Bug Fixes 

Bug 3319: Pipe character not escaped during step execution 

The step documentation has been updated to be explicit that the parameter is a regex. 

Bug 5086: Playlist executing out of order 

Bug 5579: Group test 'Go to Line' Bug

This UI bug has been fixed so the "Go to Line" functionality now works correctly. 

Bug 5902: Uncommented non-CycleScript text causes parsing error when feature is imported 

Bug 6109: Step Guide Deprecated Step Replacements Incorrect 

The incorrect deprecated step replacements have been updated. 

Bug 6114: Cycle returns 0 status if invalid token is passed into cycle-cli and no tests are executed 

Bug 6184: cycle-cli token issues 

Authentication errors will not be printed to the console during CLI executions. 

Bug 5983: Cycle 2.17 Reset Password Subscription prompt 

The bug which would necessitate a user to log out and log back in after resetting their password has been fixed. 

Bug 5964: Verbose logging oddities 

The bug in handling log level change requests has been fixed. 

Bug 5966: WebDriver Frame Steps Affecting Element Location 

The new web driver in Cycle will now switch between tabs that have been opened automatically successfully, rather than only those that have been opened explicitly by Cycle steps. 

Cycle 2.17.1 / 2024-02-26 

Bug Fixes 

Bug-5826 

The parser now correctly handles multiple tags on a single scenario that span multiple lines. 

Bug-5901 

The cycle-cli output summary for a playlist will now correctly output failures when the same feature is included in a playlist multiple times. 

Bug-5922 

The parser now correctly handles Java App locators containing triple quotes. 

Bug-5923 

Default timeout settings for the connection to the Cycle engine from the UI which were causing the output panel to not render properly were removed. 

Cycle 2.17 / 2024-02-05 

New Features and Enhancements

Proxy Aware Authentication 

We've added a new, opt-in option for authentication flow for those users who are using Cycle behind a proxy server. Please see the Cycle Knowledge Base article linked here for configuration instructions. Web UI Step Enhancements 

We've also added an opt-in option for skipping implicit iframe navigation while running web steps, which can improve test execution time. Please see the Cycle User Manual for configuration instructions. Note that opting into this feature is not required and may not be backwards compatible with your existing test scripts. 

Bug Fixes 

Bug-1699/4430/5290: Step assistant does not populate for steps without populated parameters in box. 

Step assistant has been updated to be more robust in the handling of parameters. 

Bug-4853: Go To Line in Output Panel for new/unsaved features puts the UI in unrecoverable state. 

Bug-4986: Empty state is too large to fit within min window size. 

The empty states for all components have been adjusted to be more responsive. 

Bug-5278: Selenium Dev Tools dependency is out of date. 

All selenium dependencies for web steps have been updated to 4.16. 

Default debugging output for all libraries have been added to startup scripts. 

Bug-5359: .api files save process cancelled creates inability to save file. 

The interaction with the system save dialogs have been fixed. 

Bug-5394: Cycle app is not showing error window for unauthorized user. 

Updated authentication to show the errors for users who are not associated with a valid subscription. 

Bug-5492: Step suggest displays after every matching character of step. 

This behavior has been addressed as part of a language server overhaul in 2.17. 

Bug-5580: Manually created go http.Clients do not use proxy information by default. 

Cycle 2.16 / 2023-11-27 

New Features and Enhancements 

API Call Execution from the Editor 

Building on the API call functionality introduced in version 2.15, version 2.16 introduces the ability to execute API calls directly from the editor. Key benefits include: 

• Validation of API Calls: You can now validate the configuration of your API call directly from the editor before executing the call from a feature file. 

• Enhanced Visibility: Gain better visibility into the API response as you work on your feature files.

• Variable List and Sample Data: We've retained the variable list panel in the API editor for quick reference. A new "Sample Data" panel allows you to provide data for the execution of the API call directly from the editor. Sample data values are available for variable substitution but are not stored with the project, so sensitive data such as tokens will not be committed to your repository. 

Bug Fixes 

Bug Fix - 4660: Stop button not working when "restart failed worker" is selected. 

Bug Fix - 4578: Error 933 returned when running SQL files against an Oracle database. 

Bug Fix - 4773/5001: The Cycle 2.15 cycle-cli command was generating extra debug information before test execution. 

We've addressed this issue by suppressing the additional logging configuration from the console when running cycle-cli. 

Bug Fix - 4849: Tokens were being cached when users logged into Cycle before being assigned to a subscription. 

When logging into Cycle before being assigned to a subscription, the token will no longer be cached. 

Bug Fix - 4852/4856: Server tuning settings were not being saved after exiting Cycle. 

Bug Fix - 5120: Application not fully exiting when "Close apps after execution" is toggled OFF. 

Cycle 2.15 / 2023-09-20 

New Features and Enhancements 

New API Testing 

Cycle 2.15 introduces a new approach to API testing, reflecting a focus on improving usability, flexibility, and efficiency in API integration and testing processes. 

• Simplify Steps: The new API testing reduces the number of steps needed to interact with an API. • Looser Coupling: Features don't need to have intimate knowledge of how the API works, offering a flatter learning curve. 

• Variable Flexibility: Users can use whatever variables they want within the API, eliminating the need for variable names to match the keys for headers and parameters. 

• Autocomplete: The API calls feature offers autocomplete. 

Modifications to List Behavior

Any modifications to a list will now automatically reset the iterator used in the "I assign next element in list to variable" step, ensuring a more seamless experience when working with lists. 

New Java App Step 

A new step for Java app automation has been added: "I enter <TEXT> in last object 

<cssSelector>:<OBJECT_IDENTIFIER> in java app within <NUMBER> seconds." 

Enhanced Chrome Authentication Support 

Two new steps have been added to streamline interactions with Chrome authentication: • "I open Chrome web browser using basic authentication with saved credentials" 

• "I open Chrome web browser using basic authentication with username <user> and password <pass>" Headless Edge Support 

Headless Edge is now supported. You can execute your automation scripts in a headless Edge browser environment for enhanced performance and resource optimization. 

Cycle 2.14 / 2023-08-09 

Added 

• 1. Access tokens have been added to Cycle-CLI. Starting with this release, all Cycle-CLI commands need to have a valid access token to execute the Cycle test. Please see the User Manual and Knowledge Base for more information on using access tokens with Cycle-CLI. 

• 2. PostgreSQL is now supported natively in Cycle. The new "I connect to PostgresSQL database" step was added as well as the ability to create a new PostgresSQL connection in Project Settings. • 3. Web tests executed using the Edge web driver now support remote headless execution. • 4. Native SQL Variable Substitution Step allows users to replace specific values in SQL queries with variable placeholders, enhancing security, performance, and code maintainability. 

Fixed 

• 1. Improved auto-suggest functionality (autocomplete/type-ahead). Auto-suggest now displays suggestions based on matching characters rather than relying solely on full words, and incorporates fuzzy suggestions for steps. 

• 2. Addressed an issue that previously prevented users from changing the commit frequency of the data store. 

• 3. Projects that fail to load due to permissions issues on shared drives will now abort project loading and provide an alert. 

• 4. Corrected a typo on the "Connection" label in the Project Settings. 

Cycle 2.13.1 / 2023-06-01 

Added 

• 1. Added new setting to disable automatic screenshots of failed web steps. See Cycle Settings > Execution Settings > Webdrivers & Browsers > Web Screenshots in the Cycle User Manual. This functionality is targeted for users who want to run group tests involving web steps.

Fixed 

• 1. Fixed issue related to the step suggestion in the editor. 

• 2. Fixed issue maintaining cursor position in the editor when switching tabs. 

• 3. Fixed issue with displaying error messages during authentication. 

Cycle 2.13.0 / 2023-04-12 

Added 

• 1. Added the following file hash to these release notes for users with security policies that require them to verify the file hash of the installer: 

CDE47B89EF1CF1687017F539A3F8A053689FD8AF2B4D3B2F5B06081BF816CCF0 • 2. Added two Steps that save terminal screenshots as PNG images: I save terminal screenshot as image and I save terminal screenshot as image "<SCREENSHOT_FILE_NAME>"

• 3. Added button to Output Panel to resume live feed. 

• 4. Added toggle to view/hide password entries in datastore credentials. 

• 5. Added new Go menu item with options for tab navigation/moving tabs. 

• 6. Added new Run menu item with options to execute the selected tab. 

• 7. Added new Toggle Developer Tools item to the Help menu. 

• 8. Added Monitor Execution button to Group tabs. 

• 9. Added ability to include environment variables in datastore credentials. 

• 10. Added Steps to support testing java apps like BY Dispatcher WMS and BY ESO. 

Changed 

• 1. Improved authentication process - login now happens within the app using a second window, instead of an external browser. 

• 2. Replaced the Application toolbar with a global execution bar. 

• 3. Changed how execution works via a global execution button. Users may only execute one test at a time. • 4. Improved Cycle hotkeys so they only work when the application has focus. 

• 5. Updated to a new editor (Monaco Editor) with improved find/replace functionality. • 6. The Output Panel is no longer automatically shown when a test is executed. 

• 7. Changed experience of editing group test items so they are now edited in a modal instead of inline. • 8. Improved performance of the Output Panel during single Feature execution. 

• 9. Moved the Hotkeys menu item from the Tools menu to a new View menu. 

Removed 

• 1. Removed Import Project option from the File menu, hotkeys, and other UI buttons. • 2. Removed buttons to create a Scenario, background, or other code blocks from Feature tab. • 3. Removed Toggle Image Mode from Editor. 

• 4. Removed Record Terminal functionality. 

• 5. Removed Example Set Editor. 

• 6. Removed Report Enabled display icons on the right side of the bottom status bar. • 7. Removed Extract Data tool from Tools menu and right-hand drawer.

• 8. Removed splash screen. 

Cycle 2.12.1 / 2022-11-02 

Changed 

• 1. Updated Apache Commons Text Library from version 1.2 to version 1.10 to address any potential security vulnerability associated with other Cycle dependencies affected by CVE-2022-42889

Cycle 2.12.0 / 2022-10-04 

Added 

• 1. Added a Step that supports a user-friendly approach to copying environmental configuration data from one environment to another via a Feature File: I extract data from MOCA source to "<DIRECTORY>" using config file "<CONFIG_FILE_PATH>"

• 2. Added an in-app guide pointing new Cycle users to a repo of useful example features. • 3. Added a link to Cycle University to the Help Menu. 

Changed 

• 1. Enabled passwords stored in third-party secure password managers to be injected into tests by leveraging environment variables in Saved Credentials or Config files. 

• 2. An error message will now be provided if the file path specified in the Step I assign values from config file "<CONFIG_FILE_PATH>" to variables does not exist. 

       • 3. Enhanced the Pendo integration in Cycle to support version-specific in-app help guides and usage data. 

Fixed 

• 1. Fixed an issue that caused duplicate web reports to be created when a user had web reports and datastore reporting both turned on. 

• 2. Fixed an issue that caused the Example Sets Editor to open in an error state. 

• 3. Fixed an issue that caused Cycle tests to either fail or hang when the Steps I save terminal screenshot and I save screenshot were both used in the same Feature. 

• 4. Fixed an issue that caused report completion messages and notifications to point to an incorrect web report path. 

• 5. Fixed an issue that prevented variables set using CSV files from being recognized in Groovy scripts. 

Cycle 2.11.0 / 2022-07-26 

Added 

• 1. Added a new Summary (Default) Web Report Template option in Reporting Settings. • 2. Added a new browser option for "Edge IE Mode" to Web Steps.

• 3. Added Pendo integration to enable usage data collection in support of data-driven product improvements, and publishing of in-app user guides. 

• 4. Added a new IBM iSeries DB2 database Step: I connect to iSeries "<CONNECTION>" logged in as "<CREDENTIALS>"

Changed 

• 1. Changed default Web Report Template to Summary (Default). 

• 2. Improved performance of Summary and Detailed Web Reports so they generate more quickly. • 3. Updated format of Summary Web Report and Detailed Web Report to match Cycle Labs standard style and design. 

• 4. Upgraded bundled OpenJDK instance to version 1.8.0_331 for enhanced security. 

Fixed 

• 1. Fixed an issue where an error occurred with the Step I copy text inside element <element> from character x through y in web browser due to incorrect character indexing. 

• 2. Fixed the Cycle-CLI argument --settings so it is now recognized when used. 

• 3. Fixed "Send Test Email" button in Reporting Settings. 

• 4. Fixed Cycle Labs copyrights. 

• 5. Fixed Step I verify MOCA status is not <STATUSNUMBER> so it now properly checks status number. • 6. Fixed Steps with incorrect references to replacement Steps. 

• 7. Fixed Cycle-CLI sending zero instead of the nonZero exit code in non-passing situations. 

Cycle 2.10.0 / 2022-04-11 

Fixed 

• Fixes an issue that caused the internal H2 database to lock during group tests executed by Cycle-CLI. • Fixes an issue that caused combined variables containing angle brackets to display improperly in Output Panel and web reports. 

Changed 

• Changes the way Cycle is built and packaged to unlock additional performance gains seen most notably in group testing. 

• Enables users to pass parameters directly to the Java Runtime Environment to tweak performance and handle exceptions. 

• Incorporates patches and fixes for outdated dependencies providing a more secure application. • Updates branding and colors to meet current Cycle brand standards. 

• Removed User Portal link from Help menu because it was sunset in March 2022. 

Cycle 2.9.2 / 2022-03-01 

Fixed

• Addresses an issue that caused 2.9 and 2.9.1 to expire on March 1. 

Cycle 2.9.1 / 2022-02-21 

Fixed 

• Fixes an issue that kept local terminal Steps from connecting to the local terminal. 

Cycle 2.9.0 / 2022-01-21 

Fixed 

• Removed unused Conscrypt Java Security Provider which conflicted with existing connections requiring SSL. 

• Bug fix: "I save terminal screenshot" Step updated to save to default project directory. 

Changed 

• Changes user authentication to now use Cycle Cloud online login. 

• Changes the program expiration date of March 2022 to open-ended. 

• Updated links in Help menu. 

• Changed install directory name from Tryon Solutions to Cycle Labs. 

• Signing Certificate for installer updated to Cycle Labs. 

Added 

• Adds Google pixel, triggered at each test execution, to improve usage tracking of Cycle. • Adds new Cycle Steps for assigning files, environment files, and cased strings to variables. 

Cycle 2.8.2 / 2021-09-07 

Fixed 

• Fixes issue with connecting to terminals via SSH. 

• Fixes "I split string on delimiter into list" Step so that values from the resulting list can be accessed and copied to variables. 

Cycle 2.8.1 / 2021-07-13 

Added 

• Adds better error messages for Java App driver failures. 

• Adds new captive shell SSH connection Steps to use a private key or port forwarding. • Adds new SSH encrypted terminal Steps with credential parameters. 

• Adds new custom web reports in Jasper format.

• Adds Java App Inspector under Tools menu to help identify Java App elements. 

Changed 

• Changes default new project template to include new example Jasper reports. 

• Changes default web report format to use Jasper report standard. 

Fixed 

• Fixes within logic for Java App driver steps to use Cycle's within logic instead of the Marathon Driver's. • Fixes issue accessing Cycle's Reporting settings when Variable Blacklist is in use. • Fixes issue causing CPU process spike when executing Vocollect Scenarios. 

• Fixes issue opening Java driver if last Scenario didn't close it with I close java app Step. • Fixes issue with Cycle terminals recovering from xterm OSC sequences. 

• Fixes issue with terminal resizing Steps not reflecting the updated terminal size in Cycle. 

Cycle 2.8.0 / 2021-04-08 

Added 

• Adds a new Step for defining a port mapping for ssh connections. 

• Adds improved VT220 terminal emulation support. 

• Adds new family of Cycle Steps for interacting with Java (Swing) applications (JavaAppDriver). • Adds new Steps for assigning variables from a config file. 

• Adds new Steps for creating SSH connections using a private key. 

• Adds new Steps for Port Forwarding within SSH connections. 

• Adds new Steps for replacing Cycle variables within XML and JSON. 

• Adds new Steps to take and save a screenshot of the terminal. 

• Adds new variable manipulation Steps. 

• Adds new Steps for "I scan in web browser". 

• Adds support for new character sets for multi-byte characters in terminal emulation. • Adds the ability to configure local and remote port forwarding for ssh connections. 

• Adds the ability to use a private key when connecting to a terminal over ssh. 

• Adds the new Step "I verify MOCA status is not <STATUS_NUMBER>". 

• Adds the tracking of number of rows resulting for SQL queries. 

• Adds an automatic screenshot to the Step I do not see element in web for verification. 

Changed 

• Changes the default directory structure used when creating a new project to be in line with best practices. 

Cycle 2.7.1 / 2020-09-03 

Added 

• Adds fuller set of examples to Step Assistant for ...In App key press Steps.

• Adds more helpful error indicating which MSQL file failed in the event of a failure executing a MOCA dataset. 

• Adds the new Step I assign USERNAME from credentials...to variable... 

Changed 

• Changes instructions for Edge browser web testing setup for newer version of Edge. • Changes the Step Delay setting to only affect Steps that interact with Web, Terminal, Native App or use keyboard/mouse. 

Fixed 

• Fixes an issue that caused the Open Project and Import Project toolbar buttons to not open the appropriate modals. 

• Fixes issue with variable replacement in MOCA scripts, datasets, and local syntax for MOCA 2020.1. • Fixes issue with Web Steps using the Once keyword not taking a screenshot if they failed. • Fixes an issue with Cycle using the Windows default character encoding, rather than UTF-8. 

Cycle 2.7.0 / 2020-05-29 

Added 

• Adds new section to Cycle's Project Directory panel for creating, viewing, and editing of Example Sets within Cycle. 

• Adds a Safe Delete for tags that only deletes if a tag is not used by any other Example Sets. • Adds a new menu item for File > Recent > Projects to easily reopen recent projects. 

• Adds a new web Step for "I see element is clickable". 

• Adds the ability to rename, sort, filter, tab between cells, and delete example sets. 

• Adds validation logic for column names in Example Set Viewer. 

• Adds validation to Example Sets to disallow duplicate column names. 

Changed 

• Changes Data Store Connection settings to a top-level option on the Project Settings panel. • Changes Data Store Connection settings to be locked while there are unsaved changes in one or more open Example Sets. 

Fixed 

• Fixes an issue causing Cycle to lag significantly when closing or opening a project with many tabs open. • Fixes an issue that stopped Cycle from opening saved playlists under certain conditions. • Fixes an issue with the unsaved changes indicator not always displaying on Example Set tabs with unsaved changes. 

• Fixes an issue with the View Details button on passed terminal steps not opening the details dialog box. 

Cycle 2.6.1 / 2020-04-02

Added 

• Adds new Steps for assigning dollar variables and chevron variables to MOCA environment variables. • Adds new Step "I verify variables (Comma Separated List) are assigned" 

• Adds new Step "I unassign variables (Comma Separated List)" 

• Adds new Step "I verify screen is done loading in terminal" 

Fixed 

• Fixes an issue with html reports not always generating after Cycle CLI executions. • Fixes an issue with how Cycle logs usage. 

Cycle 2.6.0 / 2020-02-28 

Added 

• Adds a Step for "I see element is clickable" to validate web element clickability. 

• Adds a Step to open headless chrome browser and a new setting to default to a headless webdriver of remote machines. 

• Adds new 24 month version sunset policy. 

• Adds improved performance for SSH terminal Group Tests. 

• Adds new Steps for assigning variables from duration, execution id, and chevron/dollar variable conversions. 

• Adds new Step to click in an element and drag a specified number of pixels. 

• Adds new Step to unassign a variable. 

• Adds new Step to verify a given Scenario exists. 

• Adds new Step to verify that Cycle's terminal is in the expected state. 

• Adds new Steps to type the username or password from saved credentials. 

• Adds option to add additional tuning parameters for group tests in an external file. 

Changed 

• Changes --token argument in Cycle CLI to --user to specify user profile to use for execution. • Changes Cycle-CLI Group test execution to not show full console output. 

• Changes how Cycle licensing works to greatly reduce connection issues blocking license validation. • Changes references to "devices" in Group Tests to instead use "workers" for consistency. 

Fixed 

• Fixes an issue where Group Tests run through Cycle-CLI required a tag argument. 

Cycle 2.5.0 / 2019-12-20 

Added 

• Adds a Help & Support section into the Cycle Client for streamlined support ticket creation and log file packaging.

• Adds a new Dark mode to Cycle client. 

• Adds ability for Scenario Outlines to use data imported from external sources: CSV files, SQL databases, MSQL databases, Data store. 

• Adds new Notifications pane to Cycle's Project Directory panel to view recent notifications. • Adds new settings for storing Connections and Credentials in Cycle. 

• Adds a new failure setting for group tests: "Restart failed workers" 

• Adds new Web API Steps for basic operations including POST, GET, PUT, PATCH, and DELETE. • Adds a new setting for users to specify JVM arguments for Cycle on startup. 

• Adds new Steps for working with lists, variables, and JSON in Cycle. 

• Adds pagination to Output panel results for better performance. 

• Adds performance improvements to terminal monitoring view for group tests. 

Changed 

• Changes Group Test output to only display once a worker is selected. 

• Changes the TCP port used by winapp driver to be a random one to help with multiple instances of Cycle running on VMs. 

Fixed 

• Fixes an issue that caused Cycle to crash if verbose logging was on during a Group Test. • Fixes an issue that caused the HTML reports to lose their formatting. 

• Fixes an issue where HTML reports for large tests would sometimes fail to generate. • Fixes multiple issues with Output panel, pagination, project directory, terminals, and Group Tests. 

Cycle 2.4.0 / 2019-07-18 

Added 

• Adds new steps for interaction with native apps. 

• Adds a new Cycle Step to clear the contents of the clipboard. 

• Adds ability to close the find function by pressing escape and press enter to move to next match. • Adds full support for F-keys and PF keys for terminal interactions. 

• Adds images into reports for any failed steps in Native App tests. 

• Adds new button to hide/collapse Cycle's Project Directory panel. 

• Adds new Cycle Step to copy the file path of the current project directory into a variable. • Adds new logic to take a screenshot of the browser when any Web Step fails. 

• Adds new Step for "I copy content to clipboard". 

• Adds Password Reset functionality into the Cycle client. 

• Adds WinApp Steps that can capture a specific attribute of a given object. 

Changed 

• Changes Project Directory Panel to be collapsible. 

• Changes Reports directory to be relative to the current Project directory. 

• Changes Step Details popup window to be resizable and movable.

• Changes the Project Settings panel to overlay the Project Directory rather than expanding from it. 

Fixed 

• Fixes multiple issues with scaling, editing file paths in Group Tests, popup windows, find/replace, Webdrivers, terminal display, project files, output panel, and step assistant. 

Cycle 2.3.0 / 2019-04-22 

Added 

• Adds a new web Step: I clear all text in element "<ELEMENT_ID>" in web browser • Adds additional functionality to the Test Connection button in Data Store Connection settings. • Adds additional support for custom Key Mapping files including PF1-PF4 keys and F keys up to F44. • Adds line numbers to the errors section of HTML reports. 

• Adds MOCA connection authorization via RP/JDA authorization tables. 

• Adds new Data Store schema with tables for captured images and terminal screens. • Adds new look to find/replace function in editor. 

• Adds new setting to adjust terminal font size. 

• Adds new Steps for I SHIFT click element... and I CTRL click element...

• Adds new Steps for executing Groovy inline and through Groovy scripts. 

Changed 

• Changes Help Menu to contain a link to the Cycle Help Center. 

• Changes layout for Find/Replace function. 

• Changes layout of Inspector Panel. 

• Changes the Steps I save screenshot and I save screenshot as "<FILE_PATH>" to include screenshot images in web reports and Data Store. 

Fixed 

• Fixes multiple issues with web Steps, variable assignment, image match, project loading, license, step suggestions, autocomplete, and Data Store. 

Cycle 2.2.1 / 2019-02-18 

Added 

• Adds a button to test Email Summary report settings. 

• Adds a line counter for each file Cycle is reading from for smoother CSV interaction. • Adds a prompt warning the user of currently running tests before closing Cycle. 

• Adds ability to drag and drop files from one folder to another in the Project Directory panel. • Adds new option in Project settings > Advanced settings for SSL validation through a Truststore file. • Adds Step "I open local terminal". 

• Adds support for either forward slashes or backslashes in file path references throughout Cycle.

• Adds Telnet negotiation support for Cycle to have direct interaction with Windows Telnet service. 

Changed 

• Changes behavior of the Enable Keyboard in Group Tests option to also select the terminal clicked on. • Changes Data Store connection fields to not show inapplicable fields for MOCA Databases. • Changes the "I stop tracing" Step to "I stop MOCA tracing" for better clarity. 

Fixed 

• Fixes multiple issues with steps, dialogs, error messages, file management, MOCA connections, H2 logging, and email summaries. 

Cycle 2.2.0 / 2019-01-24 

Version 2.2.0 introduces the Projects framework to Cycle! 

Added 

  1. Adds new setting for Variable Blacklisting to mask values of blacklisted variables in Cycle output and reports. 
  2. Adds support for 5-digit port numbers in Steps that reference specific ports. 
  3. Adds "Line Wrapping" setting to have longer Steps wrap to multiple lines. 
  4. Adds Project Name parameter to Cycle-CLI. 
  5. Adds additional Step for connecting to H2 databases. 

Changed

  1. The majority of settings formerly found in Cycle Preferences have been moved to the Project Settings panel.
  2. Existing Cycle files will need to be imported as Projects after updating to this version.
  3. Cleaner output from Cycle-CLI tests, extra details related to logging moved to log file. 

Fixed 

  1. Fixes multiple issues with blacklisted variables, captured images, playlists, and login/logout. 

Cycle 2.1.1 / 2018-11-19 

Fixed 

  1. Fixes an issue with Data Store connection to MOCA not using the specified port.
  2. Fixes an error caused by restarting a terminal in a Group Test while logging results to H2 database.
  3. Fixes an implementation error with If I see image... Step. 

Cycle 2.1.0 / 2018-11-05 

Added

• Adds Microsoft Edge support for web Steps. 

• Adds new prompt on quit of Cycle to save all unsaved files. 

• Adds ability for all test types to log results to a CSV file. 

• Adds new reporting settings to log results directly to a Data Store (JDBC, MOCA, H2).

• Adds empty state message to File Browser to guide new user on a fresh install.
• Adds image of what was in terminal to results for I see...in terminal Steps. 

Changed 

• Improves performance and reduces system resources used when running Group Tests. • Expands support for all test types to report to a CSV file. 

Fixed 

• Fixes Steps I maximize Cycle and I minimize Cycle

• Fixes user prompt Steps hanging and not prompting the user. 

• Fixes broken status icon on stopped Playlists. 

• Fixes multiple issues with web steps, terminal steps, and output. 

Cycle 2.0.2 / 2018-09-28 

Added 

• Adds "Jump to first error" option to context menu in Output Panel. 

• Adds more intuitive drag and drop behavior when creating Group Tests. 

• Adds new Step for connecting to H2 databases. 

• Adds support for legacy MOCA socket connections. 

• Adds better error handling for invalid MOCA connection attempts. 

• Adds "Pertinent Settings" section to Step Assistant tab. 

• Adds "Go to line" functionality to context menu in Output Panel. 

• Adds option for "Verbose log files" to Advanced Settings. 

• Adds new Step for closing SQL connections. 

• Adds support for Enter key to login dialog. 

• Includes worker name in output of Group Tests. 

Changed 

• Multiple updates to support email, Output Panel behavior, performance, branding, and stability. 

Fixed 

• Fixes multiple issues across steps, reports, UI, terminals, Group Tests, and CLI. 

Cycle 2.0.1 / 2018-07-11 

Added

• Adds a default timeout of 120 seconds to the Step: I navigate to "<URL>" in web browser. • Adds support for WIN key in key-press Steps. 

• Ports forward the user variable lastMocaCommand from previous Cycle versions. 

• Adds replacement Step information to hover text for deprecated Steps in the Editor. 

• Adds support for arrow keys to desktop recording tool. 

• Ports forward two additional Steps: I hold down keys <KEY_OR_KEY_COMBINATION> and I release keys <KEY_OR_KEY_COMBINATION>

Fixed 

• Fixes multiple issues across image steps, playlists, reports, terminal steps, Group Tests, and CLI. 

Cycle 2.0.0 

A major design overhaul brings new tools into Cycle's user interface! 

• The Cycle Ribbon gives quick access to buttons for inserting Scenarios, Backgrounds, After Scenarios, keywords and other content into the Editor, as well as recording terminal and desktop actions. • A convenient File Browser panel allows easy navigation to Cycle resources. 

• The Image Accessory simplifies the process of capturing images, and inserting and renaming images within Cycle Steps. 

• The Cycle Preferences area brings a fresh layout to configuring Cycle. 

• A new Inspector Panel to the right of the Editor includes a Step Assistant tab, Settings tab, and Output tab. • Data Extract tool redesigned to pop into side panel rather than overtaking the Editing window. • The terminal window is now integrated into Cycle's Editor. 

• Playlists and Group tests support drag-and-drop for adding/moving items. 

Additional Enhancements 


Auto Complete won't remove pre-filled parameters and will flag deprecated Steps.  Real-time tag and Scenario counters. 

• Improved logging to resolve support issues. 

• Smarter Step delay does not affect Steps that are fully contained within Cycle. 

• Improved failure handling options and Group Test drill-down navigation. 

• Next generation execution engine brings significant performance increase. 

• License check ignores SSL/TLS Certificate issues.



    • Related Articles

    • BY WMS Library Release Notes

      BY WMS Library Release v 3.4 / 2024-07-01 Here’s what’s new in Version 3.4 of the BY WMS Library Cycle Version Dependency: 2.15 or newer Email help@cyclelabs.io for access to the BY WMS Library download Support for 2021 The WMS Library test cases ...
    • Cycle 2.23 Deprecated Steps

      The Cycle Labs team is rolling out improvements to our steps using our new Step Plugin Architecture. As a result, we will be removing support for some long time deprecated steps. The deprecated steps listed below will be removed from the Cycle ...
    • Cycle 2.25 Deprecated Steps

      We have deprecated some existing steps and provided their replacements in Cycle versions 2.25+. The steps that are impacted are steps that work against result sets for both moca and sql. The deprecated steps are: Given I assign row <ROW_NUMBER> ...
    • Cycle 2.22 Deprecated Steps

      With the introduction of the WebDriver step plugin in Cycle 2.22, the following steps have been officially deprecated: Deprecated Step Replacement Step I open the "<BROWSER_NAME>" web browser I open "<BROWSER_NAME>" web browser I close the web ...
    • Quick Start: MOCA Network Checker

      Summary We have created a small network utility to help diagnose MOCA connectivity issues in customer environments. It performs a battery of diagnostic checks and creates output that we can review after a user provides it to us. Details on how to get ...