TestingOps.ai

Low-code platforms · Native connection

OutSystems and TestingOps: app structure from ODC, inventory from LifeTime

What TestingOps can read depends on your OutSystems platform. In OutSystems Developer Cloud it reads entities, screens, actions and roles through OutSystems MCP; for OutSystems 11 it reads the LifeTime inventory, which tells agents where each version runs and what changed.

  • Native connection
  • Available with limits
Connection
Native connection
Writes back
Nothing, it only reads
Last checked
7 Nov 2026

In short

OutSystems and TestingOps in short

The OutSystems connection works in two ways, chosen by the address you enter: for OutSystems Developer Cloud (ODC) you sign in with your own ODC user and TestingOps calls only the read tools of OutSystems MCP, which return an app's entities, screens, actions, roles and structures.

For OutSystems 11, a LifeTime service account token gives environments with the deployed version and app address, modules, and recent versions with their change notes, but no screens, entities or logic, so the inventory points agents to the running app at the listed addresses.

Both become knowledge-base text that agents search when they write test cases, and nothing is published, deployed or changed in OutSystems.

What it does

What it does for your testing

  1. 1

    ODC entities become data rules

    Input
    Entities with their attributes (data type, length, identifier, mandatory) and up to 40 records of static entities
    TestingOps
    Writes one section per entity
    Output
    Context for cases that fill mandatory attributes and use valid static values
  2. 2

    ODC screens and roles become access checks

    Input
    Screens grouped by UI flow with input parameters and roles, and the app's roles
    TestingOps
    Lists each screen's title, inputs, required flags, roles and description
    Output
    Cases that open screens as allowed and not-allowed roles; widgets are mapped in the running app
  3. 3

    ODC actions show the inputs that matter

    Input
    Actions grouped by type with their parameters (direction, type, mandatory)
    TestingOps
    Writes them per action type
    Output
    Agents know which inputs an action expects when they choose test values
  4. 4

    OutSystems 11 versions point to what changed

    Input
    LifeTime environments, the deployed version label, the changed-since-that-version flag and the last 12 version notes
    TestingOps
    Writes one inventory section per application
    Output
    Agents know which version runs where, which address to explore and what the latest notes say

Step by step

How it works

  1. Enter the addressUnder Integrations → Platforms → Low-code platforms → OutSystems, enter your ODC tenant address (*.outsystems.dev) or your LifeTime address. An ODC address switches the form to Sign in to OutSystems.
  2. Sign in or add a tokenODC: sign in with your own ODC user in the browser, then paste back the http://localhost address the browser opens. OutSystems 11: paste a LifeTime service account token.
  3. Link an applicationIn the project's Knowledge tab, add a source under Low-code platforms: pick the application, or paste its ODC Portal or LifeTime link, or app:<application key>.
  4. SyncODC writes an overview and sections for entities, screens per UI flow, actions per type, roles and structures, and skips an unchanged revision. OutSystems 11 writes one inventory section per application.
  5. Agents map the screens and write casesThe sections point agents to the running app's addresses for screen elements; the cases they write run as AI-executed steps on your execution provider.

OutSystems MCP must be turned on for your ODC tenant, and an app must have been published at least once before its structure can be read.

Connect

Setup

  1. ODC: make sure OutSystems MCP is enabled for your tenant and the app has been published at least once.
  2. OutSystems 11: in LifeTime, open User Management → Service Accounts, create a service account whose role can see the applications and copy its token.
  3. In TestingOps, open Integrations → Platforms → Low-code platforms → OutSystems and enter the address. ODC: select Sign in to OutSystems, then Open the OutSystems sign-in page, sign in, paste the http://localhost address from the browser and select Finish sign-in. OutSystems 11: paste the LifeTime service account token and select Save.
  4. In the project's Knowledge tab, select Add source under Low-code platforms, pick the application (or paste its link or app:<application key>) and select Sync now.

Documentation: OutSystems 11 LifeTime API v2

Where you connect it in TestingOps: Integrations → Platforms → Low-code platforms → OutSystems

Use cases

Use cases

Plan role-based cases for an ODC app

Trigger
An ODC app is linked
Uses
Screens with their roles and input parameters, and the app's roles
Agent activity
Writes cases that open each screen as an allowed role and as a role that should be refused
Result
Access cases tied to screens and roles
Condition
Test users for each role must exist in the stage you test

Focus an OutSystems 11 release test on what changed

Trigger
A team prepares to test a new version in a LifeTime environment
Uses
The deployed version label, the changed-since-that-version flag and the version notes
Agent activity
Plans checks for the features the notes mention, at that environment's address
Result
A focused set of cases for the new version
Condition
The notes are only as useful as what your team writes in them

Use static entities as test data

Trigger
An ODC app with static entities such as statuses or categories
Uses
Up to 40 records per static entity and the attributes of the other entities
Agent activity
Picks valid and invalid values for the inputs that use those entities
Result
Cases with values from the app's own data model
Condition
Only the records OutSystems MCP returns with an entity, such as static entity values, are listed (up to 40); app data is not queried

Capabilities

Capabilities and limits

What is read

  • ODC, through OutSystems MCP: app info and revision; stages with revision, deployment date and address; entities with attributes and up to 40 records of static entities; screens grouped by UI flow with title, input parameters, roles and description; actions grouped by type with their parameters; roles; structures
  • OutSystems 11, through LifeTime: the application list; per application the environments in LifeTime order with the deployed version, a changed-since-that-version flag and the app address; modules (up to 150) with kind and description; the last 12 versions with change notes, author and date

What is produced

  • ODC: an overview section plus sections for entities, screens per UI flow, actions per type, roles and structures
  • OutSystems 11: one inventory section per application

Where it can write

Nothing in OutSystems. On ODC only the read tools of OutSystems MCP are called; publish, deploy, Mentor and external library tools are never called. On OutSystems 11 only GET requests go to LifeTime.

How it connects

  • ODC: OutSystems MCP on your tenant, after a sign-in with your own ODC user (OAuth with PKCE); calls run with that user's ODC Portal permissions
  • OutSystems 11: LifeTime API v2 with a service account token

Account and permissions

  • ODC: an ODC user who can see the app, and OutSystems MCP enabled for the tenant
  • OutSystems 11: a LifeTime service account (User Management → Service Accounts) whose role can see the applications

Limits

  • OutSystems 11 gives no screens, entities or logic: only the inventory and version notes
  • ODC screens come without widgets; screen elements are mapped in the running app
  • ODC apps must have been published at least once; the sign-in can expire and then needs Sign in again
  • ODC reads up to 10 pages of 100 rows per tool, 120 entities and 60 actions per section
  • OutSystems content is searchable text only; the structured model facts and coverage list of the Mendix connection are not built for it
  • No automation script generation: test cases run as AI-executed steps

Example

Example: how a team uses it

Illustrative scenario, not a customer story.

A team links an ODC app for expense claims. The screens section shows that ApproveClaim, in the Manager UI flow, takes a ClaimId input and allows only the Manager role, and the entity section shows that Amount is mandatory.

An agent drafts cases that open ApproveClaim as a manager and as an employee and a case that saves a claim without an amount. Because ODC gives no widgets, the agent looks up the screen's fields at the stage address in the overview before the cases go to review.

Frequently asked questions

Why does OutSystems 11 give less than ODC?

OutSystems 11 has no API that returns screens, entities or logic, so TestingOps reads the LifeTime inventory instead: environments, deployed versions, app addresses, modules and version notes. ODC returns entities, screens, actions and roles through OutSystems MCP.

Do we need a token for ODC?

No. You sign in with your own ODC user in your browser and paste back the http://localhost address the browser opens; that page does not load, which is expected. TestingOps then reads what that user can see in the ODC Portal.

Can TestingOps publish or deploy our app?

No. On ODC it calls only the read tools of OutSystems MCP, even when the server also offers publish, deploy or Mentor tools. On OutSystems 11 it sends only GET requests to LifeTime.

Are screen widgets read?

No. ODC screens arrive with their title, inputs and roles but without widgets, and OutSystems 11 screens are not available at all. The sections list the app's addresses so that screen elements can be mapped in the running app.

What if OutSystems MCP is not enabled for our tenant?

ODC answers tenant_not_allowed, and the sync stops with a message asking you to have OutSystems enable it for the tenant.

How often is the app read?

On Sync now and on the automatic syncs (hourly by default). On ODC, an app whose revision and stages did not change is not read again.

Next step

See what your OutSystems platform can give the agents: request a demo and tell us whether you run ODC, OutSystems 11 or both.