Appian is a low-code platform, which means it allows for software application development without the level of effort that used to be associated with enterprise level systems.  In a low-code environment, a high-performing Appian development team still needs to adhere to the fundamental principles of the software development lifecycle (SDLC). An application quickly built still needs to be tested, and test automation increases the velocity and coverage capability of the test team.

Functional testing is a type of testing that validates the end-to-end use case flow and design choices of your Appian applications. It helps you ensure that your applications are fit for use and meet users’ needs and expectations, as well as the business requirements and objectives. Functional testing can be executed manually – and this can be done by developers testing the product of other team members, or by a dedicated test team.

Manual testing is essential and valuable, but due to usual resource constraints, typically focuses most heavily on features being developed in the current development sprint. This means that there’s still a high risk of bugs being introduced and remaining undiscovered, because not enough regression testing can be performed.

Next-level operations get the most from resources, and automation helps get the most out of testing teams.

Test Automation is key to the most highly-effective testing processes, but does require another level of investment, at least to get started. Effective test automation requires two things – choosing an appropriate automation tool, and staffing test engineers trained on how to script, run, and report on the tests.

The Appian platform supports three functional UI test automation tools that allow test teams to write and run test cases: FitNesse for Appian, Cucumber for Appian, and the Appian Selenium API. These tools are typically used by a functional test team that writes and executes manual tests.  When manual tests are automated, functional testers are freed to execute more creative and targeted tests. These tools are similar in their objective, but they vary in capacity and the level of effort required to establish the testing regime.

In this blog post, we’ll review these tools, analyze how they may meet your team’s needs, compare and contrast their features and benefits, and provide some suggestions for using them effectively.

FitNesse for Appian

FitNesse for Appian is a browser-based tool that allows users to create and execute test cases using a wiki based interface. You can use it to test any Appian interface, application, or site.

FitNesse for Appian has the following advantages:

  • Fitnesse for Appian is simple enough for essentially non-technical users to build tests. In nearly the same amount of time it would take to write a hard copy of step-by-step instructions for a manual test, the team can write an automated test.
  • It is easy to install and configure
  • It has a built-in web server and wiki that allows testers to create and edit test cases using a browser.
  • Test results are automatically cataloged into a searchable repository for easy review and presentation.
  • It has a rich set of keywords that cover most of the common actions and assertions for Appian components
  • It generates HTML reports that show the test results and screenshots
  • Fitnesse scripts can be executed in clusters called suites.  This allows testers to combine individual scripts into organized groups of tests.

FitNesse for Appian has the following limitations:

  • It does not support parallel execution of test cases
  • It does not have native integration with CI/CD tools or test management tools
  • It does not allow for logical branching

Here is an example of a FitNesse test case that tests a login interface:

You can learn more about FitNesse for Appian from the documentation and the AppMarket listing.

Cucumber for Appian

Cucumber for Appian is a command-line tool that allows you to create and execute test cases using scenarios and steps. You can use it to test any Appian interface or process model, as well as any web page or web service.

Cucumber for Appian has the following advantages:

  • It supports parallel execution of test cases using multiple threads
  • It has native integration with CI/CD tools such as Jenkins and Maven
  • It has native integration with test management tools such as TestRail and Jira
  • It has a GUI for creating or editing test cases using Cucumber Studio
  • Natural language support: Cucumber uses Gherkin syntax, allowing test cases to be written in plain English. This makes it easier to read and understand the test scenarios, even for non-technical team members.

Cucumber for Appian has the following limitations:

  • It requires more setup and configuration than FitNesse for Appian, as it depends on external libraries and drivers
  • It has a smaller set of keywords than FitNesse for Appian, which may in turn, require more custom code or logic
  • It generates JSON or XML reports that need to be converted to HTML or other formats

Here is an example of a Cucumber test case that tests a login interface:

You can learn more about Cucumber for Appian from the documentation and the AppMarket listing.

Appian Selenium API

Appian Selenium API is a Java library that contains methods that allow you to interact with Appian components in a browser. It can be used in any Java application or integrated directly into any Selenium or Java-based testing tool.

Appian Selenium API has the following advantages:

  • It gives you more flexibility and control over your test cases, as you can use any Java code or logic
  • It supports any browser that is compatible with Selenium WebDriver

Appian Selenium API has the following limitations:

  • It requires a tester with more coding and technical skills relative to the other options, as you have to write your own test cases and assertions
  • It does not have any built-in reporting or integration features, which you have to implement yourself
  • It does not have any GUI for creating or editing test cases

Here is an example of a Java test case that uses Appian Selenium API to test a login interface:

You can learn more about Appian Selenium API from the documentation and the AppMarket listing.

Which One Should You Use?

The key for matching the right tool to the right team depends on the situation of course, and each team will need to conduct due diligence to determine which tool is best suited for tasks at hand. That said, these tools can be sorted roughly by their barrier to entry vs utility.

Fitnesse for Appian is the easiest to get up and running, and once established, non-technical testers can get the hang of scripting pretty quickly. Once testers are scripting it’s easy to group and run scripts and the system provides satisfactory reporting.

Cucumber promises a similar experience but it’s a slightly higher LOE to get the platform set up and testers testing. Ultimately the choice between the two platforms will depend on the team adopting them, perhaps with a slight edge to Cucumber’s more human-readable scripting syntax that makes stakeholder review easier.

Selenium is more powerful, but requires a test engineer with development skill to manage the environment and run the tests. Reporting also requires setup. That said, the tool is more flexible and powerful if there is a technical resource supporting the effort.

Who Can You Contact About Appian Automated Testing?

If you need help with Appian testing, including functional, automated, or performance, Vision Point Systems is an Appian Trusted Partner that specializes in testing and optimizing Appian solutions to ensure speed and efficiency.

We have a team of cross-functional consultants that understand how to maximize the Appian low-code platform to deliver valuable results and seamlessly integrate with existing systems. They have over 8 years of partnership with Appian and over 18 years of experience building and testing applications. We can help you with Appian Performance Testing, as well as other services such as functional testing, test automation, application development, integration, and maintenance.

Vision Point Systems has pioneered methodologies for performance testing within the Appian sphere. We have partnered with Deloitte and other clients to bring our expertise in quality assurance and performance measurement to critical, large-scale Appian deployments for the Federal Government and other sectors.

Schedule a consultation with our team today to learn more about how we can optimize your resources and expand the capabilities of your systems.

Author