Skip to content

Releases: fhoeben/hsac-fitnesse-fixtures

3.6.1

25 Sep 20:14
Compare
Choose a tag to compare

Release 3.6.1 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.6.1</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.6.1 (Requires Java 8)

  • Refactored handling of technical selectors for BrowserTest.
  • Allowed a bit more customisation of Selenium driver handling.

New in 3.6.0 (Requires Java 8)

  • SeleniumDriverSetup has been refactored to move actual creation of Selenium WebDriver instances to separate classes. A new SeleniumHelper instance will be created each time a new session is created.

New in 3.5.0 (Requires Java 8)

  • BrowserTest's save page source now also deals correctly with iframes without a source attribute.
  • Fixes a bug in BrowserTest where setting set implicit wait for angular to true caused the timeouts used to be changed.
  • Simplified some of the xpaths used by BrowserTest to find elements based on their (nested) text.
  • Refactored BrowserTest (, SeleniumHelper and a couple of Bys) to have a type parameter specifying the subclass of WebElement they work with. This to facilitate creating subclasses targeting the Elements used by Appium.

New in 3.4.2 (Requires Java 8)

  • Chromedriver updated to 2.32
  • JUnitTeamcityReporter fixed to report test name when test is started, and not test Java class.
  • Some refactoring in creation of Selenium RemoteWebDriver instances

New in 3.4.1 (Requires Java 8)

  • JUnitTeamcityReporter includes flowId in its messages, so test reporting with multiple concurrent processes is more reliable.

New in 3.4.0 (Requires Java 8)

  • Simplified copying of files from FitNesse files section, to the test result output directory, prior to a run via HsacFitNesseRunner. Copying the files is needed if tests need to read any files present there and previously required an extra step (like execution of Maven's copy-resources goal). Now HsacFitNesseRunner will copy any files present there by default (excluding files that are probably generated and not required for a test run). Which files are excluded can be configured using the FilesSectionCopy annotation.
  • Added the ability to generate a combined overview report of multiple test runs (using HsacFitNesseRunner ). This can be useful when multiple test runs are run in separate JVMs (to allow parallel execution) each with its own OutputDir. This causes a separate test report for each run, which previously had to be published/reviewed separately. Using the HtmlReportIndexGenerator one can get a single report showing all combined test results from each run. The generator can be invoked as a standalone Java program, for instance using mvn exec:java@combine-reports as defined in this project's pom.xml after all tests runs have completed.
  • Removed (broken) link to Galen report in HsacFitNesseRunner test run top level report when no test using LayoutTest was included in the run.

New in 3.3.2 (Requires Java 8)

  • HsacFitNesseRunner now allows the output directory, FitNesse root and FitNesse directory to be controlled via annotations (like FitNesseRunner), addressing #151. Output directory can also be overridden via system property fitnesseResultsDir.
  • Refactored BrowserTest's clearing of elements and entering of values. enter <value> as <place> can now also be used as alternative to select <value> for <place>, which was already possible via enter <value> in row where <selectColumn> is <selectValue>

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files conta...
Read more

3.6.0

24 Sep 18:51
Compare
Choose a tag to compare

Release 3.6.0 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.6.0</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.6.0 (Requires Java 8)

  • SeleniumDriverSetup has been refactored to move actual creation of Selenium WebDriver instances to separate classes. A new SeleniumHelper instance will be created each time a new session is created.

New in 3.5.0 (Requires Java 8)

  • BrowserTest's save page source now also deals correctly with iframes without a source attribute.
  • Fixes a bug in BrowserTest where setting set implicit wait for angular to true caused the timeouts used to be changed.
  • Simplified some of the xpaths used by BrowserTest to find elements based on their (nested) text.
  • Refactored BrowserTest (, SeleniumHelper and a couple of Bys) to have a type parameter specifying the subclass of WebElement they work with. This to facilitate creating subclasses targeting the Elements used by Appium.

New in 3.4.2 (Requires Java 8)

  • Chromedriver updated to 2.32
  • JUnitTeamcityReporter fixed to report test name when test is started, and not test Java class.
  • Some refactoring in creation of Selenium RemoteWebDriver instances

New in 3.4.1 (Requires Java 8)

  • JUnitTeamcityReporter includes flowId in its messages, so test reporting with multiple concurrent processes is more reliable.

New in 3.4.0 (Requires Java 8)

  • Simplified copying of files from FitNesse files section, to the test result output directory, prior to a run via HsacFitNesseRunner. Copying the files is needed if tests need to read any files present there and previously required an extra step (like execution of Maven's copy-resources goal). Now HsacFitNesseRunner will copy any files present there by default (excluding files that are probably generated and not required for a test run). Which files are excluded can be configured using the FilesSectionCopy annotation.
  • Added the ability to generate a combined overview report of multiple test runs (using HsacFitNesseRunner ). This can be useful when multiple test runs are run in separate JVMs (to allow parallel execution) each with its own OutputDir. This causes a separate test report for each run, which previously had to be published/reviewed separately. Using the HtmlReportIndexGenerator one can get a single report showing all combined test results from each run. The generator can be invoked as a standalone Java program, for instance using mvn exec:java@combine-reports as defined in this project's pom.xml after all tests runs have completed.
  • Removed (broken) link to Galen report in HsacFitNesseRunner test run top level report when no test using LayoutTest was included in the run.

New in 3.3.2 (Requires Java 8)

  • HsacFitNesseRunner now allows the output directory, FitNesse root and FitNesse directory to be controlled via annotations (like FitNesseRunner), addressing #151. Output directory can also be overridden via system property fitnesseResultsDir.
  • Refactored BrowserTest's clearing of elements and entering of values. enter <value> as <place> can now also be used as alternative to select <value> for <place>, which was already possible via enter <value> in row where <selectColumn> is <selectValue>

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
    ...
Read more

3.5.0

21 Sep 19:58
Compare
Choose a tag to compare

Release 3.5.0 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.5.0</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.5.0 (Requires Java 8)

  • BrowserTest's save page source now also deals correctly with iframes without a source attribute.
  • Fixes a bug in BrowserTest where setting set implicit wait for angular to true caused the timeouts used to be changed.
  • Simplified some of the xpaths used by BrowserTest to find elements based on their (nested) text.
  • Refactored BrowserTest (, SeleniumHelper and a couple of Bys) to have a type parameter specifying the subclass of WebElement they work with. This to facilitate creating subclasses targeting the Elements used by Appium.

New in 3.4.2 (Requires Java 8)

  • Chromedriver updated to 2.32
  • JUnitTeamcityReporter fixed to report test name when test is started, and not test Java class.
  • Some refactoring in creation of Selenium RemoteWebDriver instances

New in 3.4.1 (Requires Java 8)

  • JUnitTeamcityReporter includes flowId in its messages, so test reporting with multiple concurrent processes is more reliable.

New in 3.4.0 (Requires Java 8)

  • Simplified copying of files from FitNesse files section, to the test result output directory, prior to a run via HsacFitNesseRunner. Copying the files is needed if tests need to read any files present there and previously required an extra step (like execution of Maven's copy-resources goal). Now HsacFitNesseRunner will copy any files present there by default (excluding files that are probably generated and not required for a test run). Which files are excluded can be configured using the FilesSectionCopy annotation.
  • Added the ability to generate a combined overview report of multiple test runs (using HsacFitNesseRunner ). This can be useful when multiple test runs are run in separate JVMs (to allow parallel execution) each with its own OutputDir. This causes a separate test report for each run, which previously had to be published/reviewed separately. Using the HtmlReportIndexGenerator one can get a single report showing all combined test results from each run. The generator can be invoked as a standalone Java program, for instance using mvn exec:java@combine-reports as defined in this project's pom.xml after all tests runs have completed.
  • Removed (broken) link to Galen report in HsacFitNesseRunner test run top level report when no test using LayoutTest was included in the run.

New in 3.3.2 (Requires Java 8)

  • HsacFitNesseRunner now allows the output directory, FitNesse root and FitNesse directory to be controlled via annotations (like FitNesseRunner), addressing #151. Output directory can also be overridden via system property fitnesseResultsDir.
  • Refactored BrowserTest's clearing of elements and entering of values. enter <value> as <place> can now also be used as alternative to select <value> for <place>, which was already possible via enter <value> in row where <selectColumn> is <selectValue>

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

N...

Read more

3.4.2

19 Sep 19:00
Compare
Choose a tag to compare

Release 3.4.2 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.4.2</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.4.2 (Requires Java 8)

  • Chromedriver updated to 2.32
  • JUnitTeamcityReporter fixed to report test name when test is started, and not test Java class.
  • Some refactoring in creation of Selenium RemoteWebDriver instances

New in 3.4.1 (Requires Java 8)

  • JUnitTeamcityReporter includes flowId in its messages, so test reporting with multiple concurrent processes is more reliable.

New in 3.4.0 (Requires Java 8)

  • Simplified copying of files from FitNesse files section, to the test result output directory, prior to a run via HsacFitNesseRunner. Copying the files is needed if tests need to read any files present there and previously required an extra step (like execution of Maven's copy-resources goal). Now HsacFitNesseRunner will copy any files present there by default (excluding files that are probably generated and not required for a test run). Which files are excluded can be configured using the FilesSectionCopy annotation.
  • Added the ability to generate a combined overview report of multiple test runs (using HsacFitNesseRunner ). This can be useful when multiple test runs are run in separate JVMs (to allow parallel execution) each with its own OutputDir. This causes a separate test report for each run, which previously had to be published/reviewed separately. Using the HtmlReportIndexGenerator one can get a single report showing all combined test results from each run. The generator can be invoked as a standalone Java program, for instance using mvn exec:java@combine-reports as defined in this project's pom.xml after all tests runs have completed.
  • Removed (broken) link to Galen report in HsacFitNesseRunner test run top level report when no test using LayoutTest was included in the run.

New in 3.3.2 (Requires Java 8)

  • HsacFitNesseRunner now allows the output directory, FitNesse root and FitNesse directory to be controlled via annotations (like FitNesseRunner), addressing #151. Output directory can also be overridden via system property fitnesseResultsDir.
  • Refactored BrowserTest's clearing of elements and entering of values. enter <value> as <place> can now also be used as alternative to select <value> for <place>, which was already possible via enter <value> in row where <selectColumn> is <selectValue>

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

New in 2.12.2

  • JsonHttpTest added a method to json http test to check if json path exists #137
  • BrowserTest new command drag and drop <place> to <target> #139
  • BrowserTest's waitAfterScroll() can be overridden in subclasses #135
  • Webdrivers for macOS in 'standalone.zip' have execute bit set
  • Example Java class for subclassing BrowserTest simplified, and extended sample page to also show usage of scenario to introduce abstraction over finding element by xPath.
  • Improved handling of nested maps inside new list elements when setting values in MapFixture and HttpTes...
Read more

3.4.1

18 Sep 20:49
Compare
Choose a tag to compare

Release 3.4.1 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.4.1</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.4.1 (Requires Java 8)

  • JUnitTeamcityReporter includes flowId in its messages, so test reporting with multiple concurrent processes is more reliable.

New in 3.4.0 (Requires Java 8)

  • Simplified copying of files from FitNesse files section, to the test result output directory, prior to a run via HsacFitNesseRunner. Copying the files is needed if tests need to read any files present there and previously required an extra step (like execution of Maven's copy-resources goal). Now HsacFitNesseRunner will copy any files present there by default (excluding files that are probably generated and not required for a test run). Which files are excluded can be configured using the FilesSectionCopy annotation.
  • Added the ability to generate a combined overview report of multiple test runs (using HsacFitNesseRunner ). This can be useful when multiple test runs are run in separate JVMs (to allow parallel execution) each with its own OutputDir. This causes a separate test report for each run, which previously had to be published/reviewed separately. Using the HtmlReportIndexGenerator one can get a single report showing all combined test results from each run. The generator can be invoked as a standalone Java program, for instance using mvn exec:java@combine-reports as defined in this project's pom.xml after all tests runs have completed.
  • Removed (broken) link to Galen report in HsacFitNesseRunner test run top level report when no test using LayoutTest was included in the run.

New in 3.3.2 (Requires Java 8)

  • HsacFitNesseRunner now allows the output directory, FitNesse root and FitNesse directory to be controlled via annotations (like FitNesseRunner), addressing #151. Output directory can also be overridden via system property fitnesseResultsDir.
  • Refactored BrowserTest's clearing of elements and entering of values. enter <value> as <place> can now also be used as alternative to select <value> for <place>, which was already possible via enter <value> in row where <selectColumn> is <selectValue>

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

New in 2.12.2

  • JsonHttpTest added a method to json http test to check if json path exists #137
  • BrowserTest new command drag and drop <place> to <target> #139
  • BrowserTest's waitAfterScroll() can be overridden in subclasses #135
  • Webdrivers for macOS in 'standalone.zip' have execute bit set
  • Example Java class for subclassing BrowserTest simplified, and extended sample page to also show usage of scenario to introduce abstraction over finding element by xPath.
  • Improved handling of nested maps inside new list elements when setting values in MapFixture and HttpTest.

New in 2.12.1

  • Fix HsacExamples.SymbolSamples to make !randomIBAN work
  • JsonHttpTest has new method to retrieve the n-th element of a json path expression which returns an array: element <index> of json path <expression>
    ...
Read more

3.4.0

17 Sep 17:17
Compare
Choose a tag to compare

Release 3.4.0 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.4.0</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.4.0 (Requires Java 8)

  • Simplified copying of files from FitNesse files section, to the test result output directory, prior to a run via HsacFitNesseRunner. Copying the files is needed if tests need to read any files present there and previously required an extra step (like execution of Maven's copy-resources goal). Now HsacFitNesseRunner will copy any files present there by default (excluding files that are probably generated and not required for a test run). Which files are excluded can be configured using the FilesSectionCopy annotation.
  • Added the ability to generate a combined overview report of multiple test runs (using HsacFitNesseRunner ). This can be useful when multiple test runs are run in separate JVMs (to allow parallel execution) each with its own OutputDir. This causes a separate test report for each run, which previously had to be published/reviewed separately. Using the HtmlReportIndexGenerator one can get a single report showing all combined test results from each run. The generator can be invoked as a standalone Java program, for instance using mvn exec:java@combine-reports as defined in this project's pom.xml after all tests runs have completed.
  • Removed (broken) link to Galen report in HsacFitNesseRunner test run top level report when no test using LayoutTest was included in the run.

New in 3.3.2 (Requires Java 8)

  • HsacFitNesseRunner now allows the output directory, FitNesse root and FitNesse directory to be controlled via annotations (like FitNesseRunner), addressing #151. Output directory can also be overridden via system property fitnesseResultsDir.
  • Refactored BrowserTest's clearing of elements and entering of values. enter <value> as <place> can now also be used as alternative to select <value> for <place>, which was already possible via enter <value> in row where <selectColumn> is <selectValue>

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

New in 2.12.2

  • JsonHttpTest added a method to json http test to check if json path exists #137
  • BrowserTest new command drag and drop <place> to <target> #139
  • BrowserTest's waitAfterScroll() can be overridden in subclasses #135
  • Webdrivers for macOS in 'standalone.zip' have execute bit set
  • Example Java class for subclassing BrowserTest simplified, and extended sample page to also show usage of scenario to introduce abstraction over finding element by xPath.
  • Improved handling of nested maps inside new list elements when setting values in MapFixture and HttpTest.

New in 2.12.1

  • Fix HsacExamples.SymbolSamples to make !randomIBAN work
  • JsonHttpTest has new method to retrieve the n-th element of a json path expression which returns an array: element <index> of json path <expression>

New in 2.12.0

  • Build based on compacted Git repository (#130), Selenium web driver executables now have different file names. (Please delete the existing content of ...
Read more

3.3.2

13 Sep 07:01
Compare
Choose a tag to compare

Release 3.3.2 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.3.2</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.3.2 (Requires Java 8)

  • HsacFitNesseRunner now allows the output directory, FitNesse root and FitNesse directory to be controlled via annotations (like FitNesseRunner), addressing #151. Output directory can also be overridden via system property fitnesseResultsDir.
  • Refactored BrowserTest's clearing of elements and entering of values. enter <value> as <place> can now also be used as alternative to select <value> for <place>, which was already possible via enter <value> in row where <selectColumn> is <selectValue>

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

New in 2.12.2

  • JsonHttpTest added a method to json http test to check if json path exists #137
  • BrowserTest new command drag and drop <place> to <target> #139
  • BrowserTest's waitAfterScroll() can be overridden in subclasses #135
  • Webdrivers for macOS in 'standalone.zip' have execute bit set
  • Example Java class for subclassing BrowserTest simplified, and extended sample page to also show usage of scenario to introduce abstraction over finding element by xPath.
  • Improved handling of nested maps inside new list elements when setting values in MapFixture and HttpTest.

New in 2.12.1

  • Fix HsacExamples.SymbolSamples to make !randomIBAN work
  • JsonHttpTest has new method to retrieve the n-th element of a json path expression which returns an array: element <index> of json path <expression>

New in 2.12.0

  • Build based on compacted Git repository (#130), Selenium web driver executables now have different file names. (Please delete the existing content of the 'wiki/webdrivers' directory after upgrading, new executables will be downloaded on startup.)
  • Upgraded to hsac-fitnesse-plugin 1.18.0 and added randomEmail and randomIban to the SymbolSamples, #132

3.3.1

07 Sep 11:58
Compare
Choose a tag to compare

Release 3.3.1 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.3.1</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.3.1 (Requires Java 8)

  • Fixed bug in BrowserTest's value of <column> in row where <selectColumn> is <value>. It now also retrieves the values of disabled inputs in a cell.
  • Refactored BrowserTest's finding of elements inside grids, options in selects and items inside a numbered list to separate classes.

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

New in 2.12.2

  • JsonHttpTest added a method to json http test to check if json path exists #137
  • BrowserTest new command drag and drop <place> to <target> #139
  • BrowserTest's waitAfterScroll() can be overridden in subclasses #135
  • Webdrivers for macOS in 'standalone.zip' have execute bit set
  • Example Java class for subclassing BrowserTest simplified, and extended sample page to also show usage of scenario to introduce abstraction over finding element by xPath.
  • Improved handling of nested maps inside new list elements when setting values in MapFixture and HttpTest.

New in 2.12.1

  • Fix HsacExamples.SymbolSamples to make !randomIBAN work
  • JsonHttpTest has new method to retrieve the n-th element of a json path expression which returns an array: element <index> of json path <expression>

New in 2.12.0

  • Build based on compacted Git repository (#130), Selenium web driver executables now have different file names. (Please delete the existing content of the 'wiki/webdrivers' directory after upgrading, new executables will be downloaded on startup.)
  • Upgraded to hsac-fitnesse-plugin 1.18.0 and added randomEmail and randomIban to the SymbolSamples, #132

3.3.0

03 Sep 18:59
Compare
Choose a tag to compare

Release 3.3.0 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.3.0</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.3.0 (Requires Java 8)

  • FileFixture, new methods to:
    • check for existence of a file
    • delete a file
    • poll (check repeatedly) until a file is created (or no longer exists)
    • poll to check a file's size exceeds a certain value
  • BrowserTest now also looks for 'summary' elements to be clicked, and allows a summary's text to be used to specify its 'details' element as a container.
  • Refactored BrowserTest's finding of elements to separate ...By classes instead of having that logic be part of BrowserTest and SeleniumHelper

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

New in 2.12.2

  • JsonHttpTest added a method to json http test to check if json path exists #137
  • BrowserTest new command drag and drop <place> to <target> #139
  • BrowserTest's waitAfterScroll() can be overridden in subclasses #135
  • Webdrivers for macOS in 'standalone.zip' have execute bit set
  • Example Java class for subclassing BrowserTest simplified, and extended sample page to also show usage of scenario to introduce abstraction over finding element by xPath.
  • Improved handling of nested maps inside new list elements when setting values in MapFixture and HttpTest.

New in 2.12.1

  • Fix HsacExamples.SymbolSamples to make !randomIBAN work
  • JsonHttpTest has new method to retrieve the n-th element of a json path expression which returns an array: element <index> of json path <expression>

New in 2.12.0

  • Build based on compacted Git repository (#130), Selenium web driver executables now have different file names. (Please delete the existing content of the 'wiki/webdrivers' directory after upgrading, new executables will be downloaded on startup.)
  • Upgraded to hsac-fitnesse-plugin 1.18.0 and added randomEmail and randomIban to the SymbolSamples, #132

3.2.3

29 Aug 21:20
Compare
Choose a tag to compare

Release 3.2.3 of the project contains the latest FitNesse (20161106) and Selenium 3.5.3 releases.

Please note: starting with version 3.0.0 this project requires Java 8, that means this project will no longer work with Java 7.

To get started by running some sample tests (if you have a Java runtime installed): just download the standalone.zip, extract it and run it (using 'java -jar fitnesse-standalone.jar -p 9090', or on Windows just double clicking the jar to run the application on port 80 instead of 9090) from the directory where the 'standalone.zip' was extracted and open a browser to http://localhost:9090/HsacExamples.

Please note: please extract the zip to a location without spaces in its own name or in the names of its parents.

A clone or download of the sources and running with Maven and Java Development Kit is the way to go if you want to develop/debug fixtures.

To incorporate the fixtures in an existing FitNesse project you can also get it from Maven Central

        <dependency>
            <groupId>nl.hsac</groupId>
            <artifactId>hsac-fitnesse-fixtures</artifactId>
            <version>3.2.3</version>
        </dependency>

An example of Maven based project using this baseline can be found at: https://github.com/fhoeben/sample-fitnesse-project.

When upgrading from an older version, ensure all Selenium webdrivers are stopped and delete the 'wiki/plugins' and 'wiki/webdrivers' folders to remove old versions of the packaged plugins/webdrivers. When using the sample project: follow the instructions at https://github.com/fhoeben/sample-fitnesse-project#upgrading.

Version 2.12.0 is based on a changed Git repository (to make it smaller, see #130). Please create new forks of the project (or rebase your branches) before submitting any pull requests (since otherwise all old binary content will come back and make the repo huge again).

New in 3.2.3 (Requires Java 8)

  • Selenium upgraded to 3.5.3
  • BrowserTest:
    • Do not ignore the fact that a container cannot be found in the ... in <container> methods. Previously the method would have been executed like no container was requested.
    • When using the ... repeat until <place> is (not) <value> the number of seconds spent looking for elements ('seconds before timeout') is reduced to the repeat interval (rounded to seconds, with a 1 second minimum). This will make the 'action' (i.e. 'click' or 'refresh') in quicker succession.
  • BrowserTest and HttpTest:
    • When using 'repeat until' the waiting time between check and action is reduced with the amount of time used to perform the action and check, instead of always being the configured amount . In other words: previously the 'repeat interval' was the fixed wait time, now waiting is only performed if the action/check took less time than the wait time AND wait time is reduced by time used for action/check.

New in 3.2.2 (Requires Java 8)

  • Allow technical selectors to be used in NgBrowserTest's overrides of BrowserTest methods, #157
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName', even when the table is nested inside another table.
  • Refactored technical selector handling to reduce code duplication.

New in 3.2.1 (Requires Java 8)

  • Selenium upgraded to 3.5.2
  • Fixed value of <columnName> in number <row> to ensure the row is actually in the same table which has the column header 'columnName'.
  • Optimised BrowserTest's finding elements to see whether a text is displayed on screen.
  • Refactored 'container handling' (e.g. click <place> in <container>) to take advantage of Java 8 lambda functions and make it easier to override heuristics in a subclass of BrowserTest.

New in 3.2.0 (Requires Ja
va 8
)

  • Selenium upgraded to 3.5.1
  • BrowserTest
    • enter date <dd-mm-yyyy> as <place> waits for 'place' to appear, just like enter <value> as <place>.
    • New commands to refresh page, or click repeatedly, until some value (dis)appears on a page. This is useful in cases where some asynchronous process must completed before the test can continue. This is similar to the 'repeat until' functionality already offered by HttpTest and its children.
      • refresh until value of <place> is <expectedValue>
      • refresh until value of <place> is not <expectedValue>
      • click <clickPlace> until value of <checkPlace> is <expectedValue>
      • click <clickPlace> until value of <checkPlace> is not <expectedValue>

New in 3.1.0 (Requires Java 8)

  • BrowserTest
    • select <value> for <input> no longer ignores that 'input' cannot be found, when it can find 'value'. Now this is treated as an exception. To get back the same result in any test relying on the old behaviour: rewrite your test to use click <value>. #159
    • New commands:
      • enter date <dd-mm-yyyy> as <place> allows a value to be entered for a native date picker (i.e. HTML5 input of type 'date').
      • right click <place> to perform a right mouse button (i.e. context) click.
      • execute script <script> allows JavaScript contained in the wiki to be sent directly to the browser , #155
  • New utility fixture 'DateFormatFixture' which allows dates to be converted between various formats, #158
  • Removed PhantomJs from 'standalone.zip', the project now uses Chrome Headless to run its acceptances tests (making them much faster, and allowing more features to be used)

New in 3.0.0 (Requires Java 8)

  • Added new fixture 'LayoutTest' which can be used to test the (responsive) layout of web pages, in combination with BrowserTest. This fixture uses the Galen Framework and files containing checks in its spec language to perform the actual checks.
  • Upgraded Selenium to 3.4.0
  • Includes webdriver for Firefox (geckodriver)

New in 2.12.4

  • Updated Selenium chrome driver to 2.30

Fixed in 2.12.3

  • Fixed content of standalone.zip, version 2.12.2 only contained web drivers and not actual wiki or fixtures.

New in 2.12.2

  • JsonHttpTest added a method to json http test to check if json path exists #137
  • BrowserTest new command drag and drop <place> to <target> #139
  • BrowserTest's waitAfterScroll() can be overridden in subclasses #135
  • Webdrivers for macOS in 'standalone.zip' have execute bit set
  • Example Java class for subclassing BrowserTest simplified, and extended sample page to also show usage of scenario to introduce abstraction over finding element by xPath.
  • Improved handling of nested maps inside new list elements when setting values in MapFixture and HttpTest.

New in 2.12.1

  • Fix HsacExamples.SymbolSamples to make !randomIBAN work
  • JsonHttpTest has new method to retrieve the n-th element of a json path expression which returns an array: element <index> of json path <expression>

New in 2.12.0

  • Build based on compacted Git repository (#130), Selenium web driver executables now have different file names. (Please delete the existing content of the 'wiki/webdrivers' directory after upgrading, new executables will be downloaded on startup.)
  • Upgraded to hsac-fitnesse-plugin 1.18.0 and added randomEmail and randomIban to the SymbolSamples, #132