Continuous integration checks
An automated integration job should establish the executable and configuration it uses, start an isolated server and wait for readiness before running assertions. A delay alone does not prove that startup succeeded.
Check readiness and SQL separately
For a configuration with HTTP enabled, these commands check the listener and an authenticated query:
curl --fail --silent http://127.0.0.1:7401/ping
curl --fail --silent --user default: --data-binary 'SELECT 1 FORMAT csv' \
'http://127.0.0.1:7401/?database=data'Expect Ok. from the health check and 1 from SQL. Use a bounded readiness loop in your own job and fail if the server exits. The health response alone does not verify database selection or credentials.
Keep each job independent
Give each job its own database, configuration directory and listener ports. Capture the exact SQL, response status and non-sensitive diagnostics on failure. Stop the process the job started and remove only its own temporary data during cleanup.
Run both successful and rejected requests for an adapter that interprets HTTP status codes. For native applications, add an equivalent query with the supplied client. Preserve target-machine details when a job validates a distribution on another architecture.