System Integration Testing

What is System Integration Testing

System Integration Testing (SIT) is the execution of tests to ensure that the different components of an application (Appian application,  legacy systems, third party applications, data sources) are integrated and functioning cohesively. 

Who completes SIT

SIT should be performed by the development team. If there is a dedicated Quality Assurance team on your project, they should also perform SIT.

When is SIT performed

SIT should be done each time a new integration is consumed, a new system is integrated with, or new processes and subprocesses are added to the workflow. This can occur during sprint development, during peer review, and when functionality is promoted  to another environment. SIT should always be built into unit testing and regression testing. 

Some clients will have dedicated timeframes for SIT and others will expect it to be included in the delivery cycle. Even if your client does not communicate the expectation to perform SIT, it should always be done throughout the project to ensure that the functionality you build is integrated appropriately.

How is SIT performed

Tests should cover all interaction points between all systems, components, and applications which are integrated. This includes testing the following: 

  1. Appian Application workflows
    • Thoroughly test all newly introduced processes and subprocesses  from all possible paths to ensure desired behavior in all scenarios.
    • Verify all database connections and execute test queries any time a new data source is introduced.
  2. APIs/integrations with outside systems: Test Appian's interactions with external systems. This may require coordination with external system teams to ensure data is flowing correctly. Generally, you should do the following:
    • Call external integrations from Appian and work with the customer to verify  the data in  the external system. These calls should be made from Appian’s design objects and from the front end of the application.
    • Call Appian from external systems via web APIs and validate that the data received is correct, is parsed correctly, and the rest of the workflow follows as expected. 
    • Test integrations with invalid values to ensure errors are handled gracefully.

This step is often overlooked, so it is crucial that your team take the time to ensure that data is handled correctly between Appian and all external systems which are used. 

Although SIT is usually done manually, Automated Functional Testing tools like FitNesse for Appian can be leveraged to test workflows that include integrated systems. Additionally, Postman can be used to test Appian Web APIs.