Parameters:test_spec_dict – A dictionary containing the Test Spec schema.
Raises:
DBNLNotLoggedInError – dbnl SDK is not logged in.
DBNLAPIValidationError – Test Spec does not conform to expected format.
DBNLDuplicateError – Test Spec with the same name already exists in the Project.
Returns:
The JSON dict of the created Test Spec object. The return JSON will contain the id of the Test Spec.
Test Spec JSON Structure
{"project_id":string,#Testdata"name":string,// must be unique to Project"description":string|null,"statistic_name":string,"statistic_params":map[string,any],"statistic_inputs":list[{"select_query_template":{"select":string,// a column or a function on column(s)"filter":string|null}}],"assertion":{"name":string,"params":map[string,any]},"tag_ids":string[]|null}
get_or_create_tag
Get the specified Test Tag or create a new one if it does not exist
Parameters:
project_id – The id of the Project that this Test Tag is associated with.
name – The name of the Test Tag to create or retrieve.
description – An optional description of the Test Tag. Limited to 255 characters.
Returns:
The dictionary containing the Test Tag
Raises:DBNLNotLoggedInError – dbnl SDK is not logged in.
Sample Test Tag JSON
get_test_sessions
Get all Test Sessions in the given Project
Parameters:project – Project from which to retrieve Test Sessions
Returns:
List of Test Sessions
Raises:DBNLNotLoggedInError – dbnl SDK is not logged in.
get_tests
Get all Tests executed in the given Test Session
Parameters:test_session_id – Test Session ID
Returns:
List of test JSONs
Raises:DBNLNotLoggedInError – dbnl SDK is not logged in.
Sample Test JSON
prepare_incomplete_test_spec_payload
Formats a Test Spec payload for the API. Add project_id if it is not present. Replace tag_names with tag_ids.
Parameters:
test_spec_dict – A dictionary containing the Test Spec schema.
project_id – The Project ID, defaults to None. If project_id does not exist in test_spec_dict, it is required as an argument.
Raises:DBNLInputValidationError – Input does not conform to expected format
Returns:
The dictionary containing the newly formatted Test Spec payload.
wait_for_test_session
Wait for a Test Session to finish. Polls every 3 seconds until it is completed.
Parameters:
test_session – The TestSession to wait for
timeout_s – The total wait time (in seconds) for Test Session to complete, defaults to 180.
Returns:
The completed TestSession
Raises:
DBNLNotLoggedInError – dbnl SDK is not logged in.
DBNLError – Test Session did not complete after waiting for the timeout_s seconds