Skip to main content

Release Notes

This page provides the release notes for each version of the Cycle desktop app.

VS Code Extension

Release notes for the Cycle Testing VS Code extension are provided in the extension's changelog.

2.28.0

Released 2026-07-13.

New features

Cycle MCP

Building on the Cycle MCP server, this release extends the "plumbing" that connects Intelligent Discovery and Intelligent Formulation.

  • Document ingest for Discovery: Discovery can now read uploaded documents (design docs, test plans, ticket exports) and turn them into structured test specifications, so testers move through Discovery faster instead of answering every question from scratch.
  • Blue Yonder context for Formulation: Cycle MCP agents now have Blue Yonder WMS-specific context and new tools (scenario search, web selector suggestions, MOCA command execution, and WMS reasoning helpers, plus refined failure classification) so they can generate accurate CycleScript feature files for typical WMS behaviors.
  • Discovery-to-Formulation handoff: The test specifications produced by Discovery now feed directly into Formulation, connecting the two Intelligence phases for a smoother end-to-end authoring flow.

JUnit XML Reporting

Cycle can now optionally generate a JUnit XML report for a test run, giving testers richer, industry-standard reporting when their tests run in CI systems like Jenkins.

Bug fixes

  • Bug #11348 — Group CSV report group names. Fixed a regression where the Group CSV report assigned the same group_name to every worker group instead of the correct name for each group.
  • Bug #11349 — Group CSV report scenario names. Fixed an issue where, after an imported or nested scenario call completed, the Group CSV report could attribute later steps to the wrong scenario name in the parent scenario.
  • Bug #11350 — Group CSV report event ordering. Fixed an issue where SCENARIO_END events were sometimes written before SCENARIO_START and its steps, causing inconsistent event ordering in Group CSV reports.
  • Bug #11351 — Interleaved worker steps in Group CSV reports. Fixed an issue where steps from different workers could appear interleaved in the Group CSV report instead of keeping each worker's results contiguous.
  • Bug #11567 — Stored credentials not expanded from environment variables. Fixed an issue where stored credentials that reference environment variables (for example, ${VAR_NAME}) were not expanded by the Cycle engine when used in test steps.
  • Bug #11644 — Output folders for test cases with multiple examples. Fixed an issue where data-driven test cases with multiple examples each created a separate timestamped output folder instead of running under a single test case execution context, and where the "file URI" field in custom reports displayed "null" instead of the test case name.

2.27.1

Released 2026-06-12.

New features

Cycle MCP: Formulation Plumbing

Building on the experimental Cycle MCP server, this release improves how AI agents interact with Cycle projects through context, rules, and skills.

  • Refactored MCP tools: Fetch-style tools have been converted to prebuilt resources, reducing unnecessary tool-call cycles for agents. Irrelevant tools have been removed, and the remaining tool descriptions have been updated.
  • Reviewed and re-indexed Cycle project resources: Documentation has been pruned and re-indexed as MCP resources for improved agent searchability and context retrieval.
  • Expanded authentication: Select tools and resources are now gated behind authentication.
  • Specialized subagents for CycleScript authoring: A dedicated authoring subagent allows the main agent to focus on workflow coordination while delegating test authoring to a specialized subagent.
  • MCP prompts for guided authoring: Built-in prompts guide agents and users toward better-structured test authoring.
  • User Manual updates: Supporting documentation now covers the MCP architecture.

Bug fixes

  • Bug #10304 — Blacklisted variables in API calls. Fixed an issue where blacklisted variables were correctly masked during normal execution, but enabling the sensitive data hiding option caused test failures.
  • Bug #11379 — Null encoding in XML variable replacement output. Fixed the step I replace variables in XML file "<INPUT_FILE_PATH>" and save as "<OUTPUT_FILE_PATH>", which incorrectly wrote encoding='null' in the XML preamble of the output file instead of the expected UTF-8 encoding.
  • Bug #11389 — Confusing Cycle CLI output. Fixed an issue where running certain feature files through cycle-cli produced unexpected error-like output even when tests passed. The output came from the Go scanner's default error handler emitting internal noise to stderr; a custom error handler now routes that output to the log file instead.
  • Bug #11490 — Inner scenario results not expandable. Fixed an issue where scenarios that call other scenarios could not be expanded in either the Report Dashboard or the Output Panel, during execution or after completion.
  • Bug #11507 — CSV input variables not available to group test workers. Fixed an issue where group test workers were unable to access variables read from a CSV input file.

2.27.0

Released 2026-05-15.

New features

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 errors 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.

Bug fixes

Report Dashboard

  • Fixed an issue where Cycle execution summary emails could misfire. Emails now send only when the configured conditions are met.
  • Fixed recursive behavior when navigating into nested scenario results.
  • Fixed an issue where drilling into a scenario result displayed an empty detail view instead of the expected step content.

Cycle Desktop License Agreement Text

  • Fixed an issue where the MSA text in the Cycle Desktop application rendered as garbled characters because of a character encoding problem. The agreement text now displays correctly.

2.26.1

Released 2026-04-15.

New features

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, and others) now follow a consistent, standard directory structure aligned with the Cycle library baseline.

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

Removed

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

2.26.0

Released 2026-03-03.

New features

Step Plugin Architecture Updates

Cycle 2.26 introduces a simplified Step Plugin architecture to make it easier for test automation engineers to create their own CycleScript steps.

  • 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 the plugin directory structure and plugin loading behavior.
  • Replaced the OpenAPI-based step specs with a much simpler steps.yml format.

Step Plugin SDK and Developer Tooling

New developer tooling simplifies plugin creation and management.

  • Released a Java Step Plugin SDK for plugin development to Maven Central.
  • Published example Step Plugin projects to serve as reference implementations.
  • Introduced VS Code extension commands to create new plugin projects with boilerplate code.

Changes

  • Implemented platform performance improvements to support larger execution environments.
  • Implemented Report Dashboard performance optimizations.
  • Updated high-impact copyright notices and refreshed EULA-related linking and attribution where applicable.
  • Updated User Manual documentation for the simplified Step Plugin architecture.

Bug fixes

Step Guide Plugin Visibility

The Step Guide did not display steps provided by installed plugins, which limited discoverability of available functionality. All plugin-provided steps are now surfaced properly within the Step Guide.

  • Corrected Step Guide filtering logic to 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.

2.25.2

Released 2026-01-28.

New features

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

Changes

  • The ChangeLogLevel message moved from the ApplicationSocket websocket to the ApplicationStream websocket. Cycle has two log levels, INFO and ERROR. In the Preferences "Verbose log files" setting, "on" provides both INFO and ERROR logs, and "off" provides ERROR logging only.

Removed

  • Removed use of the <cycle-app-data>/config/CycleProjectTemplate directory for creating projects. Cycle now uses its own embedded template directory instead.
  • Removed use of the <cycle-app-data>/config/cycle2settings.json file for the default settings of a new project. Cycle now applies those defaults directly, which removes a source of backwards compatibility issues.

2.25.1

Released 2025-12-18.

New features

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.
  • The current user is still passed to the 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 the Cycle Desktop IDE.
  • The project file watcher moved from Scala to the Cycle Desktop IDE. A project file watcher starts when a project is opened and stops when a project is closed.
  • File tree operations moved out of Engine sockets and into the Cycle Desktop IDE.
  • File tab operations moved out of Engine sockets and into the Cycle Desktop IDE.
  • The email connection test moved out of the Scala Engine and entirely into the Cycle Desktop IDE and Report Service.
  • Create new project and read project details moved to Go.
  • Removed use of the <cycle-app-data>/config/cycle2settings.json file for the default settings of a new project. Cycle now applies those defaults directly, which removes a source of backwards compatibility issues.
  • Removed use of the <cycle-app-data>/config/CycleProjectTemplate directory for creating projects. Cycle now uses its own embedded template directory instead.

Report Dashboard Reporting Is Required and Enabled by Default

This feature removes the CYCLE_LOCAL_RESULT_SERVICE_ENABLED environment variable and its conditional logic. The Report Dashboard is now required for all test runs. This work prepares for moving the test results data source from the internal H2 database to the Report Service.

New Page Load Strategy Step

Added a new step that lets testers 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.

Changes

  • Updated Spring Boot to 3.5.8, updated Selenium to 4.38.0, and fixed related warnings.
  • Updated a step description to more accurately reflect the behavior of the step: the .png extension must be present in the file path.

Bug fixes

  • Fixed an issue where no syntax error was reported for incorrect syntax in the Cycle step that combines variables or values. The expected syntax error is now displayed.
  • Fixed FrameFinder to work with HTML4 frameset and frame tags.
  • Fixed the "Frame" element finding strategy so that its reset ignores closed windows.
  • Re-implemented four MOCA steps that were erroneously removed in the 2.25.0 release.

2.25.0

Released 2025-11-19.

New features

Deprecated Steps and Their Replacements

Cycle has deprecated three 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 or SQL result sets. 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 test names truncated for scenario outlines. Fixed an issue where group tests containing scenario outlines displayed only the last substring of the group test name on the Report Dashboard. The entire group test name is now displayed.

2.24.0

Released 2025-11-03.

New features

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 for multiple .cycproj files. Updated the error message that appears when Cycle will not open because a project directory contains two .cycproj files. It now reads: "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 with Cycle lists. Fixed an issue where Cycle reset the iteration index for a list whenever Groovy was called. Cycle now preserves the iteration index for a list when it calls Groovy, no matter what modifications the Groovy script makes 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 a report when no -p argument is provided. Cycle now uses the current working directory as the project directory when the project directory is not explicitly specified by the user.
  • Bug #7838 — Stuck loading icon in the Report Dashboard. Fixed an issue where the Report Dashboard showed a stuck loading icon when a While loop used a wait step.
  • Bug #7880 — Step suggestion breaks when using backspace. 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 — Step assist results for the Trim keyword. Fixed step assist so that it shows the appropriate steps when the Trim keyword is used.
  • Bug #8118 — Strings containing $ in the replace variables step. Fixed an issue where inserting a string that contains a $ caused problems with the Cycle replace variables step.
  • Bug #8939 — Incomplete uninstall when VS Code is open. Added VS Code to the list of processes that the installer will close. This currently does not prompt to save changes before closing, so be sure all changes are saved within VS Code before selecting this option in the installer.
  • Bug #8987 — Tags not auto-populating in CVT files. Fixed an issue where tags did not auto-populate in CVT files.
  • Bug #9086 — Step suggest ordering differs between VS Code and Desktop. Fixed an issue where Step Suggest offered a different order of steps in VS Code than in the desktop application.
  • Bug #9805cycle-cli and Ctrl+C in Windows Terminal. Fixed an issue where cycle-cli did not handle Ctrl+C gracefully in Windows Terminal.
  • Bug #10048 — Users not logged off by the close MOCA connection step. Fixed an issue where users were not logged off by the step I close MOCA connection.
  • Bug #10144 — 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 recognized as valid values. During parameter type checking, Cycle now checks the contents of quoted tokens to see if they are valid numbers, according to the desired number types of the steps. (See also Bug #10046 for the related input focus issue.)
  • Bug #10168 — Variable replacement in XML attributes. Previously, variable replacement was only supported for the XML body, and variables in attributes were not replaced. Cycle now supports variable replacement in XML attributes.
  • Bug #10169 — Implicit hovers and clicks in the plugin. Fixed an issue where implicit hovers and clicks on elements in the plugin caused failures.
  • Bug #10170 — CLI not reporting Scenario Outline failures. The CLI reports scenario outline failures correctly again.

2.23.0

Released 2025-10-13.

Removed

Deprecated Steps Eliminated from Cycle

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

The full list of removed steps is in the linked Knowledge Base article. These steps have been deprecated for quite some time, and replacement steps have been released over the years to cover the functionality they provided.

Be sure to update your Cycle features and utilities to use the newer replacement steps if you are still using any of the deprecated steps.

If you use 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 #8519 — GUI menu options with cycle-cli authentication. Fixed an issue where the Cycle GUI menu did not load all options when opened without a default project and with authImplementation set to cycle-cli. Cycle now displays all menu options when the authentication method is set to cycle-cli in the uisettings.json file.
  • Bug #9845 — Test run sidebar stops updating. Fixed an issue where the Report Dashboard test run sidebar stopped updating on a VM after a disconnect.
  • Bug #9968 — Output Panel scrolling. Fixed a scrolling issue in the Cycle desktop app Output Panel that prevented navigating through results.
  • Bug #10062 — Missing step to verify the browser. Added back the step Given I verify current web browser is <BROWSER>, which is now recognized and can be executed.
  • Bug #10063 — Application security signing. Fixed an issue where application security signing was not being performed, so the warning on download no longer appears.

2.22.0

Released 2025-08-07.

New features

WebDriver Step Plugin

The WebDriver step plugin is the first major plugin to use the Step Plugin Architecture released in 2.20, and it comes bundled by default in Cycle 2.22. The plugin introduces several new project settings. To ensure your projects are automatically updated with the default settings, 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 both the main part of the page and any iFrames on the page. This is slower but backwards compatible, and we recommend it for most testers.
  • "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 applies to all steps, even if the step does not contain a "within" timeout.
  • Chromium switches: Cycle now enables testers to set any command line switches they want for Chrome and Edge.

The WebDriver step plugin uses the latest version of Selenium (4.34), which includes Selenium Manager. Selenium will automatically attempt to download and install the appropriate WebDriver executables if they are not found on the 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 Selenium's mechanisms for searching the system path or using Selenium Manager; in that case, make sure your version of Chrome is up to date. The existing web steps 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.

New Web Steps for Handling Alerts

We have renamed some previous "JavaScript" alert steps to use the more intuitive term "alert". 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 through 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}

Refer to the User Manual for more information on the difference between attributes and properties.

New Browser Zoom Step

A new zoom control step is now available. The step parameter should be a non-negative integer value; for example, "50" represents a 50% zoom. Behavior can vary depending on the web page implementation.

  • I set the page zoom to <NUMBER> percent

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 type the specified text into the file input element, setting 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}

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, making test results easier to read.
  • Restarted scenarios in group test workers: The Report Dashboard now clearly indicates when a worker has been restarted during a group test, making test results easier to interpret while troubleshooting.

Language Server Updates

The language server can now distinguish between test case scenarios and @wip scenarios. This is important for the VS Code extension to determine what should appear in the Testing view.

Changes

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, refer to the Knowledge Base.

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 it can be found in the linked Knowledge Base article.

Feedback addressed

  • Feedback #7476 — Distinguish between lines displayed in the Report Dashboard. Addressed by adding syntax highlighting and Report Dashboard line indents, which were implemented in Cycle 2.21.
  • Feedback #7970 — Better mechanism for interacting with the Windows file browser popup. Customers requested the ability to interact with a Windows file browser popup in order to upload a file into their system, which previous steps did not support. New WebDriver steps now allow this functionality; see the new file input steps above.
  • Feedback #8381 — Show restarted group test workers in the Report Dashboard. Feedback indicated it would be helpful to have an indicator that repeated failed scenarios in the Report Dashboard came from workers restarting. This was implemented through the feature to mark restarted scenarios in a group test worker.
  • Feedback #8500 — Retrieve the value of an HTML element attribute. Customers suggested the ability to retrieve the value of an HTML element attribute. We added new steps to the WebDriver step plugin for copying and verifying web element attributes; see the new attribute and property steps above.

Bug fixes

  • Bug #4505 — Windows uninstall can fail when the app is open. Added a checkbox option on install that, when selected, closes background processes related to Cycle, including cycle.exe, cycle-cli.exe, cycle-result-service.exe, chromedriver.exe, edgedriver.exe, and IEDriverServer.exe. (See also Bug #9445, where the Cycle Setup installer could not overwrite files if the app was open.)
  • Bug #6263 — Basic authentication when opening Chrome. The implementation of the WebDriver step plugin fixes an issue where the step "Given I open Chrome using basic authentication" did not work with the new web steps.
  • Bug #6399 — Caching issue with Pendo prompts for the new installer. Cycle now displays in-app notifications when an update is available, and the download link works without requiring reauthentication.
  • Bug #7931 — Text finding within elements with the web driver service enabled. The implementation of the WebDriver step plugin fixes failures in text finding within elements when CYCLE_WEB_DRIVER_SERVICE_ENABLED is set to true.
  • Bug #8981 — Email summaries not sent in Cycle 2.20. Fixed the issue where email summaries were not being sent.
  • Bug #9171 — Reporting settings not passed from the project level. Fixed an issue in the Electron app where some users' reporting settings were not passed in from the project level.
  • Bug #9178 — Group test worker ordering. Group test workers now appear in alphanumerical order.
  • Bug #9434 — Typo on the Group Test screen. Fixed a typo in the Electron app from "Add an entry to being building a Group Test" to "Add an entry to begin building a Group Test".
  • Bug #9907 — Headless browser window size. Headless browsers are now automatically set to a standard size of 1920x1080 when headless browser WebDriver instances are initialized, which is large enough for Blue Yonder tests.

2.21.0

Released 2025-05-09.

New features

Report Dashboard Navigation Enhancements

Navigating group test and scenario outline results is now more direct and mirrors the structure of the test specifications.

  • Group tests: In the previous release, the dashboard presented the scenarios for a worker separately, which made troubleshooting difficult because testers had 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, which provides a cleaner, more intuitive presentation of test results.

Report Dashboard Test Run Deletions

A tester can easily remove old or erroneous runs while testing, and can also delete large runs that take up too much storage space. By intentional design, parts of a test run (such as an individual scenario) cannot be deleted, which avoids missing data.

Report Dashboard Scenario Display Enhancements

The T and F letters in the true/false arrow status result icons are now more prominent in the Report Dashboard, so testers can more easily troubleshoot tests. Line wraps are now indented in the Report Dashboard, which lets testers scan through scenarios line by line and see 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, and testers can now use a more current Java version when developing step plugins.

Feedback addressed

  • Feedback #7537 — Cap output storage before historical reporting data is overwritten. Implemented through the addition of the feature to delete test runs, which allows a user to manage the storage cap without unnecessarily deleting test run data.

Bug fixes

  • Bug #4237 — Assigning SQL NULL values to Cycle variables. Fixed the issue where Cycle did not return an error message to indicate that it does not support assigning nulls to variables. If the user attempts to assign a null value to a variable, Cycle now returns the error message "Cycle does not support assigning nulls to variables".
  • Bug #8517 — Icon and text overlap in the scenario view. Resolved a UX issue with icon and text overlap in the Report Dashboard scenario view.
  • Bug #8793 — Importing scenario outlines with SQL or MOCA examples. Fixed an issue where scenario outlines could not be imported with SQL or MOCA examples.
  • Bug #8980 — Execution not terminating after a timing verification step. Fixed the issue where Cycle did not terminate test executions within the Report Dashboard after the step I verify test case has been executing for less than <X> seconds completed.
  • Bug #8996 — Nondescript plugin loading error. When opening a plugin with an invalid schema, Cycle displayed an error message indicating the schema was bad but not why. The displayed error now includes the full error details.

2.20.0

Released 2025-01-29.

New features

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 the overall user experience.

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

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, refer to the Cycle User Manual.

Changes

  • CSV and Email Summary Reports now use the Result Service instead of relying on the H2 MVStore, which improves performance and reliability.
  • Removed the stdout capture for the Java App Steps driver, enhancing system efficiency and performance.

Feedback addressed

  • Feedback #7839 — Report Dashboard scroll height hides Cycle branding. Adjusted the Report Dashboard's scroll height so that the Cycle branding remains visible, even with a large number of executions.
  • Feedback #7999 — Step details should not persist when selecting a different feature or scenario. Fixed an issue where details persisted in the step details panel when switching between features or scenarios in the Report Dashboard. Selecting a different item in the left panel now resets the step details accordingly.

Bug fixes

  • Bug #6722 — Missing .api file extension in the file picker. Fixed an issue where selecting a file to open through the Cycle application did not offer the option to filter for .api files.
  • Bug #7682 — Report generation timing out during Jenkins parallel execution. Fixed an issue where report generation timed out during Jenkins parallel execution with the Report Dashboard enabled.
  • Bug #7887 — Incorrect subscriptions in App.tsx. Fixed an issue where the app subscribed to SuiteEndEvent twice instead of subscribing to ScenarioEndEvent.
  • Bug #7988 — Report Dashboard button overlap. Fixed a button overlap issue within the Report Dashboard when using a large terminal size.
  • Bug #7991 — "Jump to Failure" jumps to the last failure. Fixed an issue where the "Jump to Failure" button jumped to the last failure in the test case execution when a test failed in both the Test Scenario and the After Scenario. It now jumps to the first failure, as expected.

2.19.0

Released 2024-10-02.

New features

Cycle Testing 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 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 go to the definition of that scenario. When there are multiple scenario definitions with the same name on different project layers, Cycle provides a default editor popup to select which one you want.

Report Dashboard

Users can now view their test results through the new Cycle Report Dashboard. This dashboard is launched from the Cycle application by clicking the "Launch Report Dashboard" button on the right sidebar. It displays 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 returns important troubleshooting information such as duration, file location, error details, screenshots, and snapshot information. Note that the Report Dashboard is not suitable for viewing group test results at this time.

The Report Dashboard is a local web viewer with a configurable port. By default, Cycle sets the port dynamically. A journal mode setting defines 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 setting them manually in the file located at C:/Users/<your-user>/AppData/Roaming/Cycle/config/.env.

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.

Interact with Shadow DOM Elements Using the multi Locator

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 into Chrome by default. This bypasses the screen that prompts users in the EU to choose their search engine each time Chrome is opened.

Changes

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

Feedback addressed

  • VS Code extension documentation for EPERM failures — Documentation has been updated in the README to include EPERM failures.
  • Improved 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>".
  • Modifier key click steps for Java apps — Steps are now available to <MODIFIER> click objects in Java apps.
  • Viewing terminals from the View Terminal button — The terminal window now automatically becomes visible when a terminal test executes.

Bug fixes

  • Bug #6312 — High-severity vulnerabilities in the Cycle npm package. Resolved high-severity vulnerabilities reported for the Cycle npm package.
  • Bug #6395 — API crash in 2.18. Fixed an issue where Cycle crashed after sending a GET, then a POST, then switching back to GET.
  • Bug #6849 — Integrated Security and Windows authentication for SQL Server. Resolved the outstanding issue with Integrated Security and Windows authentication for SQL Server.
  • Bug #6880 — Missing custom report templates. A Report folder containing the custom report templates is now generated in new Cycle projects.
  • Bug #7073 — Step Assistant not working. The Step Assistant now works as expected and shows the documentation for the step selected within the editor.
  • Bug #7243.env file not created until Cycle is opened twice. A .env file is now created when the application is installed and opened.
  • Bug #7764 — Blue screen when saving and testing an .api file. Fixed the issue where an invalid endpoint was not handled appropriately.

2.18.0

Released 2024-04-10.

New features

Cycle Proxy Configuration 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 the Client Credentials Authentication Flow

Within user management, a new feature called "Application Secrets" allows you to generate a client ID and client secret specifically for authentication when running cycle-cli. This is particularly useful in scenarios such as CI/CD pipelines, where you prefer autonomous authentication that is not tied to a specific user. Instructions for generating OAuth2 client credentials are available in the Cycle User Manual.

Improved Logging for the CLI Launcher Process

Logging from the main CLI process is now directed to a separate cyclecli.log file located in your app data directory. This implementation includes log file rollover and purging, with a maximum file size of 10 MB, a maximum file age of 30 days, and a maximum of five backup log files.

Feedback 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.
  • Store repeated API request headers as a list — Repeated headers in an HTTP response are now stored as a comma-separated string, ensuring consistency with HTTP RFC2616.
  • Add the step "I assign SQL status to variable" — A new step, I assign SQL status to variable, has been added so the variable can be referenced from subsequent steps.
  • Parse CSV files by record instead of by line — Previously, CSV file parsing operated line by line. To address data inconsistencies caused by new lines within CSV record elements, parsing is now based on CSV records rather than individual lines.
  • Add support for Integrated Security and Windows authentication for SQL Server — We introduced the step I connect to Microsoft SQL Server database at "HOSTNAME;integratedSecurity=true" and upgraded the JDBC driver to enable Integrated Security and Windows authentication support for MS SQL Server.

Bug fixes

  • Bug #3319 — Pipe character not escaped during step execution. The step documentation now states explicitly that the parameter is a regex.
  • Bug #5086 — Playlist executing out of order. Fixed an issue where a playlist executed its items out of order.
  • Bug #5579 — Group test "Go to Line". Fixed a UI bug so that the "Go to Line" functionality now works correctly.
  • Bug #5902 — Uncommented non-CycleScript text in imported features. Fixed a parsing error that occurred when a feature containing uncommented non-CycleScript text was imported.
  • Bug #5964 — Verbose logging oddities. Fixed a bug in the handling of log level change requests.
  • Bug #5966 — WebDriver frame steps affecting element location. The new web driver in Cycle now successfully switches between tabs that were opened automatically, rather than only those opened explicitly by Cycle steps.
  • Bug #5983 — Reset password subscription prompt in Cycle 2.17. Fixed the bug that required a user to log out and log back in after resetting their password.
  • Bug #6109 — Incorrect deprecated step replacements in the Step Guide. The incorrect deprecated step replacements have been updated.
  • Bug #6114 — Zero status returned for an invalid CLI token. Fixed an issue where Cycle returned a 0 status if an invalid token was passed into cycle-cli and no tests were executed.
  • Bug #6184cycle-cli token issues. Authentication errors are no longer printed to the console during CLI executions.

2.17.1

Released 2024-02-26.

Bug fixes

  • Bug #5826 — Multiple tags spanning multiple lines. The parser now correctly handles multiple tags on a single scenario that span multiple lines.
  • Bug #5901 — Playlist summary failures. The cycle-cli output summary for a playlist now correctly reports failures when the same feature is included in a playlist multiple times.
  • Bug #5922 — Java App locators with triple quotes. The parser now correctly handles Java App locators containing triple quotes.
  • Bug #5923 — Output panel not rendering properly. Removed the default timeout settings for the connection from the UI to the Cycle engine, which were causing the Output Panel to not render properly.

2.17.0

Released 2024-02-05.

New features

Proxy Aware Authentication

We've added a new, opt-in authentication flow for users who run Cycle behind a proxy server. See the linked Cycle Knowledge Base article 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. See the Cycle User Manual for configuration instructions. Opting into this feature is not required and may not be backwards compatible with your existing test scripts.

Bug fixes

  • Bug #1699 — Step assistant does not populate for steps without populated parameters. The step assistant is now more robust in its handling of parameters. (See also Bug #4430 and Bug #5290.)
  • Bug #4853 — "Go To Line" in the Output Panel for unsaved features. Fixed an issue where using "Go To Line" in the Output Panel for new or unsaved features put the UI in an unrecoverable state.
  • Bug #4986 — Empty state too large for the minimum window size. The empty states for all components have been adjusted to be more responsive.
  • Bug #5278 — Selenium DevTools dependency out of date. All Selenium dependencies for web steps have been updated to 4.16.
  • Bug #5326 — Extraneous CLI output related to .env file creation. Default debugging output for all libraries has been added to the startup scripts.
  • Bug #5359 — Cancelling the .api save process. Fixed the interaction with the system save dialogs, which previously left the file unable to be saved.
  • Bug #5394 — No error window for an unauthorized user. Updated authentication to show errors for users who are not associated with a valid subscription.
  • Bug #5492 — Step suggest displays after every matching character. This behavior was addressed as part of the language server overhaul in 2.17.
  • Bug #5580 — Manually created Go http.Client instances ignore proxy settings. Fixed an issue where manually created Go http.Client instances did not use proxy information by default.

2.16.0

Released 2023-11-27.

New features

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 lets you 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 #4578 — Error 933 with Oracle databases. Fixed an issue where error 933 was returned when running SQL files against an Oracle database.
  • Bug #4660 — Stop button not working with restart failed worker. Fixed an issue where the stop button did not work when "restart failed worker" was selected.
  • Bug #4773 — Extra debug information before test execution. The Cycle 2.15 cycle-cli command generated extra debug information before test execution. We addressed this by suppressing the additional logging configuration from the console when running cycle-cli. (See also Bug #5001.)
  • Bug #4849 — Tokens cached before subscription assignment. When logging into Cycle before being assigned to a subscription, the token is no longer cached.
  • Bug #4852 — Server tuning settings not saved. Fixed an issue where server tuning settings were not saved after exiting Cycle. (See also Bug #4856.)
  • Bug #5120 — Application not fully exiting. Fixed an issue where the application did not fully exit when "Close apps after execution" was toggled off.

2.15.0

Released 2023-09-20.

New features

Cycle 2.15 introduces a new approach to API testing.

Simplified API Steps

The new API testing approach reduces the number of steps needed to interact with an API.

  • Looser coupling: Features don't need intimate knowledge of how the API works, which offers a flatter learning curve.
  • Variable flexibility: Users can use whatever variables they want within the API, so variable names no longer need to match the keys for headers and parameters.
  • Autocomplete: The API calls feature offers autocomplete.

Modifications to List Behavior

Any modification to a list now automatically resets 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 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

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

2.14.0

Released 2023-08-09.

New features

  • Access tokens have been added to Cycle-CLI. Starting with this release, all Cycle-CLI commands need a valid access token to execute the Cycle test. See the User Manual and Knowledge Base for more information on using access tokens with Cycle-CLI.
  • PostgreSQL is now supported natively in Cycle. The new I connect to PostgresSQL database step was added, along with the ability to create a new PostgreSQL connection in Project Settings.
  • Web tests executed using the Edge web driver now support remote headless execution.
  • A native SQL variable substitution step allows users to replace specific values in SQL queries with variable placeholders, enhancing security, performance, and code maintainability.

Bug fixes

  • Improved auto-suggest functionality (autocomplete and type-ahead). Auto-suggest now displays suggestions based on matching characters rather than relying solely on full words, and it incorporates fuzzy suggestions for steps.
  • Fixed an issue that prevented users from changing the commit frequency of the data store.
  • Projects that fail to load because of permissions issues on shared drives now abort project loading and provide an alert.
  • Corrected a typo on the "Connection" label in the Project Settings.

2.13.1

Released 2023-06-01.

New features

  • A 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 at users who want to run group tests involving web steps.

Bug fixes

  • Fixed an issue related to step suggestion in the editor.
  • Fixed an issue maintaining cursor position in the editor when switching tabs.
  • Fixed an issue with displaying error messages during authentication.

2.13.0

Released 2023-04-12.

New features

  • The following file hash is provided for users with security policies that require them to verify the file hash of the installer: CDE47B89EF1CF1687017F539A3F8A053689FD8AF2B4D3B2F5B06081BF816CCF0
  • 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>".
  • A button in the Output Panel to resume the live feed.
  • A toggle to view or hide password entries in datastore credentials.
  • A new Go menu item with options for tab navigation and moving tabs.
  • A new Run menu item with options to execute the selected tab.
  • A new Toggle Developer Tools item in the Help menu.
  • A Monitor Execution button on Group tabs.
  • The ability to include environment variables in datastore credentials.
  • Steps to support testing Java apps such as BY Dispatcher WMS and BY ESO.

Changes

  • Changed the authentication process so that login now happens within the app using a second window, instead of an external browser.
  • Replaced the application toolbar with a global execution bar.
  • Changed how execution works via a global execution button. Users may only execute one test at a time.
  • Changed Cycle hotkeys so they only work when the application has focus.
  • Moved to a new editor (Monaco Editor) with improved find and replace functionality.
  • The Output Panel is no longer automatically shown when a test is executed.
  • Changed the experience of editing group test items so they are now edited in a modal instead of inline.
  • Improved the performance of the Output Panel during single feature execution.
  • Moved the Hotkeys menu item from the Tools menu to a new View menu.

Removed

  • The Import Project option from the File menu, hotkeys, and other UI buttons.
  • Buttons to create a scenario, background, or other code blocks from the Feature tab.
  • Toggle Image Mode from the editor.
  • Record Terminal functionality.
  • The Example Set Editor.
  • Report Enabled display icons on the right side of the bottom status bar.
  • The Extract Data tool from the Tools menu and the right-hand drawer.
  • The splash screen.

2.12.1

Released 2022-11-02.

Changes

  • Upgraded the Apache Commons Text library from version 1.2 to version 1.10 to address a potential security vulnerability associated with other Cycle dependencies affected by CVE-2022-42889.

2.12.0

Released 2022-10-04.

New features

  • 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>".
  • An in-app guide pointing new Cycle users to a repo of useful example features.
  • A link to Cycle University in the Help menu.

Changes

  • Passwords stored in third-party secure password managers can now be injected into tests by leveraging environment variables in saved credentials or config files.
  • An error message is now provided if the file path specified in the step I assign values from config file "<CONFIG_FILE_PATH>" to variables does not exist.
  • Updated the Pendo integration in Cycle to support version-specific in-app help guides and usage data.

Bug fixes

  • Fixed an issue that caused duplicate web reports when a user had both web reports and datastore reporting turned on.
  • Fixed an issue that caused the Example Sets Editor to open in an error state.
  • 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.
  • Fixed an issue that caused report completion messages and notifications to point to an incorrect web report path.
  • Fixed an issue that prevented variables set using CSV files from being recognized in Groovy scripts.

2.11.0

Released 2022-07-26.

New features

  • A new Summary (Default) web report template option in Reporting Settings.
  • A new browser option for "Edge IE Mode" in web steps.
  • Pendo integration to enable usage data collection in support of data-driven product improvements, and publishing of in-app user guides.
  • A new IBM iSeries DB2 database step: I connect to iSeries "<CONNECTION>" logged in as "<CREDENTIALS>".

Changes

  • Changed the default web report template to Summary (Default).
  • Improved the performance of Summary and Detailed web reports so they generate more quickly.
  • Updated the format of the Summary and Detailed web reports to match Cycle Labs standard style and design.
  • Upgraded the bundled OpenJDK instance to version 1.8.0_331 for enhanced security.

Bug fixes

  • Fixed an issue where an error occurred with the step I copy text inside element <element> from character x through y in web browser because of incorrect character indexing.
  • Fixed the Cycle-CLI --settings argument so it is now recognized when used.
  • Fixed the "Send Test Email" button in Reporting Settings.
  • Corrected Cycle Labs copyrights.
  • Fixed the step I verify MOCA status is not <STATUSNUMBER> so it now properly checks the status number.
  • Corrected steps with incorrect references to replacement steps.
  • Fixed Cycle-CLI sending zero instead of the non-zero exit code in non-passing situations.

2.10.0

Released 2022-04-11.

Changes

  • Changed the way Cycle is built and packaged to unlock additional performance gains, seen most notably in group testing.
  • Users can now pass parameters directly to the Java Runtime Environment to tweak performance and handle exceptions.
  • Applied patches and fixes for outdated dependencies, providing a more secure application.
  • Updated branding and colors to meet current Cycle brand standards.

Removed

  • The User Portal link from the Help menu, because it was sunset in March 2022.

Bug fixes

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

2.9.2

Released 2022-03-01.

Bug fixes

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

2.9.1

Released 2022-02-21.

Bug fixes

  • Fixed an issue that kept local terminal steps from connecting to the local terminal.

2.9.0

Released 2022-01-21.

New features

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

Changes

  • User authentication now uses Cycle Cloud online login.
  • Changed the program expiration date of March 2022 to open-ended.
  • Updated links in the Help menu.
  • Changed the install directory name from Tryon Solutions to Cycle Labs.
  • Updated the signing certificate for the installer to Cycle Labs.

Bug fixes

  • Removed the unused Conscrypt Java Security Provider, which conflicted with existing connections requiring SSL.
  • Updated the I save terminal screenshot step to save to the default project directory.

2.8.2

Released 2021-09-07.

Bug fixes

  • Fixed an issue with connecting to terminals via SSH.
  • Fixed the I split string on delimiter into list step so that values from the resulting list can be accessed and copied to variables.

2.8.1

Released 2021-07-13.

New features

  • Better error messages for Java App driver failures.
  • New captive shell SSH connection steps to use a private key or port forwarding.
  • New SSH encrypted terminal steps with credential parameters.
  • New custom web reports in Jasper format.
  • A Java App Inspector under the Tools menu to help identify Java App elements.

Changes

  • Updated the default new project template to include new example Jasper reports.
  • Changed the default web report format to use the Jasper report standard.

Bug fixes

  • Fixed the within logic for Java App driver steps to use Cycle's within logic instead of the Marathon driver's.
  • Fixed an issue accessing Cycle's Reporting settings when the Variable Blacklist is in use.
  • Fixed an issue causing a CPU process spike when executing Vocollect scenarios.
  • Fixed an issue opening the Java driver if the last scenario didn't close it with the I close java app step.
  • Fixed an issue with Cycle terminals recovering from xterm OSC sequences.
  • Fixed an issue with terminal resizing steps not reflecting the updated terminal size in Cycle.

2.8.0

Released 2021-04-08.

New features

  • A new step for defining a port mapping for SSH connections.
  • Improved VT220 terminal emulation support.
  • A new family of Cycle steps for interacting with Java (Swing) applications (JavaAppDriver).
  • New steps for assigning variables from a config file.
  • New steps for creating SSH connections using a private key.
  • New steps for port forwarding within SSH connections.
  • New steps for replacing Cycle variables within XML and JSON.
  • New steps to take and save a screenshot of the terminal.
  • New variable manipulation steps.
  • New steps for I scan in web browser.
  • Support for new character sets for multi-byte characters in terminal emulation.
  • The ability to configure local and remote port forwarding for SSH connections.
  • The ability to use a private key when connecting to a terminal over SSH.
  • The new step I verify MOCA status is not <STATUS_NUMBER>.
  • Tracking of the number of rows resulting from SQL queries.
  • An automatic screenshot for the step I do not see element in web for verification.

Changes

  • The default directory structure used when creating a new project is now in line with best practices.

2.7.1

Released 2020-09-03.

New features

  • A fuller set of examples in the Step Assistant for the "...In App key press" steps.
  • A more helpful error indicating which MSQL file failed in the event of a failure executing a MOCA dataset.
  • The new step I assign USERNAME from credentials...to variable....

Changes

  • Updated the instructions for Edge browser web testing setup for the newer version of Edge.
  • The Step Delay setting now only affects steps that interact with web, terminal, or native apps, or that use the keyboard or mouse.

Bug fixes

  • Fixed an issue that caused the Open Project and Import Project toolbar buttons to not open the appropriate modals.
  • Fixed an issue with variable replacement in MOCA scripts, datasets, and local syntax for MOCA 2020.1.
  • Fixed an issue with web steps using the Once keyword not taking a screenshot if they failed.
  • Fixed an issue with Cycle using the Windows default character encoding rather than UTF-8.

2.7.0

Released 2020-05-29.

New features

  • A new section in Cycle's Project Directory panel for creating, viewing, and editing Example Sets within Cycle.
  • A Safe Delete for tags that only deletes a tag if it is not used by any other Example Sets.
  • A new menu item for File > Recent > Projects to easily reopen recent projects.
  • A new web step for I see element is clickable.
  • The ability to rename, sort, filter, tab between cells, and delete example sets.
  • Validation logic for column names in the Example Set Viewer.
  • Validation for Example Sets to disallow duplicate column names.

Changes

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

Bug fixes

  • Fixed an issue causing Cycle to lag significantly when closing or opening a project with many tabs open.
  • Fixed an issue that stopped Cycle from opening saved playlists under certain conditions.
  • Fixed an issue with the unsaved changes indicator not always displaying on Example Set tabs with unsaved changes.
  • Fixed an issue with the View Details button on passed terminal steps not opening the details dialog box.

2.6.1

Released 2020-04-02.

New features

  • New steps for assigning dollar variables and chevron variables to MOCA environment variables.
  • The new step I verify variables (Comma Separated List) are assigned.
  • The new step I unassign variables (Comma Separated List).
  • The new step I verify screen is done loading in terminal.

Bug fixes

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

2.6.0

Released 2020-02-28.

New features

  • A step for I see element is clickable to validate web element clickability.
  • A step to open a headless Chrome browser, and a new setting to default to a headless webdriver on remote machines.
  • A new 24-month version sunset policy.
  • Improved performance for SSH terminal group tests.
  • New steps for assigning variables from duration, execution ID, and chevron/dollar variable conversions.
  • A new step to click in an element and drag a specified number of pixels.
  • A new step to unassign a variable.
  • A new step to verify that a given scenario exists.
  • A new step to verify that Cycle's terminal is in the expected state.
  • New steps to type the username or password from saved credentials.
  • An option to add additional tuning parameters for group tests in an external file.

Changes

  • Renamed the --token argument in Cycle CLI to --user to specify the user profile to use for execution.
  • Cycle-CLI group test execution no longer shows full console output.
  • Changed how Cycle licensing works to greatly reduce connection issues blocking license validation.
  • Changed references to "devices" in group tests to use "workers" for consistency.

Bug fixes

  • Fixed an issue where group tests run through Cycle-CLI required a tag argument.

2.5.0

Released 2019-12-20.

New features

  • A Help & Support section in the Cycle client for streamlined support ticket creation and log file packaging.
  • A new Dark mode for the Cycle client.
  • The ability for Scenario Outlines to use data imported from external sources: CSV files, SQL databases, MSQL databases, and the data store.
  • A new Notifications pane in Cycle's Project Directory panel to view recent notifications.
  • New settings for storing connections and credentials in Cycle.
  • A new failure setting for group tests: "Restart failed workers".
  • New web API steps for basic operations including POST, GET, PUT, PATCH, and DELETE.
  • A new setting for users to specify JVM arguments for Cycle on startup.
  • New steps for working with lists, variables, and JSON in Cycle.
  • Pagination for Output Panel results for better performance.
  • Performance improvements to the terminal monitoring view for group tests.

Changes

  • Group test output now only displays once a worker is selected.
  • The TCP port used by the winapp driver is now random, which helps with multiple instances of Cycle running on VMs.

Bug fixes

  • Fixed an issue that caused Cycle to crash if verbose logging was on during a group test.
  • Fixed an issue that caused HTML reports to lose their formatting.
  • Fixed an issue where HTML reports for large tests would sometimes fail to generate.
  • Fixed multiple issues with the Output Panel, pagination, project directory, terminals, and group tests.

2.4.0

Released 2019-07-18.

New features

  • New steps for interaction with native apps.
  • A new Cycle step to clear the contents of the clipboard.
  • The ability to close the find function by pressing Escape, and to press Enter to move to the next match.
  • Full support for F-keys and PF keys for terminal interactions.
  • Images in reports for any failed steps in native app tests.
  • A new button to hide or collapse Cycle's Project Directory panel.
  • A new Cycle step to copy the file path of the current project directory into a variable.
  • New logic to take a screenshot of the browser when any web step fails.
  • A new step for I copy content to clipboard.
  • Password reset functionality in the Cycle client.
  • WinApp steps that can capture a specific attribute of a given object.

Changes

  • The Project Directory panel is now collapsible.
  • The reports directory is now relative to the current project directory.
  • The Step Details popup window is now resizable and movable.
  • The Project Settings panel now overlays the Project Directory rather than expanding from it.

Bug fixes

  • Fixed multiple issues with scaling, editing file paths in group tests, popup windows, find and replace, webdrivers, terminal display, project files, the Output Panel, and the Step Assistant.

2.3.0

Released 2019-04-22.

New features

  • A new web step: I clear all text in element "<ELEMENT_ID>" in web browser.
  • Additional functionality for the Test Connection button in Data Store Connection settings.
  • Additional support for custom key mapping files, including PF1-PF4 keys and F keys up to F44.
  • Line numbers in the errors section of HTML reports.
  • MOCA connection authorization via RP/JDA authorization tables.
  • A new data store schema with tables for captured images and terminal screens.
  • A new look for the find and replace function in the editor.
  • A new setting to adjust terminal font size.
  • New steps for I SHIFT click element... and I CTRL click element....
  • New steps for executing Groovy inline and through Groovy scripts.

Changes

  • The Help menu now contains a link to the Cycle Help Center.
  • Updated the layout for the find and replace function.
  • Updated the layout of the Inspector Panel.
  • Updated the steps I save screenshot and I save screenshot as "<FILE_PATH>" to include screenshot images in web reports and the data store.

Bug fixes

  • Fixed multiple issues with web steps, variable assignment, image match, project loading, license, step suggestions, autocomplete, and the data store.

2.2.1

Released 2019-02-18.

New features

  • A button to test Email Summary report settings.
  • A line counter for each file Cycle is reading from, for smoother CSV interaction.
  • A prompt warning the user of currently running tests before closing Cycle.
  • The ability to drag and drop files from one folder to another in the Project Directory panel.
  • A new option in Project Settings > Advanced Settings for SSL validation through a Truststore file.
  • The step I open local terminal.
  • Support for either forward slashes or backslashes in file path references throughout Cycle.
  • Telnet negotiation support for Cycle to interact directly with the Windows Telnet service.

Changes

  • Updated the behavior of the Enable Keyboard option in group tests to also select the terminal that was clicked on.
  • Data store connection fields no longer show inapplicable fields for MOCA databases.
  • Renamed the I stop tracing step to I stop MOCA tracing for better clarity.

Bug fixes

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

2.2.0

Released 2019-01-24.

Version 2.2.0 introduces the Projects framework to Cycle!

New features

  • A new setting for Variable Blacklisting to mask values of blacklisted variables in Cycle output and reports.
  • Support for 5-digit port numbers in steps that reference specific ports.
  • A "Line Wrapping" setting to have longer steps wrap to multiple lines.
  • A Project Name parameter for Cycle-CLI.
  • An additional step for connecting to H2 databases.

Changes

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

Bug fixes

  • Fixed multiple issues with blacklisted variables, captured images, playlists, and login/logout.

2.1.1

Released 2018-11-19.

Bug fixes

  • Fixed an issue with the data store connection to MOCA not using the specified port.
  • Fixed an error caused by restarting a terminal in a group test while logging results to an H2 database.
  • Fixed an implementation error with the If I see image... step.

2.1.0

Released 2018-11-05.

New features

  • Microsoft Edge support for web steps.
  • A new prompt on quit of Cycle to save all unsaved files.
  • New reporting settings to log results directly to a data store (JDBC, MOCA, H2).
  • An empty state message in the File Browser to guide new users on a fresh install.
  • An image of what was in the terminal added to results for I see...in terminal steps.

Changes

  • Improved performance and reduced system resources used when running group tests.
  • Expanded support so that all test types can log results to a CSV file.

Bug fixes

  • Fixed the steps I maximize Cycle and I minimize Cycle.
  • Fixed user prompt steps hanging and not prompting the user.
  • Fixed the broken status icon on stopped playlists.
  • Fixed multiple issues with web steps, terminal steps, and output.

2.0.2

Released 2018-09-28.

New features

  • A "Jump to first error" option in the Output Panel context menu.
  • More intuitive drag and drop behavior when creating group tests.
  • A new step for connecting to H2 databases.
  • Support for legacy MOCA socket connections.
  • Better error handling for invalid MOCA connection attempts.
  • A "Pertinent Settings" section on the Step Assistant tab.
  • A "Go to line" option in the Output Panel context menu.
  • An option for "Verbose log files" in Advanced Settings.
  • A new step for closing SQL connections.
  • Support for the Enter key in the login dialog.
  • The worker name in the output of group tests.

Changes

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

Bug fixes

  • Fixed multiple issues across steps, reports, UI, terminals, group tests, and the CLI.

2.0.1

Released 2018-07-11.

New features

  • A default timeout of 120 seconds for the step I navigate to "<URL>" in web browser.
  • Support for the WIN key in key-press steps.
  • Carries forward the user variable lastMocaCommand from previous Cycle versions.
  • Replacement step information in the hover text for deprecated steps in the editor.
  • Support for arrow keys in the desktop recording tool.
  • Carries forward two additional steps: I hold down keys <KEY_OR_KEY_COMBINATION> and I release keys <KEY_OR_KEY_COMBINATION>.

Bug fixes

  • Fixed multiple issues across image steps, playlists, reports, terminal steps, group tests, and the CLI.

2.0.0

New features

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

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.
  • The Data Extract tool has been redesigned to pop into a 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 and moving items.

Additional Platform Enhancements

  • Improved logging to resolve support issues.
  • A smarter step delay that does not affect steps fully contained within Cycle.
  • Improved failure handling options and group test drill-down navigation.
  • A next-generation execution engine that brings a significant performance increase.
  • A license check that ignores SSL/TLS certificate issues.

Editor Enhancements

  • Auto Complete no longer removes pre-filled parameters and now flags deprecated steps.
  • Real-time tag and scenario counters.