> For the complete documentation index, see [llms.txt](https://docs.sealights.io/knowledgebase/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sealights.io/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/test-tool-integrations/certify.md).

# Certify

Certify test repository adapter for ABAP Agent 2.0 — CLI and Guides references.

Use adapter type **`certify`** to connect a Tricentis Certify project so the agent can search test cases for your pipeline.

{% hint style="warning" %}
**Driver prerequisite:** Searching a Certify test repository requires the **Microsoft OLE DB Driver 19 for SQL Server (MSOLEDBSQL19)** on the agent host. The ABAP Agent installer checks for it and continues even if it's missing or outdated, but the Certify adapter won't work until the driver is installed. Download it from [Microsoft's SQL Server downloads page](https://learn.microsoft.com/sql/connect/oledb/download-oledb-driver-for-sql-server).
{% endhint %}

{% hint style="warning" %}
When you create the ABAP pipeline with `pipeline set`, **leave `--labid` unset** unless you deliberately need to override it. The agent derives the default lab ID as `<QAS SID> <QAS RFC hostname>`. Casual overrides can break **Test Cycles** in SeaLights. See [Create and list pipelines](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/create-and-list-pipelines.md).
{% endhint %}

## Configure

* [Configure Test Repositories](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/configure-test-repositories.md) — `slabapcli testrepo set --type certify`
* [Setup and installation](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/guides/setup-and-installation.md) (Part 1)
* [Show the value with Test Cycles](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/guides/show-the-value-with-test-cycles.md) (Part 2)

### `testrepo set` parameters for `certify`

Non-secret keys use `--setting key=value`. Secrets are entered interactively (not via `--setting`). Plus common options (`--name`, `--type`, `--pipeline`, `--test-stage`) — see [Configure Test Repositories](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/configure-test-repositories.md).

| Parameter             | Kind    | Required | Description                                                                                                                  |
| --------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------- |
| `project`             | Setting | Yes      | The Certify project name.                                                                                                    |
| `connectionString`    | Setting | Yes      | OLE DB connection string. Must include `Provider=...`. Must **not** embed credentials (`user id`, `uid`, `password`, `pwd`). |
| `uidProp`             | Setting | No       | Property name used when appending the username (default `User ID`).                                                          |
| `pwdProp`             | Setting | No       | Property name used when appending the password (default `Password`).                                                         |
| `searchPaths`         | Setting | No       | Comma-separated list that scopes the search to specific paths. Written as top-level `searchpaths` in `config.toml`.          |
| `confidenceThreshold` | Setting | No       | Integer 0–100. Minimum confidence for a match.                                                                               |
| `username`            | Secret  | No       | Database user. Leave blank for Windows Integrated Authentication.                                                            |
| `password`            | Secret  | No       | Database password. Leave blank when `username` is blank.                                                                     |

{% tabs %}
{% tab title="Command Prompt" %}
{% code title="Command" overflow="wrap" %}

```batch
slabapcli.exe testrepo set --name "ALM_Demo-certify" --type "certify" --pipeline "ALM_Demo-S21" --setting project=CertifyProject --setting "connectionString=Provider=MSOLEDBSQL19;Server=db.example;Database=certify;TrustServerCertificate=yes;" --test-stage "Regression Tests"
```

{% endcode %}
{% endtab %}

{% tab title="PowerShell" %}
{% code title="Command" overflow="wrap" %}

```powershell
.\slabapcli.exe testrepo set --name 'ALM_Demo-certify' --type 'certify' --pipeline 'ALM_Demo-S21' --setting project=CertifyProject --setting 'connectionString=Provider=MSOLEDBSQL19;Server=db.example;Database=certify;TrustServerCertificate=yes;' --test-stage 'Regression Tests'
```

{% endcode %}
{% endtab %}
{% endtabs %}

`--test-stage` is optional. See [Configure Test Repositories](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/configure-test-repositories.md) for the default `"{type} Tests"` value, clear-on-omit behavior, and duplicate-stage warning.

The connection string must include `Provider=` and must **not** embed credentials. The CLI may prompt for optional **`username`** / **`password`** (leave blank for Windows Integrated Authentication).

{% code title="Expected output (PowerShell, abbreviated)" overflow="wrap" lineNumbers="true" %}

```log
.\slabapcli.exe testrepo set --name 'ALM_Demo-certify' --type 'certify' --pipeline 'ALM_Demo-S21' --setting project=CertifyProject --setting 'connectionString=Provider=MSOLEDBSQL19;Server=db.example;Database=certify;TrustServerCertificate=yes;' --test-stage 'Regression Tests'
[2026-03-08 10:45:00.123+02:00] [info] Config pathname: C:\ProgramData\Tricentis\SeaLights\ABAP Agent\config\config.toml
Enter username (optional, press Enter to skip): **
Confirm username: **
Enter password (optional, press Enter to skip): **********
Confirm password: **********
Configuration for adapter 'ALM_Demo-certify' was saved successfully.
Running connection test for 'ALM_Demo-certify'...
Connection test passed for 'ALM_Demo-certify' (pipeline: 'ALM_Demo-S21').
```

{% endcode %}

Once the test repository is configured and the connection test succeeds:

1. Finish any remaining agent setup for the pipeline (RFC, pipeline, additional test repositories) if you have not already.
2. Schedule repository search with `search_testrepo`.
3. Capture coverage with Footprints and your test runs.

For the full setup order, see [Start the ABAP Agent Server](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/start-the-agent-server.md) and [Configure Test Repositories](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/configure-test-repositories.md).

`search_testrepo` registers a Windows Scheduled Task that runs `watcher.exe SEARCH_TESTREPO` on a cron schedule.

{% tabs %}
{% tab title="Command Prompt" %}
{% code title="Schedule a search" overflow="wrap" %}

```batch
slabapcli.exe search_testrepo run --pipeline <pipeline> --testrepo <name> [--cron "<cron>"]
```

{% endcode %}
{% endtab %}

{% tab title="PowerShell" %}
{% code title="Schedule a search" overflow="wrap" %}

```powershell
.\slabapcli.exe search_testrepo run --pipeline <pipeline> --testrepo <name> [--cron '<cron>']
```

{% endcode %}
{% endtab %}
{% endtabs %}

| Parameter    | Required | Description                                                                                                                                                                                                                                                                                                                     |
| ------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--pipeline` | Yes      | Pipeline name (`[[pipeline]].name`).                                                                                                                                                                                                                                                                                            |
| `--testrepo` | Yes      | Test repository name (`[[testrepo]].name`) linked to that pipeline.                                                                                                                                                                                                                                                             |
| `--cron`     | No       | 5-field cron expression in the machine's local time. Default: `0 2 * * 0` (Sunday at 02:00). Supported forms: `M * * * *`, `*/N * * * *`, `M/N * * * *`, `M H * * *`, and `M H * * D` (`D` is one day, `0`-`7` or `SUN`-`SAT`). Ranges and lists (for example `1-5`) are not supported, and day-of-month and month must be `*`. |

Full command reference (stop, list, prerequisites): [Search Test Repositories](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/search-test-repositories.md).

SeaLights associates test executions with ABAP code changes through **Footprints** on the agent side.

{% stepper %}
{% step %}

## Schedule Footprints for the pipeline

```batch
slabapcli.exe footprints run --pipeline <pipeline-name>
```

This creates a `FOOTPRINTS` scheduled task that periodically collects coverage-related data and sends it to SeaLights. Full syntax and stop command: [Collect Footprints data for your Pipeline](/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/command-line-interface/collect-footprints-data-for-your-pipeline.md).
{% endstep %}

{% step %}

## Run tests against the QAS system

Execute tests that exercise the ABAP components you care about while Footprints is collecting. The agent matches executed ABAP components against objects in the latest Build Modification and reports them as footprints.
{% endstep %}

{% step %}

## Wait for processing, then check the Coverage Report

SeaLights needs time to process Footprints data. When processing completes, covered ABAP components appear in your application's Coverage Report.
{% endstep %}
{% endstepper %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.sealights.io/knowledgebase/setup-and-configuration/sealights-agents-and-plugins/abap-agent-2.0/test-tool-integrations/certify.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
