Skip to content

Database schemes and its description

Alexander Tsay edited this page Mar 18, 2021 · 1 revision

Schemes

Test_Suite

{
   "id": "bigint",
   "name": "varchar(255)",
   "type": "varchar(255)",
   "project_id": "bigint",
   "date_added": "datetime"
}

Description

Entity of the test suite. Type can be [PROJECT, STANDARD]. If type is PROJECT, then the user must provide his own test files. Otherwise, he decided to run our tests.

Test

{
    "id": "varchar(255)",
    "expected_file_path": "varchar(255)",
    "test_file_path": "varchar(255)",
    "date_added": "datetime",
    "test_suite_id": "bigint",
}

Description

Test entity contains expected file path and test file path. Its id is a hash of these two files.

Agent

{
    "id": "bigint",
    "status": "varchar(255)",
    "last_heartbeat": "varchar(255)"
}

Description

Agent's statuses can be: [BACKEND_FAILURE, BACKEND_UNREACHABLE, BUSY, CLI_FAILED, FINISHED, IDLE]. Last_Heartbeat is the last heartbeat status. It can be in 3 states: WaitResponse, ContinueResponse, NewJobResponse.

Project

{
    "id": "bigint",
    "name": "varchar(255)",
    "owner": "varchar(255)",
    "url": "varchar(255)"
}

Description

Entity of Project. Each project has a name and owner. It also has a url, where it was downloaded from.

Execution

{
    "id": "bigint",
    "project_id": "bigint",
    "start_time": "timestamp",
    "end_time": "timestamp",
    "status": "varchar(255)",
    "test_suite_ids": "varchar(255)"
}

Description

Entity of one execution. Test_suite_ids here is a list of test_suite_id. One execution may contain several test_suite_id.

Test_Execution

{
    "id": "bigint",
    "test_id": "bigint",
    "start_time": "timestamp",
    "end_time": "timestamp",
    "status": "varchar(255)",
    "execution_id": "bigint"
}

Description

Entity of one test execution. It has test id which is an id from Test table. It also has status, which can be: [FAILED, IGNORED, INTERNAL_EROOR, PASSED, TEST_ERROR]. Execution_id is an id from Execution table.