Skip to main content

CI Tests

abapGitAbout 1 mintesting

abapGit CI Tests

Results from latest CI run: https://ci.abapgit.orgopen in new window

Repo abapGit CIopen in new window provides basic continuous integration capabilities for abapGit. The repository aims to test the serialization and deserialization of object types, as these cannot be unit-tested properly.

The CI process fetches abapGit test repos from abapGit Testsopen in new window. Then for each repository, the following steps are executed:

  • create a package (if needed)
  • clone
  • pull
  • syntax check
  • object check
  • create transport request
  • purge (uninstall)
  • delete transport request
  • check for leftovers

Additionally, a set of generic tests is performed checking the latest abapGit build.

If there is any error in these steps abapGit CI will indicate that.

Run report ZABAPGIT_CI_UPDATE_ABAPGIT to update the abapGit repo.

Run report ZABAPGIT_CI_UPDATE_ABAPGIT_CI to update the abapGit CI repo.

There are currently three possibilities to run abapGit CI:

1. Adhoc CI with report ZABAPGIT_CI

Selection screen:

abapGit CI selection screen
abapGit CI selection screen

Result list:

abapGit CI results
abapGit CI results

2. REST API

POST /sap/zabapgit_ci/run

response.json

3. Schedule job sequence with report ZABAPGIT_CI_JOB_SCHEDULER

A job sequence is created with

  1. Update abapGit repo
  2. Update abapGit CI repo
  3. Run abapGit CI
abapGit CI job scheduler
abapGit CI job scheduler

Check transportable packages

Optionally you can also let abapGit CI create the repositories in transportable packages. You need to activate the checkbox in the selection screen and specify the transport layer. Then the pull and purge actions will each get recorded into a transport request per repository. These get released and their content is checked to ensure it matches the objects in the repository.

To set up a suitable transport landscape on the AS ABAP Developer Edition you need to create a new virtual system in STMS (for example EXP, Virtual export system). This serves as a dummy export target for transport requests. Next, you need to create a new transport layer (for example ZEXP) and connect the current system and the virtual system with it. Then save and activate the configuration.

STMS transports landscape
STMS transports landscape

Prerequisites

There are a few prerequisites for running the CI test suite:

  • abapGit developer version must be installed
  • SAP Basis 7.50 or higher
  • Tests are hosted at https://github.com/abapGit-testsopen in new window
  • Test objects shall be included in SAP Basis 7.50 (Exception: the main object type is only available in higher releases)
  • Test objects from SAP ERP or industry solutions shall be avoided (Exception: the main object type is only available in ERP)