A classic defect of the pairwise genre. Only for certain types of data, and only on one of the many code paths. Resolved.
This was an interesting pairwise defect. When you create a parameter in Hexawise with the same name as an existing parameter, you get an error. When you create a parameter with more than 7 parameter values you get a warning. What do you think happens if you do both of these at the same time? 💣
Fixed.
The parameter name field in the parameter name dialog was a bit over eager treating a tab to the next field as if you selected a parameter for reuse from the auto-complete drop down. This made keyboard navigation of this dialog problematic.
Customers with dedicated Hexawise instances now have more control over how they customize their Micro Focus ALM exports with a sequential field type and control over inclusion of default fields.
BDD with Gherkin is often described as writing your tests in Plain English. But what if your development team works in Spanish? Or Japanese? Or Esperanto (hey... it could happen)?
Here are the languages Gherkin supports. Hexawise Automate now supports the same.
To use a different language in Gherkin you start your script with a language tag as the first line. For example, Spanish:
#language: es
Then your Gherkin test script can be in Spanish.
There were some rare cases where test plan constraints would disallow the creation of requirements as conflicting, even though they didn't conflict with any of the test plan's constraints.
In preparation for the introduction of more advanced constraints in Hexawise we've updated the terminology used to describe constraints to avoid the use of the term "pair" and "value pair". Constraints will be able to constrain more than just 2 parameters so the "pair" terminology will be outdated.
Old Term → New term
Invalid pair → invalid constraint
Married pair → bound constraint
Bi-directional married pair → mutually bound constraint
At the same time, we've updated the default Hexawise Excel import and export file format to include a single sheet for "Constraints" rather than separate sheets for invalid and married pairs. If you have existing files in the format with 2 separate sheets for these, they are backwards compatible and will continue to import.
You'll continue to see the old terminology in use in some help documentation and educational materials. These will be updated over time.
Browser specific, a very common type of pairwise defect.
On very large test plans that are heavily constrained the number of constraints would bog down the highlighting of constraints and constrained parameter values in the constraint UI. This has been radically improved so performance is maintained as the test plan size and number of constraints grows.
The button to dismiss the explanatory usage text for Hexawise Automate could be off screen on an extremely small browser window leaving you unable to dismiss it. This has been resolved by making the usage text area scrollable if the small window size needs it to be.
Another area of Hexawise Automate performance that could be affected by large test scripts on large test plans was the Gherkin feature file export. The performance of this export has been improved substantially for large test scripts.
Implied constraints are added automatically by Hexawise in reaction to the constraints you add manually. Hexawise is able to work out most of the logical implications of constraints, and add those implications in for you. This saves you needing to add them yourself, or worse, leaving them missing, resulting in parameters with no possible value in generated test cases.
Ever since implied constraints, a unique and innovative time saving feature, was introduced in Hexawise, they've been shown in partial transparency alongside user generated constraints in the grid of parameter values in the constraint user interface. While this holistic view can be very important to understanding the complete picture of how your test plan is constrained, it can also result in a busy picture when you want to understand just the constraints you added to the test plan, and not their logical implications.
We've changed the constraint UI so that implied constraints are only included in the grid when you expand the disclosure triangle to show the list of implied constraints for your test plan. This gives you the control to see just your manual constraints in the grid, or to see the complete constraint picture.
While Hexawise Optimize will only include test cases that newly cover some pairs (or triples, quadruples, etc.) of parameter values, not every single parameter value in a generated test case will always be covering previously uncovered pairs. Parameter values in a generated test case that aren't involved in providing any new coverage are shown in In purple italics.
In Scenario and Scenario Outline blocks in Hexawise Automate test scripts you may utilize only a subset of your test plan's parameters, just those that you end up including with angle bracket <Parameter name>
and curly bracket {[Parameter name] Parameter value}
syntax. In this way, it's possible that for some of your generated test cases, the subset of parameters you are using in the block all contain only values in purple italics. In other words, it's possible that some generated test cases don't provide any additional coverage for the subset of parameters.
In those circumstances, Hexawise Automate was still including all generated tests cases in the Examples
data table or in the generated Scenario
blocks. Now Hexawise Automate determines if any of the generated test cases provide no needed coverage for the subset of parameters and removes those generated test cases from the Example
data table or the generated Scenario
blocks so there are fewer test cases to test.
Automate performance has degraded quite rapidly as the size of the test script grows past a few hundred lines. Not many Gherkin scripts get to this size - even less now that Hexawise Automate supports multiple feature files per plan (tabs in Hexawise Automate) - but those that do would hit a performance cliff.
Some small but very important changes were made to remove this bottleneck, and the performance of test scripts with many hundreds to thousands of lines is now nearly the same as it is on very small scripts.
100% less broken now.
In Scenario
and Scenario Outline
blocks in Hexawise Automate test scripts, you can select a subset of your test plan's generated test cases by using the curly bracket {[Parameter name] Parameter value}
syntax. In this way it is possible though to over constrain the block and end up with an empty subset of your generated test cases. If this happened, Hexawise Automate wasn't especially helpful in the preview pane in letting you know what has happened. This has been improved to be more helpful.
You can now export your Hexawise test plans for use in SmartBear's Zephyr Jira test case management tool.
On larger plans that required both a vertical and a horizontal scroll bar in the Define Inputs and Constraints user interfaces, the horizontal scrollbar would often not appear until you scrolled first some way down the UI with the vertical scrollbar. This has been fixed.
Hexawise Automate now does a better job of pointing out lines in your Gherkin features that contain invalid Gherkin syntax.
The autocomplete drop-down (invoked with the {
character) now better handles parameter names with spaces and special characters.
Navigating away from the field with the autocomplete drop-down open no longer strands it open.
A regression in the Hexawise Automate portion of the plan importer impacted the ability to revert plans to a previous version in some cases.
Hexawise Automate creates as few rows in the Examples data table of a Scenario Outline
or as few generated Scenario
blocks as possible.
Specifically, Automate only includes unique rows or generated Scenario
blocks. While every generated Hexawise test case is, of course, a unique case, a Scenario
or Scenario Outline
in Hexawise Automate can include just a subset of parameters in the test plan, such that the subset is not unique for every generated test case. In those cases, Hexawise Automate will use fewer test cases for the Scenario
or Scenario Outline
, only the unique cases.
Automate was treating the value expansions of a single parameter value that is expanded with value expansions (an equivalence class) as unique, rather than treating these value expansions as equivalent, and therefore not contributing to a test case subset being unique. This issue is now fixed.
Always a tricky sort of pairwise defect. Have you thought about the different ways a user can take the same action? In this case, naming a test script.
Usage of Hexawise Automate has been skyrocketing and we felt it was time to act on what we've learned. This update has been months in the making, but we're proud to release it today. Thanks to everyone for all the great suggestions on how to improve Hexawise Automate.
Here's what we did:
Scenario
expansions as you edit without having to export Scenario Outline
and Scenario
with just the keyword, or a full snippetPlease let us know what you think about the changes and keep the suggestions coming!
A regression caused the famous purple italics, which indicate a test case parameter value is not being used to achieve combinatorial coverage and can be changed, to become simply italics. No purple!
The responsible developer has been identified and dealt with in a severe manner.