Nexial Automation

Test Automation Platform for everyone!

X

nexial-core 2.4 (2019-07-03)

Release 2.4

2019-07-03

General

Fixes

  • code fix to avoid modifying System properties while simultaneously reading such properties.
  • nexial-project.cmd: fixed the ECHO is off. error.
  • nexial-artifact-repair.cmd|sh: fixed invalid package reference.
  • nexial-artifact-repair.cmd|sh: fixed formatting issue in data and script files.
  • Fixed issue of opening an output excel/execution report after execution even if nexial.openResult or nexial.openExecutionReport is false.
  • enforce no text-wrap on param values of a Nexial output
  • perform data variable substitutions for external resources such as file.
  • removed wrong deprecated logs from desktop.useTable()

Improvements

  • removed java.awt.headless=true from .commons.cmd and .commons.ssh in order to support Robot-based type key
  • enhanced to support the rendering of multi-line or wrapped text in execution output (Excel).
  • execution output color update for description column; now NOT as similar as a FAIL step
  • minor console output enhancement to highlight (in blue) any execution abort messages and reasons.
  • correct abort-related messaging to clarify execution flow and intent.
  • The execution_output.html, each plan file is now clearly separated into different section.
    • also added scenario passed in execution_output.html and email_notification.html to capture total scenario passed for iteration, script and execution.
    • minor stylesheet updates to give more room for the display of scenario and activity names.
  • handled special character which belong to MS windows character set but not ISO Latin causing problems in HTML.

System Variables

  • [nexial.scope.mailTo] HAS BEEN REMOVED AND REPLACED BY nexial.mailTo
  • nexial.mailSubject: NEW System variable to custom email subject for post-execution email notification
  • nexial.mailHeader: NEW System variable to custom “header” content for post-execution email notification
  • nexial.mailFooter: NEW System variable to custom “footer” content for post-execution email notification

Nexial Expression

Flow Control

  • EndLoopIf(): Now supported early termination of a repeat-until loop without aborting the corresponding scenario.
  • EndLoopIf(): fix code to break repeat-until loop without breaking the enclosing iteration, and vice-versa.
  • code fix: now Nexial favors “fail-immediate” over “fail-fast”.

base commands

csv commands

desktop commands

  • typeKeys: NEW command to automate a series of keystrokes to the current execution environment.

io commands

image commands

json commands

web commands

  • stabilize available open window/tab while attempting to select one of them via its index.
  • support enabling of chrome remote port (aka DevToolsActivePort) via new System variable nexial.browser.chrome.remote.port. By default, this System variable is not enabled. The default Chrome’s DevToolsActivePort is 12209 or 9555. This is needed when automating Electron application via chromedriver 4.x or above (set port to 12209).
  • enable external chromedriver logging for chrome and electron automation via System variable nexial.browser.logChrome, nexial.browser.logElectron, and nexial.browser.logElectronVerbose.
  • use ChromeDriverService so that chrome driver can reuse same port for driver-browser communication. This helps to stabilize chrome browser automation.
  • click(locator): honors nexial.browser.forceJSClick when found during execution. This allows user more controls on how a web element should be clicked.
  • clickAll(locator): NEW command to click on all web elements matching locator. This is useful to support the more modern web applications that use <DIV> elements to disguise as dropdown options.
  • for electron automation, automatically add chrome remote debugging port to 12209 if the System variable nexial.browser.chrome.remote.port is not found.

xml commands