User Tools

Site Tools


collection_of_test_results

This is an old revision of the document!


Description

The mission of this project is to provide a common way for gathering all the results of OPNFV tests projects into a single place. It should expose a REST API for the collect of results and push them into a MongoDB database.

Database

The goal is to have three main collections in a Mongo DB:

  • tests projects
  • test cases
  • test results

The test result are stored in json format in the test results collection. The json format include a details field. This field shall be used to provide the details on the results. These details may be used later for the dashboard.

"details": {
 
    "timestart": 1444395967.9822,
    "duration": 40.9,
    "status": "OK"
 
}

Data model

Test projects

[
  {
    "id": 1,
    "name": "functest",    
    "description":""
  },
  {...}      
]

Test cases

[
  {
    "id":1.1,
    "name":"",
    "testproject": "1",
    "test": "",
    "description": "",
    "url":""
  },
  {...}
]

Test results

[
  {
    "_id": "55fc09a0514bc52b173a2826",
    "project_name": "functest",
    "pod_name": "opnfv-jump-2",
    "version": "Arno-R1",
    "installer": "fuel",
    "description": "",
    "creation_date": "2015-09-18 12:54:56.059000",
    "case_name": "vPing"
    "details":{
       <- the results to be put here ->
    }
  },
]

REST API

The temp Mongo DB + API is hosted in an Orange public VM (http://213.77.62.197).

version

METHOD PATH Description
GET /version API version

pods

METHOD PATH Description
GET /pods Get the list of declared PODs
POST /pods Create a new POD

test projects

METHOD PATH Description
GET /test_projects Give the list of test projects
GET /test_projects/foo Give details on foo project
GET /test_projects/foo/cases Give details on the testcases of the foo project

test results

Here are the key functions :

Test projects

  • List all test projects
  • Details on a specific test project
  • Create a test project
  • Update a test project

Test cases Specifiying a test project :

  • List all test cases
  • Details on a test case
  • Create a test case
  • Update a test case

Test results Specfiying both test project and test case :

  • List all test results
  • Details on a test result
  • Push a test result
  • Remove a test result

This API will rely on JSON to represent states of REST resources. See the full API specification here.

collection_of_test_results.1444412699.txt.gz · Last modified: 2015/10/09 17:44 by Morgan Richomme