Cucumber For Appian

Overview

Test your Appian application within minutes with methods created specifically to operate within Appian applications and Tempo!

Common test case scenarios can be created for reusability throughout test suites. A CheatSheet.feature file that lists out all the supported methods and how to invoke them using the @Given, @When, @Then, @But, @And, and other Cucumber-supported annotation.

Note: Java 11 required for plugin version 23.4

Key Features & Functionality

With Cucumber for Appian:

  • Test scripts don't need to be updated for upgrades to supported Appian versions
  • Appian design knowledge is not required to create test scripts
  • Test scripts are easily updated for new UI changes to a form or interface
  • All of the same methods that FitNesse For Appian currently supports are supported
  • Multiple browsers are supported (Chrome v. 64-66 and Firefox v. 53-62)
Anonymous
  • Hi Richard,

    I changed my pom.xml file as suggested by you but getting build failure. Could you please assist on this.

  • Hi Venu,I had the same issue, try adding this lines to your pom.xml

  • Hi,

    I downloaded this application today and followed the instructions mentioned in Appian playbook. I am getting build error while running the "mvn clean test" command in command prompt. I have verified the mvn - Version, it is returning Maven information. Can you please help me to set up cucumber for appian.

    Thanks,

    Venu.

  • v20.2.1 Release Notes
    • Bug fixes
    • Fixed a bug regarding clicking on card layouts
  • v20.2 Release Notes
    * Fixed bug with milestone click
    * Fixed toggle box visibility on related action pop up

  • Hi,

    I was trying to execute the cucumber tests through the Azure Devops Pipeline as a build step.

    I was constantly getting the below error. Eventhough the driver was available in the correct path

    java.lang.IllegalStateException: The driver executable does not exist: D:\a\1\s\GBPA\lib\drivers\chromedriver.exe
    at com.google.common.base.Preconditions.checkState(Preconditions.java:518)
    at org.openqa.selenium.remote.service.DriverService.checkExecutable(DriverService.java:136)
    at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:131)
    at org.openqa.selenium.chrome.ChromeDriverService.access$000(ChromeDriverService.java:32)
    at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:137)
    at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:330)
    at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:88)
    at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:158)
    at com.appiancorp.ps.automatedtest.fixture.BaseFixture.setupWithBrowser(BaseFixture.java:172)
    at com.appiancorp.ps.cucumber.fixtures.CucumberBaseFixture.setupWithBrowser(CucumberBaseFixture.java:19)

  • You can use JUnit for Appian (https://community.appian.com/b/appmarket/posts/junit-for-appian). That has all of our Appian Fitnesse Fixtures. You can include those methods inside of your step definition

  • I have the same issue too. The @BeforeStep @AfterStep are very useful in our situation.

  • Hello Appian! are there any plans in the coming future to have cucumber automation available via Cypress? 

  • Could I request a couple of step definitions as enhancements to the project in order to enable some negative checks?

    # Verify field is blank:
    Given I verify field "FIELD_LABEL or [FIELD_INDEX] or FIELD_LABEL[INDEX]" is blank
    Use case: to test a 'reset filters' action to cover cleared drop-downs, date fields etc. We can currently only test cleared text fields using 'I verify field "Field" contains "" '. Complements Verify field is not blank

    # Verify field with label contains no validation message:
    Given I verify field "FIELD_LABEL or [FIELD_INDEX] or FIELD_LABEL[INDEX]" contains no validation message
    Use case: to run a check that the value I've entered does not mistakenly trigger any validation, complements I verify field "field" contains validation message "message"

    Thanks!