# Low-code application structure and testing methodology

## **Application structure and tests**

The Eximee application is a container for artifacts ([Business application](https://docs.eximee.com/documentation/documentation-en/budowanie-aplikacji/aplikacja-biznesowa)).

### **Form tests - what is worth checking?**

* correct operation of fields (whether they are visible, required),
* validations and business rules,
* integration with the data model (whether data is correctly fetched and saved),
* appearance of content and field layout.

More about forms: [Forms](https://docs.eximee.com/documentation/documentation-en/budowanie-aplikacji/interfejs-uzytkownika/formularze).

### **Data model tests - what is worth checking?**

* whether all fields required in the application are present,
* whether default values are set according to requirements,
* whether changes in the model do not cause errors in forms or processes using this model.

More about the data model: [Data model](https://docs.eximee.com/documentation/documentation-en/budowanie-aplikacji/model-danych).

### **BPMN process tests - what is worth checking?**

* whether the process flow complies with business requirements (paths, conditions, decisions),
* whether integration with forms and the data model works correctly,
* whether script task calls and exception handling are correct.

More about processes: [Business process](https://docs.eximee.com/documentation/documentation-en/budowanie-aplikacji/proces-biznesowy).

## **Integration and end-to-end tests**

### **Scope of integration tests**

* connection of the form with process logic (BPMN),
* verification of ScriptCode operation and business rules,
* integrations with external systems (CRM, payments),
* generation of PDF documents and passing them further in the process.
* handling omnichannel capabilities – transferring context between channels (desktop → mobile).

### **Scope of end-to-end tests (E2E)**

* full flow form → process → document → integration → final status,
* checking whether business logic, interfaces, and integrations create a coherent experience.
* testing critical and business scenarios in line with requirements.
