How does OutSystems support testing and quality assurance?

Table of contents

  1. Impact analysis and self-healing
  2. Testing
  3. App feedback for continuous delivery

Quality assurance is built into OutSystems to ensure fast and zero-error deployment. Developers can changes applications data models, APIs and architecture, knowing that all dependencies will be automatically updated, thereby eliminating errors that can be created when updating is manual.

No matter how much someone modifies applications, OutSystems acts a gatekeeper to guarantee zero-error deployment with impact analysis and self-healing, integration with testing tools and application feedback for continuous delivery.

Impact analysis and self-healing


OutSystems tracks global dependencies and pinpoints the impact of a change on all layers of an application, so even if major changes are made in the application (data model, APIs and architecture), nothing breaks when it goes live.

Self-healing capabilities automatically correct problems or inform developers of any corrections they must handle. When a change is made, OutSystems tracks all the dependencies, automates database change scripts and analyzes the impact any changes will have in the running application.

This example shows how OutSystem identifies the impact of changes and indicates the required manual corrections needed. The red x tells developers they cannot deploy the application until everything is fixed:

At a broader level, OutSystems does impact analysis even for multi-applications. As can be seen here, OutSystems is preventing deployment from the test environment to the production environment because of a missing dependency in production.

Testing


Because of the self-healing and impact analysis capabilities of OutSystems, the quality of the applications is much higher than those built with a traditional development approach. Therefore, the need for testing applications is not as great.

Testing is a fundamental part of any software project, however, and will never be completely eliminated. Our approach is to keep OutSystems open so it's compatible with the tools teams typically use. This way, testing is integrated in the continuous delivery cycle so there aren't losses in productivity.

Depending on complexity and how critical each project is, different types of testing should be applied by the delivery team. Those involved in testing should keep in mind the important fact that OutSystems generates 100% native web applications that run on standard web stacks.

App feedback for continuous delivery


To reduce the amount of time it takes to incorporate changes into apps, OutSystems offers the ability to properly capture context and user feedback directly - across all devices.

Business users and developers are able to use their tablets, smartphones and desktops to provide feedback to the development team and let them know exactly what they want. To submit feedback, users can simply draw on the screen, add a voice note, or just type something in. Everything the user sees and annotates becomes a user story that developers can review. If they want, they can then jump directly to the screen in question and begin implementing the change.