Skip to main content

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