The web-tester
artifact provides you a API which helps you test your JSF-Page.
With this API it is easy to setup your test environment and send requests
against your Axon Ivy Engine.
Checkout our official documentation. for more information.
If your JSF-Page contains PrimeFaces
widgets, the primeui-tester
gives you the possibility to interact with those
widgets and check if it's in the condition you expected it to be.
The unit-tester
artifact provides you the following APIs for unit testing:
The web-tester runs with Selenide, Selenium and JUnit 5. Simply add this library to your dependencies in the pom.xml:
<dependencies>
...
<dependency>
<groupId>com.axonivy.ivy.webtest</groupId>
<artifactId>web-tester</artifactId>
<version>9.2.2</version>
<scope>test</scope>
</dependency>
</dependencies>
Add a new test class to test your process (e.g. WebTestRegistrationForm.java) or a PrimeFaces widget (e.g. TestPrimeUi.java):
@IvyWebTest
class WebTest {
@Test
void registerNewCustomer() {
open(EngineUrl.createProcessUrl("myWorkflow/154616078A1D629D/start.ivp"));
$(By.id("form:firstname")).sendKeys("Unit");
$(By.id("form:lastname")).sendKeys("Test");
$(By.id("form:submit")).shouldBe(enabled).click();
$(By.id("form:newCustomer")).shouldBe(visible, text("Unit Test"));
}
@Test
void selectOneMenu() {
open("https://primefaces.org/showcase/ui/input/oneMenu.xhtml");
var selectOne = PrimeUi.selectOne(selectMenuForLabel("Basic:"));
assertThat(selectOne.getSelectedItem()).isEqualTo("Select One");
var ps4 = "PS4";
selectOne.selectItemByLabel(ps4);
assertThat(selectOne.getSelectedItem()).isEqualTo(ps4);
}
}
- Update the badge versions in this file at the bottom
- Check/Update the changelog file above
Since 9.4: Releasing is only possible on a release branch.
- Create a release branch if it does not exist yet (e.g. release/10.0)
- Run the release build on the release branch
- Merge the Pull Request for next development iteration
- If you have created a new release branch, then manually raise the version on the master branch to the next major or minor version by executing the following command in the root of this project:
mvn versions:set -DnewVersion=10.0.0-SNAPSHOT -DprocessAllModules -DgenerateBackupPoms=false
Wait until the maven central release is available: this may take several hours until it's fully distributed.
- Raise web-tester in other repos by triggering this build
The Apache License, Version 2.0