nexial-core 2.1 (2019-04-13)
Release 2.1
2019-04-13
General
Fixes:
- code fix to render correctly (color) the console output for SKIPPED step in
base »
repeatUntil(steps,maxWaitMs)loop. - simplify
nexial.shby eliminating the need for a shell script to be generated dynamically. - fix error with macro refactoring via
nexial-macro-update.sh. - fix error where data variables defined in
project.propertiesare not overwritten via base »save(var,value). As with this fix, only certain System variables will not be overwritten due to the run time nature of such data variables (e.g.nexial.manageMemory).
Improvements:
- shell scripts support commandline arguments that contain spaces.
- added execution output html link and more meaningful data to execution result notification mail.
- added preview option(-p) for macro refactor batch file.
Project Inspector
- code fix to
nexial-project-inspectorwhen the target project does not containproject.properties - code fix to
nexial-project-inspectorwhen the target project does not containartifact/bindirectory - adding a bit more project metadata when inspecting project via
nexial-project-inspector. - support
nexial-macro-updateandnexial-variable-updatebatch files from Project Inspector. - slight enhancement to
nexial-project-inspectorto automatically open HTML after script completes. - performance improvement on scanning project artifacts via local cache, which is stored in
$USER_HOME/.nexial/projectCache/$PROJECT_NAME. - minor output adjustment to improve readability.
- improvement on data variable inspection on commands that take on multiple variable parameters.
System Variables
nexial.io.copyConfig: provides modes for copying new file to existing file location.
Nexial Expression
- XML Expression
append: NEW append content to xml document.clear: NEW clear content of xml document.delete: NEW delete node from xml document.insertAfter: NEW insert content after xml document.insertBefore: NEW insert content after xml document.prepend: NEW prepend content to xml document.replace: NEW replace xml node with content from xml document.replaceIn: NEW replace inside xml content of xml document.
- LIST Expression
- LIST »
sum: fix the handling of numbers with different floating points. Now Nexial should resolve to the largest (or longest) floating points found during thesumoperation. - LIST »
replaceItem: fix to support empty item replacement
- LIST »
- WEB Expression: NEW expression for web automation
click(locator): This clicks on element specified via locator.deselect(locator,option1,option2,option3...): deselects one or multiple options from the listbox.fetchAsCsv(locator1,locator2,locator3...): stores the values of web elements specified via locators in CSV formatselect(locator,option1,option2,option3...): This selects one or multiple options from the listbox.selectWindow(locator,winId): This selects the open tab/window as per thewindows idor byindex..text: transforms the associated Web statement(s) result into plain text.type(locator,value): Enters the specifiedvalueinto the first element that matches the specifiedlocator.typeKeys(locator,value): performs keystroke on the element specified vialocator. For more information,wait(waitMs): waits till the desired time(in milli seconds) passed as input parameterwaitMs
- NUMBER Expression:
whole- renamedroundoperation towhole
base commands
macro(file,sheet,name): support the reference of macro files from directories other thanartifact/script.
desktop commands
- code fix to
editTableCells(row,nameValues)when combo box is not editable (can’t type text in combo box).
io commands
copyFilesByRegex(sourceDir,regex,target): copy all files from sourceDir matching specified regex recursively to target location.moveFilesByRegex(sourceDir,regex,target): move all files from sourceDir matching specified regex recursively to target location.deleteFilesByRegex(sourceDir,regex): delete all files from sourceDir matching specified regex recursively.
rdbms commands
- now supports
CREATEandDROPkeywords for SQL execution
number commands
whole(var)- NEW round number as Whole number(Integer)roundTo(var,closestDigit)- renamedround(var,closestDigit)command toroundTo(var,closestDigit)
web commands
- new System variable -
nexial.web.scrollIntoViewto reduce additional (and possibly unnecessary)scrollIntoViewautomation prior to interacting with an element. This would be applicable to “type”, “typeKeys”, “click” and “double click” commands. - code fix for Electron app where not all Selenium/Webdriver features are supported, particularly
actions. - code fix for Electron app where
element.clear()is not really clearing out input value due to registered event handler on the application. In such case, Nexial issue hardBACKSPACEto compensate the clearing intent. rightClick(locator): NEW command to support right click.nexial.web.clearWithBackspace: NEW System variable to forcefully clear out text input usingBACKSPACEkeystrokes. Default isfalse(i.e. not enabled).- improved clearing strategy on text input field by first issuing an
ENDkeystroke and then issuing the appropriate number ofBACKSPACE.
- improved clearing strategy on text input field by first issuing an
assertElementsPresent(prefix): NEW command to assert a series of web elements via their respective locators.saveValues(var,locator): NEW command to save value of multiple matching web form elements.
xml commands
insertAfter(xml,xpath,content,var): NEW command to insert content after xml document specified viaxpathinsertBefore(xml,xpath,content,var): NEW command to insert content before xml document specified viaxpathreplaceIn(xml,xpath,content,var): NEW command to replace inside content of an XML document specified viaxpath