Project Date
demo 26 Mar 2022, 20:03

Tag Report

Steps Scenarios Features
Tag Passed Failed Skipped Pending Undefined Total Passed Failed Total Duration Status
@teacher 390 0 0 0 0 390 69 0 69 2.289 Passed
Tags: @teacher
0.023
Given path 'approve/'+application.id 0.000
When method PATCH 0.022
Then status 200 0.000
Tags: @teacher
0.008
Given path 'approve/100' 0.000
When method PATCH 0.007
Then status 404 0.000
Tags: @teacher
0.018
Given path 'deny/'+application.id 0.000
When method PATCH 0.010
Given path 'application', 'approve/'+application.id 0.001
When method PATCH 0.006
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.077
Given path 'approve/'+application.id 0.000
When method PATCH 0.068
Given path 'application', 'approve/'+application.id 0.000
When method PATCH 0.007
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.072
Given path 'approve/'+application.id 0.000
When method PATCH 0.034
Given path 'application','stop/'+application.id 0.000
When method PATCH 0.029
Given path 'application', 'approve/'+application.id 0.000
When method PATCH 0.007
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.066
Given path 'approve/'+application.id 0.000
When method PATCH 0.027
Given path 'application', 'finish/'+application.id 0.000
When method PATCH 0.030
Given path 'application', 'approve/'+application.id 0.000
When method PATCH 0.006
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.113
Given path 'approve/'+application.id 0.000
When method PATCH 0.032
Given path 'application', 'stop/'+application.id 0.001
When method PATCH 0.043
Given path 'application', 'start/'+application.id 0.000
When method PATCH 0.035
Then status 200 0.000
Tags: @teacher
0.008
Given path 'start/100' 0.000
When method PATCH 0.008
Then status 404 0.000
Tags: @teacher
0.013
Given path 'start/'+application.id 0.000
When method PATCH 0.012
Then status 422 0.000
And match response == 'Application is not in state STOPPED' 0.000
Tags: @teacher
0.018
Given path 'deny/'+application.id 0.000
When method PATCH 0.008
Given path 'application', 'start/'+application.id 0.000
When method PATCH 0.008
Then status 422 0.000
And match response == 'Application is not in state STOPPED' 0.000
Tags: @teacher
0.140
Given path 'approve/'+application.id 0.000
When method PATCH 0.047
Given path 'application','finish/'+application.id 0.000
When method PATCH 0.079
Given path 'application', 'start/'+application.id 0.000
When method PATCH 0.011
Then status 422 0.000
And match response == 'Application is not in state STOPPED' 0.000
Tags: @teacher
0.090
Given path 'approve/'+application.id 0.000
When method PATCH 0.066
Given path 'application', 'finish/'+application.id 0.000
When method PATCH 0.024
Then status 200 0.000
Tags: @teacher
0.005
Given path 'finish/100' 0.000
When method PATCH 0.004
Then status 404 0.000
Tags: @teacher
0.007
Given path 'finish/'+application.id 0.000
When method PATCH 0.006
Then status 422 0.000
And match response == 'Application is not in state RUNNING or STOPPED' 0.000
Tags: @teacher
0.010
Given path 'deny/'+application.id 0.000
When method PATCH 0.002
Given path 'application', 'finish/'+application.id 0.000
When method PATCH 0.007
Then status 422 0.000
And match response == 'Application is not in state RUNNING or STOPPED' 0.000
Tags: @teacher
0.055
Given path 'approve/'+application.id 0.000
When method PATCH 0.019
Given path 'application','finish/'+application.id 0.000
When method PATCH 0.021
Given path 'application', 'finish/'+application.id 0.000
When method PATCH 0.014
Then status 422 0.000
And match response == 'Application is not in state RUNNING or STOPPED' 0.000
Tags: @teacher
0.163
Given path 'approve/'+application.id 0.000
When method PATCH 0.021
Given path 'application','stop/'+application.id 0.000
When method PATCH 0.071
Given path 'application', 'finish/'+application.id 0.000
When method PATCH 0.069
Then status 200 0.000
Tags: @teacher
0.011
Given path 'deny/'+application.id 0.000
When method PATCH 0.011
Then status 200 0.000
Tags: @teacher
0.007
Given path 'deny/100' 0.000
When method PATCH 0.006
Then status 404 0.000
Tags: @teacher
0.037
Given path 'approve/'+application.id 0.000
When method PATCH 0.028
Given path 'application', 'deny/'+application.id 0.000
When method PATCH 0.008
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.029
Given path 'deny/'+application.id 0.000
When method PATCH 0.017
Given path 'application','deny/'+application.id 0.000
When method PATCH 0.010
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.079
Given path 'approve/'+application.id 0.000
When method PATCH 0.035
Given path 'application','stop/'+application.id 0.000
When method PATCH 0.032
Given path 'application', 'deny/'+application.id 0.000
When method PATCH 0.010
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.068
Given path 'approve/'+application.id 0.000
When method PATCH 0.026
Given path 'application', 'finish/'+application.id 0.000
When method PATCH 0.030
Given path 'application', 'deny/'+application.id 0.000
When method PATCH 0.009
Then status 422 0.000
And match response == 'Application is not in state PENDING' 0.000
Tags: @teacher
0.018
When method GET 0.018
Then status 200 0.000
And assert response.length == 1 0.000
Tags: @teacher
0.013
Given path template.id 0.000
When method DELETE 0.006
Then status 204 0.000
Given path template.id 0.000
When method GET 0.005
Then status 200 0.000
And match response.deleted == true 0.000
Tags: @teacher
0.011
Given path '1000' 0.000
When method DELETE 0.011
Then status 404 0.000
Tags: @teacher
0.023
Given path 'deny/'+application.id 0.000
When method PATCH 0.015
Given path 'application', 'request/'+application.id 0.000
When method PATCH 0.007
Then status 200 0.000
Tags: @teacher
0.004
Given path 'request/100' 0.000
When method PATCH 0.004
Then status 404 0.000
Tags: @teacher
0.006
Given path 'request/'+application.id 0.000
When method PATCH 0.005
Then status 422 0.000
And match response == 'Application is not in state DENIED' 0.000
Tags: @teacher
0.030
Given path 'approve/'+application.id 0.000
When method PATCH 0.024
Given path 'application', 'request/'+application.id 0.000
When method PATCH 0.006
Then status 422 0.000
And match response == 'Application is not in state DENIED' 0.000
Tags: @teacher
0.102
Given path 'approve/'+application.id 0.000
When method PATCH 0.026
Given path 'application','finish/'+application.id 0.000
When method PATCH 0.067
Given path 'application', 'request/'+application.id 0.000
When method PATCH 0.007
Then status 422 0.000
And match response == 'Application is not in state DENIED' 0.000
Tags: @teacher
0.124
Given path 'approve/'+application.id 0.000
When method PATCH 0.073
Given path 'application','stop/'+application.id 0.000
When method PATCH 0.031
Given path 'application', 'request/'+application.id 0.000
When method PATCH 0.018
Then status 422 0.000
And match response == 'Application is not in state DENIED' 0.000
Tags: @teacher
0.009
When method GET 0.009
Then status 200 0.000
And assert response.length == 1 0.000
Tags: @teacher
0.060
Given path 'approve/'+application.id 0.000
When method PATCH 0.026
Given path 'application', 'stop/'+application.id 0.000
When method PATCH 0.029
Then print karate.prevRequest.headers 0.003
20:03:16.767 [print] {
  "Authorization": [
    "Basic c3R1ZXR6OnBhc3N3b3Jk"
  ],
  "Host": [
    "localhost:8081"
  ],
  "Connection": [
    "Keep-Alive"
  ],
  "User-Agent": [
    "Apache-HttpClient/4.5.13 (Java/11.0.14)"
  ],
  "Accept-Encoding": [
    "gzip,deflate"
  ]
}
 
Then status 200 0.000
Tags: @teacher
0.006
Given path 'stop/100' 0.000
When method PATCH 0.005
Then status 404 0.000
Tags: @teacher
0.008
Given path 'stop/'+application.id 0.000
When method PATCH 0.006
Then status 422 0.000
And match response == 'Application is not in state RUNNING' 0.000
Tags: @teacher
0.015
Given path 'deny/'+application.id 0.000
When method PATCH 0.005
Given path 'application', 'stop/'+application.id 0.000
When method PATCH 0.009
Then status 422 0.000
And match response == 'Application is not in state RUNNING' 0.000
Tags: @teacher
0.072
Given path 'approve/'+application.id 0.000
When method PATCH 0.026
Given path 'application','finish/'+application.id 0.000
When method PATCH 0.036
Given path 'application', 'stop/'+application.id 0.000
When method PATCH 0.008
Then status 422 0.000
And match response == 'Application is not in state RUNNING' 0.000
Tags: @teacher
0.102
Given path 'approve/'+application.id 0.000
When method PATCH 0.065
Given path 'application','stop/'+application.id 0.000
When method PATCH 0.024
Given path 'application', 'stop/'+application.id 0.000
When method PATCH 0.011
Then status 422 0.000
And match response == 'Application is not in state RUNNING' 0.000
Tags: @teacher
0.018
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": "Port of your saver",
      "wildcard": "port",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.017
Then status 201 0.000
Tags: @teacher
0.019
Given request 0.000
{
  "name": "Nginx Deployment",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": "Port of your saver",
      "wildcard": "port",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.019
Then status 201 0.000
Tags: @teacher
0.016
Given request 0.000
{
  "description": "Static Webserver"
}
When method POST 0.016
Then status 422 0.000
And match response contains { message: 'This field cannot be empty', key: 'name', value: '' } 0.000
And match response contains { message: 'This field cannot be empty', key: 'content', value: '' } 0.000
Tags: @teacher
0.016
Given request 0.006
{
  "name": #(generateString()),
  "description": #(generateString()),
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": "Port of your saver",
      "wildcard": "port",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.009
Then status 422 0.000
And match response contains {message:'This field needs to be between 1 and 255 characters', key: 'name', value:'#ignore'} 0.000
And match response contains {message:'This field needs to be between 0 and 255 characters', key: 'description', value:'#ignore'} 0.000
Tags: @teacher
0.010
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    }
  ]
}
When method POST 0.009
Then status 422 0.000
And match response contains { message: 'Missing fields: [port], obsolete fields: []', value: '', key: '' } 0.000
Tags: @teacher
0.010
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": []
}
When method POST 0.009
Then status 422 0.000
And match response contains { message: 'Missing fields: [replica, port], obsolete fields: []', value: '', key: '' } 0.000
Tags: @teacher
0.009
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.009
Then status 422 0.000
And match response contains { message:'This field cannot be empty' ,value: '' ,key: 'wildcard' } 0.000
And match response contains { message:'This field cannot be empty' ,value: '' ,key: 'label' } 0.000
Tags: @teacher
0.012
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": "",
      "wildcard": "",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.012
Then status 422 0.000
And match response contains { message: 'This field cannot be empty' , value: '' , key: 'wildcard' } 0.000
And match response contains { message: 'This field cannot be empty' , value: '' , key: 'label' } 0.000
Tags: @teacher
0.014
Given request 0.005
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": #(generateString()),
      "wildcard": #(generateString()),
      "description": #(generateString())
    }
  ]
}
When method POST 0.009
Then status 422 0.000
And match response contains { message: 'This field needs to be between 0 and 255 characters', key:'label', value: '#ignore' } 0.000
And match response contains { message: 'This field needs to be between 0 and 255 characters', key:'description', value: '#ignore' } 0.000
And match response contains { message: 'This field needs to be between 0 and 255 characters', key:'wildcard', value: '#ignore' } 0.000
Tags: @teacher
0.010
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "wrong-wildcard",
      "description": "How many server should there be?"
    },
  ]
}
When method POST 0.010
Then status 422 0.000
And match response contains { message: 'Missing fields: [replica, port], obsolete fields: [wrong-wildcard]', value: '', key: '' } 0.000
Tags: @teacher
0.009
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "wrong-wildcard",
      "description": "How many server should there be?"
    },
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": "Port of your saver",
      "wildcard": "port",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.008
Then status 422 0.000
And match response contains { message: 'Missing fields: [], obsolete fields: [wrong-wildcard]', value: '', key: '' } 0.000
Tags: @teacher
0.010
Given request 0.000
{
  "id": 9999,
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": "Port of your saver",
      "wildcard": "port",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.010
Then status 201 0.000
Tags: @teacher
0.013
Given request 0.000
{
  "deleted": true,
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "label": "Port of your saver",
      "wildcard": "port",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.013
Then status 201 0.000
Tags: @teacher
0.036
Given request 0.000
{
  "name": "Nginx Deployment",
  "description": "Static Webserver",
  "content": "#(nginxDeployment)",
  "fields": [
    {
      "id": 9998,
      "label": "Server count",
      "wildcard": "replica",
      "description": "How many server should there be?"
    },
    {
      "id": 9999,
      "label": "Port of your saver",
      "wildcard": "port",
      "description": "This will be the port that will be exposed to the world"
    }
  ]
}
When method POST 0.035
Then status 201 0.000
Tags: @teacher
0.037
Given request 0.005
{
  "namespace": "beeyond",
  "users": [
    "emina"
  ]
}
When method PUT 0.020
Then status 204 0.000
And path 'beeyond' 0.000
When method GET 0.008
Then status 200 0.000
And match response.namespace == 'beeyond' 0.001
And match response.users == '#[1]' 0.002
Tags: @teacher
0.021
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "moritz"
  ]
}
When method PUT 0.013
Then status 204 0.000
And path 'beeyond' 0.000
When method GET 0.006
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[2]' 0.001
Tags: @teacher
0.021
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "moritz",
    "marc"
  ]
}
When method PUT 0.012
Then status 204 0.000
And path 'beeyond' 0.000
When method GET 0.007
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[3]' 0.001
Tags: @teacher
0.010
Given request 0.000
{
  "namespace": "bééyond",
  "users": [
    "emina",
    "moritz"
  ]
}
When method PUT 0.010
Then status 422 0.000
Tags: @teacher
0.017
* def generateString = read('classpath:string-generator.js') 0.002
Given request 0.004
{
  "namespace": #(generateString()),
  "users": [
    "emina",
    "moritz"
  ]
}
When method PUT 0.008
Then status 422 0.000
And match response[0].message == 'This field needs to be between 1 and 253 characters' 0.001
Tags: @teacher
0.009
Given request 0.000
{
  "namespace": "marc",
  "users": [
    "emina",
    "moritz"
  ]
}
When method PUT 0.009
Then status 422 0.000
And match response[0].message == 'Not a valid namespace name' 0.000
Tags: @teacher
0.014
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
     "test"
  ]
}
When method PUT 0.013
Then status 422 0.000
And match response[0].message == 'User with name [test] does not exist' 0.000
Tags: @teacher
0.009
Given request 0.000
{
  "namespace": "emina",
  "users": [
    "emina"
  ]
}
When method PUT 0.008
Then status 422 0.000
And match response[0].message == 'Not a valid namespace name' 0.000
Tags: @teacher
0.025
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina"
  ]
}
When method PUT 0.009
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "marc"
  ]
}
When method PUT 0.009
And path 'beeyond' 0.000
When method GET 0.005
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[2]' 0.000
Tags: @teacher
0.025
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "marc"
  ]
}
When method PUT 0.010
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "marc"
  ]
}
When method PUT 0.008
And path 'beeyond' 0.000
When method GET 0.005
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[2]' 0.000
Tags: @teacher
0.016
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "emina"
  ]
}
When method PUT 0.009
And path 'beeyond' 0.000
When method GET 0.005
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[1]' 0.000
Tags: @teacher
0.010
Given request 0.000
{
  "namespace": "emina",
  "users": [
    "emina",
    "emina"
  ]
}
When method PUT 0.010
Then status 422 0.000
And match response[0].message == 'Not a valid namespace name' 0.000
Tags: @teacher
0.035
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina"
  ]
}
When method PUT 0.013
Then status 204 0.000
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "marc"
  ]
}
When method PUT 0.008
Then status 204 0.000
And path 'beeyond' 0.000
When method GET 0.012
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[1]' 0.000
And match response.users[0].name == 'marc' 0.000
Tags: @teacher
0.025
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina"
  ]
}
When method PUT 0.009
Then status 204 0.000
Given request 0.000
{
  "namespace": "beeyond",
  "users": []
}
When method PUT 0.007
Then status 204 0.000
And path 'beeyond' 0.000
When method GET 0.005
Then status 200 0.000
And response.deleted == true 0.001
Tags: @teacher
0.022
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina"
  ]
}
When method PUT 0.009
Then status 204 0.000
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "marc"
  ]
}
When method PUT 0.007
Then status 204 0.000
And path 'beeyond' 0.000
When method GET 0.005
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[2]' 0.000
Tags: @teacher
0.038
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "emina",
    "marc"
  ]
}
When method PUT 0.012
Then status 204 0.000
Given request 0.000
{
  "namespace": "beeyond",
  "users": [
    "moritz",
    "stuetz"
  ]
}
When method PUT 0.018
Then status 204 0.000
And path 'beeyond' 0.000
When method GET 0.005
Then status 200 0.000
And match response.namespace == 'beeyond' 0.000
And match response.users == '#[2]' 0.000
And match response.users contains { 'name': 'moritz', 'id': #number } 0.000
And match response.users contains { 'name': 'stuetz', 'id': #number } 0.000