nexial-core 2.9 (2019-12-15)
Release 2.9
2019-12-15
General
Fixes
- fix execution output so that the result of base »
verbose(text)
command merges cells fromparam1
throughparam5
. - Project Inspector:
- registered previously missed System variables for better project inspection; otherwise project inspector would report valid System variables as “unknown”.
- fixed incorrect test step row number reported in project inspector HTML.
Improvements
nexial.lastOutputLink
: now reflect cloud location (url) whennexial.outputToCloud
is set totrue
.- generate dedicated error log file for error or failure that occurred during execution.
- generated error log will be linked to the
#summary
tab of the execution output (excel).
- generated error log will be linked to the
- first version of On-Demand Inspection.
- added shutdown hook to terminate any processes/programs initialized during execution (such as webdriver or browser).
This will not work if Nexial is terminated forcefully via Task Manager or
SIGKILL
.
JSONPath
- code fix:
count
operation now correctly returns0
instead of1
. Affected expression: - JSON: fix to extract an empty JSON array as
[]
rather thannull
.
Nexial Interactive
- clear off any “end immediate” or “fail immediate” flags before commencing any execution. This is necessary so that error or failure from any preceding executions won’t affect subsequent execution.
System Variable
nexial.scope.required.variables
: NEW System variable to specify required variables for each iteration. If these variables are undefined, user will get console prompt to assign value to missing variable. This variable is disabled by design, when Nexial is executing in the CI/CD environment.
Built-in Functions
$(array|subarray|myarray|start|end)
: supports the use of-1
forend
to signify the last position of the target array.
Nexial Expression
- JSON »
list
: code fix to enforce the use ofnexial.textDelim
for converting JsonArray to list. - CONFIG »
keys
: code fix to ensure proper textual output. - CONFIG »
keys
: code fix to ensure order as found in source. - LIST »
sublist
: supports the use of-1
for the end range to signify the last position of the target list.
csv commands
compareExtended(var,profile,expected,actual)
: code fix to support large file (> 200MB) processing.- [
[profile].compareExt.expected.readAsIs
]: NEW configuration to enforce that theexpected
should be read as is. - [
[profile].compareExt.actual.readAsIs
]: NEW configuration to enforce that theactual
should be read as is.
- [
- support CSV content line longer than the default 4096 via
nexial.csv.maxColumnWidth
System variable.
excel commands
columnarCsv(file,worksheet,ranges,output)
: support columns more than the default 512 vianexial.csv.maxColumns
System variable, and column length longer than the default 4096 character vianexial.csv.maxColumnWidth
System variable.
rdbms commands
- correctly capture rollback statements/events.
- replace deprecated DBCP (3rd-party library from Apache Commons) related code.
- forced single-query transaction to close connection after execution; required to avoid resource contention.
- remove double-commit scenario to avoid unnecessary error condition.
- allow for non-standard or non-CRUD statements.
saveResults(db,sqls,outputDir)
: code fix to ensure all output are listed in execution output (Excel) and uploaded to the cloud whennexial.outputToCloud
is set totrue
.saveResult(db,sqls,outputDir)
: code fix to ensure all output are listed in execution output (Excel) and uploaded to the cloud whennexial.outputToCloud
is set totrue
.
sound commands
- code fix: escape special characters to avoid “sound” API error.
web commands
- browser metrics:
- minor typo fix.
- fixed timing calculation to avoid negative time.
- address Electron issue where browser signature cannot be properly derived.
- address exception condition when the target browser window is no longer available for inspection.
- code fix to ensure browser metrics report is uploaded to cloud when
nexial.outputToCloud
to set totrue
.
- firefox: turn on automatic download and point the download directory to current output directory.
- chrome: point default download directory to current output directory.
saveBrowserVersion(var)
: NEW command to current browser version ( along with browser name) tovar
.- add browser metadata as System variable
nexial.browser.meta
.