diff --git a/SOL002/VNFConfiguration-API/Configuration.robot b/SOL002/VNFConfiguration-API/Configuration.robot
index 103ecbd6fecc7320d14b6fbba7cfb272213d9616..4fb16d3b5942f8a5c7966fcd3ff435c56982042f 100644
--- a/SOL002/VNFConfiguration-API/Configuration.robot
+++ b/SOL002/VNFConfiguration-API/Configuration.robot
@@ -19,7 +19,7 @@ Set new VNF Configuration
     Send VNF configuration
     Check HTTP Response Status Code Is    200
     Check HTTP Response Header Contains    ETag
-    Check HTTP Response Body Json Schema Is   vnfConfigModifications.schema.json
+    Check HTTP Response Body Json Schema Is   vnfConfigModifications
     Check Postcondition VNF Is Configured
 
 Get information about a VNF configuration
@@ -34,7 +34,7 @@ Get information about a VNF configuration
     ...    Post-Conditions: none
     Get VNF configuration
     Check HTTP Response Status Code Is    200
-    Check HTTP Response Body Json Schema Is   vnfConfiguration.schema.json
+    Check HTTP Response Body Json Schema Is   vnfConfiguration
 
 Get information about a VNF configuration with HTTP Etag
     [Tags]    etag
@@ -49,7 +49,7 @@ Get information about a VNF configuration with HTTP Etag
     Get VNF configuration
     Check HTTP Response Status Code Is    200
     Check HTTP Response Header Contains    ETag
-    Check HTTP Response Body Json Schema Is   vnfConfiguration.schema.json
+    Check HTTP Response Body Json Schema Is   vnfConfiguration
 
 Set new VNF Configuration - HTTP Etag precondition unsuccessful
     [Tags]    etag
@@ -138,8 +138,9 @@ Check HTTP Response Header Contains
     Log    Header is present
     
 Check HTTP Response Body Json Schema Is
-    [Arguments]    ${schema}
+    [Arguments]    ${input}
     Should Contain    ${response[0]['headers']['Content-Type']}    application/json
+    ${schema} =    Catenate    ${input}    .schema.json
     Validate Json    ${schema}    ${response[0]['body']}
     Log    Json Schema Validation OK
       
diff --git a/SOL002/VNFIndicator-API/IndividualSubscription.robot b/SOL002/VNFIndicator-API/IndividualSubscription.robot
index 1d7fd9b3d07da8cbc892ade60fd339c6f7a94117..70e9373b0b3562eae00a01b9d6eb6a063d19fe3c 100644
--- a/SOL002/VNFIndicator-API/IndividualSubscription.robot
+++ b/SOL002/VNFIndicator-API/IndividualSubscription.robot
@@ -171,8 +171,9 @@ Check HTTP Response Header Contains
     Log    Header is present
     
 Check HTTP Response Body Json Schema Is
-    [Arguments]    ${schema}
+    [Arguments]    ${input}
     Should Contain    ${response[0]['headers']['Content-Type']}    application/json
+    ${schema} =    Catenate    ${input}    .schema.json
     Validate Json    ${schema}    ${response[0]['body']}
     Log    Json Schema Validation OK
 
diff --git a/SOL002/VNFIndicator-API/IndividualVNFindicator.robot b/SOL002/VNFIndicator-API/IndividualVNFindicator.robot
index 3b372dbb1c352dedf3f28bc9de691bcf73ed504b..114909043bf8d13c3e24f615e29ce55dd709fc16 100644
--- a/SOL002/VNFIndicator-API/IndividualVNFindicator.robot
+++ b/SOL002/VNFIndicator-API/IndividualVNFindicator.robot
@@ -144,8 +144,9 @@ Check HTTP Response Header Contains
     Log    Header is present
     
 Check HTTP Response Body Json Schema Is
-    [Arguments]    ${schema}
+    [Arguments]    ${input}
     Should Contain    ${response[0]['headers']['Content-Type']}    application/json
+    ${schema} =    Catenate    ${input}    .schema.json
     Validate Json    ${schema}    ${response[0]['body']}
     Log    Json Schema Validation OK
 
diff --git a/SOL002/VNFIndicator-API/Subscriptions.robot b/SOL002/VNFIndicator-API/Subscriptions.robot
index 1255b9071ff9f05c35214d308ffc34b17598b562..8fe95b05a0d9754b98f77df21bdf855d175889d3 100644
--- a/SOL002/VNFIndicator-API/Subscriptions.robot
+++ b/SOL002/VNFIndicator-API/Subscriptions.robot
@@ -191,8 +191,9 @@ Check HTTP Response Header Contains
     Log    Header is present
     
 Check HTTP Response Body Json Schema Is
-    [Arguments]    ${schema}
+    [Arguments]    ${input}
     Should Contain    ${response[0]['headers']['Content-Type']}    application/json
+    ${schema} =    Catenate    ${input}    .schema.json
     Validate Json    ${schema}    ${response[0]['body']}
     Log    Json Schema Validation OK
 
diff --git a/SOL002/VNFIndicator-API/VNFIndicators.robot b/SOL002/VNFIndicator-API/VNFIndicators.robot
index 6085bdbd158baa1e8d532e59ee05107a7d5ff2d4..86746cd106c742c106bbd6b4d2f21e487bbf6872 100644
--- a/SOL002/VNFIndicator-API/VNFIndicators.robot
+++ b/SOL002/VNFIndicator-API/VNFIndicators.robot
@@ -8,141 +8,132 @@ Library           REST    ${EM-VNF_SCHEMA}://${EM-VNF_HOST}:${EM-VNF_PORT}
 
 *** Test Cases ***
 Get all VNF Indicators
-    [Documentation]    Test ID 6.4.1
+    [Documentation]    Test ID: 6.3.2.1.1
     ...    Test title: Get all VNF Indicators
-    ...    Test objective: The objective is to test the retrieval of all the available VNF indicators
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Test objective: The objective is to test the retrieval of all the available VNF indicators and perform a JSON schema validation of the collected indicators data structure
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF.
+    ...    Reference: section 8.4.2.3.2 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Get all VNF indicators
     Check HTTP Response Status Code Is    200
     Check HTTP Response Body Json Schema Is   vnfIndicators
-    Check Postcondition VNF Indicators Untouched (Implicit)
     
 Get VNF Indicators with attribute-based filter
-    [Documentation]    Test ID 6.4.2
+    [Documentation]    Test ID: 6.3.2.1.2
     ...    Test title: Get VNF Indicators with attribute-based filter
-    ...    Test objective: The objective is to test the retrieval of VNF indicators using attribute-based filter
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Test objective: The objective is to test the retrieval of VNF indicators using attribute-based filter, perform a JSON schema validation of the collected indicators data structure, and verify that the retrieved information matches the issued attribute-based filters 
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF.
+    ...    Reference: section 8.4.2.3.2 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Get VNF indicators with filter
     Check HTTP Response Status Code Is    200
     Check HTTP Response Body Json Schema Is   vnfIndicators
     Check HTTP Response Body Matches Attribute-Based Filter
-    Check Postcondition VNF Indicators Untouched (Implicit)
 
 Get all VNF Indicators with invalid attribute-based filter
-    [Documentation]    Test ID 6.4.3
+    [Documentation]    Test ID: 6.3.2.1.3
     ...    Test title: Get VNF Indicators with invalid attribute-based filter
-    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails using invalid attribute-based filters
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails using invalid attribute-based filters, and perform the JSON schema validation of the failed operation HTTP response. 
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF.
+    ...    Reference: section 8.4.2.3.2 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Get VNF indicators with invalid filter
     Check HTTP Response Status Code Is    400
     Check HTTP Response Body Json Schema Is   ProblemDetails
-    Check Postcondition VNF Indicators Untouched (Implicit)
 
 Get all VNF Indicators with invalid authorization token
-    [Documentation]    Test ID 6.4.4
+    [Documentation]    Test ID: 6.3.2.1.4
     ...    Test title: GET all VNF Indicators One or more measures of VNF performance indicators are available in the VNF.
-    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails using invalid authorization token
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails using invalid authorization token, and perform the JSON schema validation of the failed operation HTTP response
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF.
+    ...    Reference: section 4.5.3.3, 8.4.2.3.2 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Get all VNF indicators with invalid authorization token
-    Check HTTP Response Status Code Is    401
+    Check HTTP Response Status Code Is 40x
     Check HTTP Response Body Json Schema Is   ProblemDetails
-    Check Postcondition VNF Indicators Untouched (Implicit)
 
 Get all VNF Indicators without authorization token
-    [Documentation]    Test ID 6.4.5
+    [Documentation]    Test ID: 6.3.2.1.5
     ...    Test title: GET all VNF Indicators without authorization bearers
-    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails by omitting the authorization token
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails by omitting the authorization token, and perform the JSON schema validation of the failed operation HTTP response
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF.
+    ...    Reference: section 4.5.3.3, 8.4.2.3.2 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Get all VNF indicators without authorization token
-    Check HTTP Response Status Code Is    401
+    Check HTTP Response Status Code Is 40x
     Check HTTP Response Body Json Schema Is   ProblemDetails
-    Check Postcondition VNF Indicators Untouched (Implicit)
 
 Get all VNF Indicators with invalid resource endpoint
-    [Documentation]    Test ID 6.4.6
+    [Documentation]    Test ID: 6.3.2.1.6
     ...    Test title: GET all VNF Indicators with invalid resource endpoint
-    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails when using invalid resource endpoint
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Test objective: The objective is to test that the retrieval of VNF indicators fails when using invalid resource endpoint, and perform the JSON schema validation of the failed operation HTTP response
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF.
+    ...    Reference: section 8.4.2.3.2 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Get all VNF indicators with invalid resource endpoint
     Check HTTP Response Status Code Is    404
     Check HTTP Response Body Json Schema Is   ProblemDetails
-    Check Postcondition VNF Indicators Untouched (Implicit)
 
 POST all VNF Indicators - Method not implemented
-    [Documentation]    Test ID 6.4.7
+    [Documentation]    Test ID: 6.3.2.1.7
     ...    Test title: POST all VNF Indicators - Method not implemented
     ...    Test objective: The objective is to test that POST method is not allowed to create new VNF indicators
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF
+    ...    Reference: section 8.4.2.3.1 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Send POST Request for all VNF indicators
     Check HTTP Response Status Code Is    405
-    Check Postcondition VNF Indicators Untouched (Implicit) 
 
 PUT all VNF Indicators - Method not implemented
-    [Documentation]    Test ID 6.4.7
+    [Documentation]    Test ID: 6.3.2.1.8
     ...    Test title: PUT all VNF Indicators - Method not implemented
     ...    Test objective: The objective is to test that PUT method is not allowed to modify VNF indicators
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF
+    ...    Reference: section 8.4.2.3.3 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Send PUT Request for all VNF indicators
     Check HTTP Response Status Code Is    405
-    Check Postcondition VNF Indicators Untouched (Implicit) 
 
 PATCH all VNF Indicators - Method not implemented
-     [Documentation]    Test ID 6.4.8
+     [Documentation]    Test ID: 6.3.2.1.9
     ...    Test title: POST all VNF Indicators - Method not implemented
     ...    Test objective: The objective is to test that PATCH method is not allowed to update VNF indicators
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF
+    ...    Reference: section 8.4.2.3.4 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Send PATCH Request for all VNF indicators
     Check HTTP Response Status Code Is    405
-    Check Postcondition VNF Indicators Untouched (Implicit) 
 
-DELETE all VNF Indicators (Method not implemented)
-    [Documentation]    Test ID 6.4.9
+DELETE all VNF Indicators - Method not implemented
+    [Documentation]    Test ID: 6.3.2.1.10
     ...    Test title: POST all VNF Indicators - Method not implemented
     ...    Test objective: The objective is to test that DELETE method is not allowed to delete VNF indicators
-    ...    Pre-conditions: A VNF instance is up and running. One or more measures of VNF performance indicators are available in the VNF.
-    ...    Reference: section 8.4.2 - SOL002 v2.4.1
+    ...    Pre-conditions: A VNF instance is instantiated. One or more measures of VNF performance indicators are available in the VNF
+    ...    Reference: section 8.4.2.3.5 - SOL002 v2.4.1
     ...    Config ID: Config_prod_VE
     ...    Applicability: The VNF supports the generation and maintenance of performance indicators.
-    ...    Post-Conditions: The VNF indicators are not modified by the operation
+    ...    Post-Conditions: none
     Send DELETE Request for all VNF indicators
     Check HTTP Response Status Code Is    405
-    Check Postcondition VNF Indicators Untouched (Implicit) 
+    Check Postcondition VNF Indicators Exist
     
 *** Keywords ***
 Get all VNF indicators
@@ -150,22 +141,29 @@ Get all VNF indicators
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     Log    Execute Query and validate response
-    ${response}=    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators
-    ${vnfIndicators}=    evaluate    json.loads('''${response.body}''')    json
+    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
+    ${body}=    evaluate    json.loads('''${response.body}''')    json
+    Set Suite Variable    @{vnfIndicators}    ${body}
     
 Get VNF indicators with filter
     Log    The GET method queries multiple VNF indicators using Attribute-based filtering parameters
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     Log    Execute Query and validate response
-    ${response}=    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators?${POS_FIELDS}
+    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators?${POS_FIELDS}
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
 Get VNF indicators with invalid filter
     Log    The GET method queries multiple VNF indicators using invalid Attribute-based filtering parameters
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     Log    Execute Query and validate response
-    ${response}=    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators?${NEG_FIELDS}
+    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators?${NEG_FIELDS}
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
 Get all VNF indicators with invalid authorization token
     Pass Execution If    ${AUTH_USAGE} == 0    Skipping test as EM/VNF is not supporting authentication
@@ -173,71 +171,86 @@ Get all VNF indicators with invalid authorization token
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Set Headers    {"Authorization": "${NEG_AUTHORIZATION}"}
     Log    Execute Query and validate response
-    ${response}=    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
 Get all VNF indicators without authorization token
     Pass Execution If    ${AUTH_USAGE} == 0    Skipping test as EM/VNF is not supporting authentication
     Log    The GET method queries multiple VNF indicators omitting token
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Log    Execute Query and validate response
-    ${response}=    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
     
 Get all VNF indicators with invalid resource endpoint
     Log    The GET method queries multiple VNF indicators omitting token
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     Log    Execute Query and validate response
-    ${response}=    Get    ${apiRoot}/${apiName}/${apiVersion}/indicator
+    Get    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
 Send POST Request for all VNF indicators
     log    Trying to perform a POST. This method should not be implemented
     Set Headers  {"Accept":"${ACCEPT_JSON}"}  
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
-    ${response}=    Post    ${apiRoot}/${apiName}/${apiVersion}/configuration
+    Post    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
     
 Send PUT Request for all VNF indicators
     log    Trying to perform a PUT. This method should not be implemented
     Set Headers  {"Accept":"${ACCEPT_JSON}"}  
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
-    ${response}=    Post    ${apiRoot}/${apiName}/${apiVersion}/configuration
+    Post    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
     
 Send PATCH Request for all VNF indicators
     log    Trying to perform a PATCH. This method should not be implemented
     Set Headers  {"Accept":"${ACCEPT_JSON}"}  
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
-    ${response}=    Post    ${apiRoot}/${apiName}/${apiVersion}/configuration
+    Post    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
     
 Send DELETE Request for all VNF indicators
     log    Trying to perform a DELETE. This method should not be implemented
     Set Headers  {"Accept":"${ACCEPT_JSON}"}  
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
-    ${response}=    Post    ${apiRoot}/${apiName}/${apiVersion}/configuration
+    Post    ${apiRoot}/${apiName}/${apiVersion}/indicators
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
 Check HTTP Response Status Code Is
-    [Arguments]    ${expected_status}    
-    Should Be Equal    ${response.status_code}    ${expected_status}
+    [Arguments]    ${expected_status}
+    ${status}=    Convert To Integer    ${expected_status}    
+    Should Be Equal    ${response[0]['status']}    ${status} 
+    Log    Status code validated
+    
+Check HTTP Response Status Code Is 40x  
+    Should Contain Any    ${response[0]['status']}    401    403
     Log    Status code validated
 
 Check HTTP Response Header Contains
     [Arguments]    ${CONTENT_TYPE}
-    Should Contain    ${response.headers}    ${CONTENT_TYPE}
+    Should Contain    ${response[0]['headers']}    ${CONTENT_TYPE}
     Log    Header is present
     
 Check HTTP Response Body Json Schema Is
     [Arguments]    ${schema}
-    ${contentType}=    Get Value From Json    ${response.headers}    $..Content-Type
-    Should Be Equal    ${contentType}    ${CONTENT_TYPE_JSON}
-    ${json}=    evaluate    json.loads('''${response.body}''')    json
-    Validate Json    ${schema}    ${json}
+    Should Contain    ${response[0]['headers']['Content-Type']}    application/json
+    Validate Json    ${schema}    ${response[0]['body']}
     Log    Json Schema Validation OK
 
-Check Postcondition VNF Indicators Untouched (Implicit)
-    Log    Check Implicit Postcondition
-    ${input}=    evaluate    json.loads('''${vnfIndicators}''')    json
+Check Postcondition VNF Indicators Exist
+    Log    Check  Postcondition indicators exist
     Get all VNF indicators
-    ${output}=    evaluate    json.loads('''${response.body}''')    json
-    Should Be Equal  ${output}    ${input}
-
+    Check HTTP Response Status Code Is    200
+    
 Check HTTP Response Body Matches Attribute-Based Filter
     Log    Check Response includes VNF Indicators according to filter
     #todo
\ No newline at end of file
diff --git a/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot b/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot
index b6923d444f889713fe4aed8d2cffff48fac06aa8..5c83579937fca3eea36fa6ab25c426fca306b681 100644
--- a/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot
+++ b/SOL002/VNFIndicator-API/VnfIndicatorsInVnfInstanceId.robot
@@ -188,8 +188,9 @@ Check HTTP Response Header Contains
     Log    Header is present
     
 Check HTTP Response Body Json Schema Is
-    [Arguments]    ${schema}
+    [Arguments]    ${input}
     Should Contain    ${response[0]['headers']['Content-Type']}    application/json
+    ${schema} =    Catenate    ${input}    .schema.json
     Validate Json    ${schema}    ${response[0]['body']}
     Log    Json Schema Validation OK
 
diff --git a/SOL002/VNFPerformanceManagement-API/PMJobs.robot b/SOL002/VNFPerformanceManagement-API/PMJobs.robot
index 50a8c75573d2a6cb6822ffd6b1cd6af842ee0474..12a2eaf78a1974917cc990341c8a7704d45480c7 100644
--- a/SOL002/VNFPerformanceManagement-API/PMJobs.robot
+++ b/SOL002/VNFPerformanceManagement-API/PMJobs.robot
@@ -7,183 +7,350 @@ Resource          environment/pmJobs.txt
 Library           REST    ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT}
 
 *** Test Cases ***
-GET all Pm Jobs
+GET all VNF Performance Monitoring Jobs
+    [Documentation]    Test ID: 6.3.3.1.1
+    ...    Test title: GET all VNF Performance Monitoring Jobs
+    ...    Test objective: The objective is to test the retrieval of all the available VNF performance monitoring jobs and perform a JSON schema and content validation of the collected jobs data structure
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    GET all VNF Performance Monitoring Jobs
+    Check HTTP Response Status Code Is    200
+    Check HTTP Response Body Json Schema Is   PmJobs
+    Check HTTP Response Body Does Not Contain reports
+
+GET VNF Performance Monitoring Jobs with attribute-based filter
+    [Documentation]    Test ID: 6.3.3.1.2
+    ...    Test title: GET all VNF Performance Monitoring Jobs with attribute-based filter
+    ...    Test objective: The objective is to test the retrieval of VNF performance monitoring jobs using attribute-based filter, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued attribute-based filter
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    GET VNF Performance Monitoring Jobs with attribute-based filter
+    Check HTTP Response Status Code Is    200
+    Check HTTP Response Body Json Schema Is   PmJobs
+    Check HTTP Response Body Matches filter
+
+GET all VNF Performance Monitoring Jobs with all_fields attribute selector
+    [Documentation]    Test ID: 6.3.3.1.3
+    ...    Test title: GET all VNF Performance Monitoring Jobs with all_fields attribute selector
+    ...    Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs all_fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued all_fileds selector
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    GET VNF Performance Monitoring Jobs with all_fields attribute selector
+    Check HTTP Response Status Code Is    200
+    Check HTTP Response Body Json Schema Is   PmJobs
+    Check HTTP Response Body Matches all_fields selector
+
+GET all VNF Performance Monitoring Jobs with exclude_default attribute selector
+    [Documentation]    Test ID: 6.3.3.1.4
+    ...    Test title: GET all VNF Performance Monitoring Jobs with exclude_default attribute selector
+    ...    Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs exclude_default attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued exclude_default selector
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    GET VNF Performance Monitoring Jobs with exclude_default attribute selector
+    Check HTTP Response Status Code Is    200
+    Check HTTP Response Body Json Schema Is   PmJobs
+    Check HTTP Response Body Matches exclude_default selector
+
+GET all VNF Performance Monitoring Jobs with fields attribute selector
+    [Documentation]    Test ID: 6.3.3.1.5
+    ...    Test title: GET all VNF Performance Monitoring Jobs with fields attribute selector
+    ...    Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued fields selector
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: The VNFM supports the use of exclude_fields attribute selector
+    ...    Post-Conditions: none
+    GET VNF Performance Monitoring Jobs with fields attribute selector
+    Check HTTP Response Status Code Is    200
+    Check HTTP Response Body Json Schema Is   PmJobs
+    Check HTTP Response Body Matches fields selector
+
+GET all VNF Performance Monitoring Jobs with exclude_fields attribute selector
+    [Documentation]    Test ID: 6.3.3.1.6
+    ...    Test title: GET all VNF Performance Monitoring Jobs with exclude_fields attribute selector
+    ...    Test objective: The objective is to test the retrieval of all VNF performance monitoring jobs exclude_fields attribute selector, perform a JSON schema validation of the collected jobs data structure, and verify that the retrieved information matches the issued exclude_fields selector
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: The VNFM supports the use of exclude_fields attribute selector
+    ...    Post-Conditions: none
+    GET VNF Performance Monitoring Jobs with exclude_fields attribute selector
+    Check HTTP Response Status Code Is    200
+    Check HTTP Response Body Json Schema Is   PmJobs
+    Check HTTP Response Body Matches exclude_fields selector
+
+GET VNF Performance Monitoring Jobs with invalid attribute-based filter
+    [Documentation]    Test ID: 6.3.3.1.7
+    ...    Test title: GET VNF Performance Monitoring Jobs with invalid attribute-based filter
+    ...    Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails when using invalid attribute-based filter, and perform the JSON schema validation of the failed operation HTTP response
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    GET VNF Performance Monitoring Jobs with invalid attribute-based filter
+    Check HTTP Response Status Code Is    400
+    Check HTTP Response Body Json Schema Is   ProblemDetails
+
+GET VNF Performance Monitoring Jobs with invalid resource endpoint
+    [Documentation]    Test ID: 6.3.3.1.8
+    ...    Test title: GET VNF Performance Monitoring Jobs with invalid attribute-based filter
+    ...    Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails when using invalid resource endpoint, and perform the JSON schema validation of the failed operation HTTP response
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.2 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    GET VNF Performance Monitoring Jobs with invalid resource endpoint
+    Check HTTP Response Status Code Is    400
+    Check HTTP Response Body Json Schema Is   ProblemDetails
+
+Create new VNF Performance Monitoring Job
+    [Documentation]    Test ID: 6.3.3.1.9
+    ...    Test title: GET VNF Performance Monitoring Jobs with invalid attribute-based filter
+    ...    Test objective: The objective is to test that the retrieval of VNF performance monitoring jobs fails when using invalid resource endpoint, and perform the JSON schema validation of the failed operation HTTP response
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.1 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VNFM
+    ...    Applicability: none
+    ...    Post-Conditions: The VNF Performance Job is successfully created on the VNFM
+    Send Post Request Create new VNF Performance Monitoring Job
+    Check HTTP Response Status Code Is    201
+    Check HTTP Response Body Json Schema Is   PmJob
+    Check Postcondition PmJob Exists
+
+PUT all VNF Performance Monitoring Jobs - Method not implemented
+    [Documentation]    Test ID: 6.3.3.1.10
+    ...    Test title: PUT all VNF Performance Monitoring Jobs - Method not implemented
+    ...    Test objective: The objective is to test that PUT method is not allowed to modify VNF Performance Monitoring Jobs
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.3 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VE
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    Send PUT Request for all VNF Performance Monitoring Jobs
+    Check HTTP Response Status Code Is    405
+    
+PATCH all VNF Performance Monitoring Jobs - (Method not implemented)
+    [Documentation]    Test ID: 6.3.3.1.11
+    ...    Test title: PATCH all VNF Performance Monitoring Jobs - Method not implemented
+    ...    Test objective: The objective is to test that PATCH method is not allowed to update VNF Performance Monitoring Jobs
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.3 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VE
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    Send PATCH Request for all VNF Performance Monitoring Jobs
+    Check HTTP Response Status Code Is    405
+    
+DELETE all VNF Performance Monitoring Jobs - Method not implemented
+    [Documentation]    Test ID: 6.3.3.1.12
+    ...    Test title: DELETE all VNF Performance Monitoring Jobs - Method not implemented
+    ...    Test objective: The objective is to test that DELETE method is not allowed to update VNF Performance Monitoring Jobs
+    ...    Pre-conditions: A VNF instance is instantiated. One or more VNF performance jobs are set in the VNF.
+    ...    Reference: section 6.4.2.3.3 - SOL002 v2.4.1
+    ...    Config ID: Config_prod_VE
+    ...    Applicability: none
+    ...    Post-Conditions: none
+    Send PATCH Request for all VNF Performance Monitoring Jobs
+    Check HTTP Response Status Code Is    405
+    Check Postcondition VNF Performance Monitoring Jobs Exist
+    
+*** Keywords ***
+GET all VNF Performance Monitoring Jobs
     Log    Trying to get all PM Jobs present in the VNFM
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs
-    Integer    response status    200
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate response
-    ${result}=    Output    response body
-    Validate Json    PmJobs.schema.json    ${result}
-    Log    Validation OK
-    Log    Checking that reports element is missing
-    ${reports}=    Get Value From Json    ${result}    $..reports
-    Should Be Empty    ${reports}
-    Log    Reports element is empty as expected
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
-GET all Pm Jobs - Filter
+GET VNF Performance Monitoring Jobs with attribute-based filter
     Log    Trying to get all PM Jobs present in the VNFM, using filter params
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs?${POS_FILTER}
-    Integer    response status    200
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate response
-    ${result}=    Output    response body
-    Validate Json    PmJobs.schema.json    ${result}
-    Log    Validation OK
-
-GET all Pm Jobs - all_fields
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
+
+GET VNF Performance Monitoring Jobs with all_fields attribute selector
     Log    Trying to get all PM Jobs present in the VNFM, using 'all_fields' filter
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs?all_fields
-    Integer    response status    200
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate response
-    ${result}=    Output    response body
-    Validate Json    PmJobs.schema.json    ${result}
-    Log    Validation OK
-    Log    Trying to validate criteria schema
-    ${criteria}=    Get Value From Json    ${result}    $..criteria
-    Validate Json    criteria.schema.json    ${criteria[0]}
-    Log    Validation for criteria schema OK
-    Log    Trying to validate criteria schema
-    ${reports}=    Get Value From Json    ${result}    $..reports
-    Validate Json    reports.schema.json    ${reports[0]}
-    Log    Validation for reports schema OK
-    Log    Validating _links schema
-    ${links}=    Get Value From Json    ${result}    $.._links
-    Validate Json    links.schema.json    ${links[0]}
-    Log    Validation for _links schema OK
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
-GET all Pm Jobs - exclude_default
+GET VNF Performance Monitoring Jobs with exclude_default attribute selector
     Log    Trying to get all VNF Packages present in the VNFM, using filter params
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs?exclude_default
-    Integer    response status    200
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate response
-    ${result}=    Output    response body
-    Validate Json    PmJobs.schema.json    ${result}
-    Log    Validation OK
-    Log    Checking that reports element is missing
-    ${reports}=    Get Value From Json    ${result}    $..reports
-    Should Be Empty    ${reports}
-    Log    Reports element is empty as expected
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
-GET all Pm Jobs - fields
+GET VNF Performance Monitoring Jobs with fields attribute selector
     Log    Trying to get all VNF Packages present in the VNFM, using filter params
     Pass Execution If    ${FIELD_USAGE} == 0    Skipping test as VNFM is not supporting 'fields'
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs?fields=${fields}
-    Integer    response status    200
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate response
-    ${result}=    Output    response body
-    Validate Json    PmJobs.schema.json    ${result}
-    Log    Validation OK
-    Log    Trying to validate criteria schema
-    ${criteria}=    Get Value From Json    ${result}    $..criteria
-    Validate Json    criteria.schema.json    ${criteria[0]}
-    Log    Validation for criteria schema OK
-    Log    Trying to validate criteria schema
-    ${reports}=    Get Value From Json    ${result}    $..reports
-    Validate Json    reports.schema.json    ${reports[0]}
-    Log    Validation for reports schema OK
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
-GET all Pm Jobs - exclude_fields
+GET VNF Performance Monitoring Jobs with exclude_fields attribute selector
     Log    Trying to get all VNF Packages present in the VNFM, using filter params
     Pass Execution If    ${FIELD_USAGE} == 0    Skipping test as VNFM is not supporting 'fields'
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs?fields=${fields}
-    Integer    response status    200
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate response
-    ${result}=    Output    response body
-    Validate Json    PmJobs.schema.json    ${result}
-    Log    Validation OK
-    Log    Checking that reports element is missing
-    ${reports}=    Get Value From Json    ${result}    $..reports
-    Should Be Empty    ${reports}
-    Log    Reports element is empty as expected
-    
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
-GET all Pm Jobs - Negative (wronge filter name)
+GET VNF Performance Monitoring Jobs with invalid attribute-based filter
     Log    Trying to get all PM Jobs present in the VNFM, using an erroneous filter param
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs?${NEG_FILTER}
-    Integer    response status    400
-    Log    Received 400 Bad Request as expected
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate ProblemDetails
-    ${problemDetails}=    Output    response headers Content-Type
-    Validate Json    ProblemDetails.schema.json    ${problemDetails}
-    Log    Validation OK
-
-GET all Pm Jobs (Negative: Not found)
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
+
+GET VNF Performance Monitoring Jobs with invalid resource endpoint    
     Log    Trying to perform a GET on a erroneous URI
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     GET    ${apiRoot}/${apiName}/${apiVersion}/pm_job    # wrong URI /pm_job instead of /pm_jobs
-    Integer    response status    404
-    Log    Received 404 Not Found as expected
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate ProblemDetails
-    ${problemDetails}=    Output    response headers Content-Type
-    Validate Json    ProblemDetails.schema.json    ${problemDetails}
-    Log    Validation OK
-
-POST all PM Jobs - Create new PM Job
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
+
+Send Post Request Create new VNF Performance Monitoring Job
     Log    Creating a new PM Job
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Set Headers    {"Content-Type": "${CONTENT_TYPE_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     ${body}=    Get File    jsons/CreatePmJobRequest.json
     POST    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs    ${body}
-    Integer    response status    201
-    Log    Received 201 Created as expected
-    ${contentType}=    Output    response headers Content-Type
-    Should Contain    ${contentType}    ${CONTENT_TYPE_JSON}
-    Log    Trying to validate response
-    ${result}=    Output    response body
-    Validate Json    PmJob.schema.json    ${result}
-    Log    Validation OK
-
-PUT all PM Jobs - (Method not implemented)
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
+
+Send PUT Request for all VNF Performance Monitoring Jobs 
     Log    Trying to perform a PUT. This method should not be implemented
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     PUT    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs
-    Integer    response status    405
-    Log    Received 405 Method not implemented as expected
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
-PATCH all Pm Jobs - (Method not implemented)
-    Log    Trying to perform a PATCH. This method should not be implemented
+Send PATCH Request for all VNF Performance Monitoring Jobs 
+    Log    Trying to perform a PUT. This method should not be implemented
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
     PATCH    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs
-    Integer    response status    405
-    Log    Received 405 Method not implemented as expected
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
+    
+Send DELETE Request for all VNF Performance Monitoring Jobs 
+    Log    Trying to perform a PUT. This method should not be implemented
+    Set Headers    {"Accept": "${ACCEPT_JSON}"}
+    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
+    PATCH    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
 
-DELETE all Pm Jobs - (Method not implemented)
-    Log    Trying to perform a DELETE. This method should not be implemented
+Check Postcondition VNF Performance Monitoring Jobs Exist
+    Log    Checking that Pm Job still exists
+    GET all VNF Performance Monitoring Jobs
+    
+Check Postcondition PmJob Exists
+    Log    Checking that Pm Job exists
     Set Headers    {"Accept": "${ACCEPT_JSON}"}
     Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization": "${AUTHORIZATION}"}
-    DELETE    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs
-    Integer    response status    405
-    Log    Received 405 Method not implemented as expected
+    GET    ${apiRoot}/${apiName}/${apiVersion}/pm_jobs/${response[0]['body']['id']}
+    ${output}=    Output    response
+    Set Suite Variable    @{response}    ${output}
+    Check HTTP Response Status Code Is    200
+    Check HTTP Response Body Json Schema Is    PmJob
+    
+Check HTTP Response Body Matches exclude_fields selector
+    Log    Checking that reports element is missing
+    ${reports}=    Get Value From Json    ${response[0]['body']}    $..reports
+    Should Be Empty    ${reports}
+    Log    Checking that reports element is missing
+    ${criteria}=    Get Value From Json    ${response[0]['body']}    $..criteria
+    Should Be Empty    ${criteria}
+    Log    Reports element is empty as expected
+
+Check HTTP Response Body Matches fields selector
+    Log    Trying to validate criteria schema
+    ${criteria}=    Get Value From Json    ${response[0]['body']}    $..criteria
+    Validate Json    criteria.schema.json    ${criteria[0]}
+    Log    Validation for criteria schema OK
+    Log    Trying to validate criteria schema
+    ${reports}=    Get Value From Json    ${response[0]['body']}    $..reports
+    Validate Json    reports.schema.json    ${reports[0]}
+    Log    Validation for reports schema OK
+    
+Check HTTP Response Body Matches exclude_default selector
+    Log    Checking that reports element is missing
+    ${reports}=    Get Value From Json    ${response[0]['body']}    $..reports
+    Should Be Empty    ${reports}
+    Log    Reports element is empty as expected
+
+Check HTTP Response Body Matches all_fields selector
+    Log    Trying to validate criteria schema
+    ${criteria}=    Get Value From Json    ${response[0]['body']}    $..criteria
+    Validate Json    criteria.schema.json    ${criteria[0]}
+    Log    Validation for criteria schema OK
+    Log    Trying to validate criteria schema
+    ${reports}=    Get Value From Json    ${response[0]['body']}    $..reports
+    Validate Json    reports.schema.json    ${reports[0]}
+    Log    Validation for reports schema OK
+    Log    Validating _links schema
+    ${links}=    Get Value From Json    ${response[0]['body']}    $.._links
+    Validate Json    links.schema.json    ${links[0]}
+    Log    Validation for _links schema OK
+    
+Check HTTP Response Body Matches filter
+    Log    Checking that attribute-based filter is matched
+    #todo
+
+Check HTTP Response Body Does Not Contain reports
+    Log    Checking that field element is missing
+    ${reports}=    Get Value From Json    ${response[0]['body']}    $..reports
+    Should Be Empty    ${reports}
+    Log    Reports element is empty as expected
+    
+Check HTTP Response Status Code Is
+    [Arguments]    ${expected_status}
+    ${status}=    Convert To Integer    ${expected_status}    
+    Should Be Equal    ${response[0]['status']}    ${status} 
+    Log    Status code validated
+    
+Check HTTP Response Status Code Is 40x  
+    Should Contain Any    ${response[0]['status']}    401    403
+    Log    Status code validated
+
+Check HTTP Response Header Contains
+    [Arguments]    ${CONTENT_TYPE}
+    Should Contain    ${response[0]['headers']}    ${CONTENT_TYPE}
+    Log    Header is present
+    
+Check HTTP Response Body Json Schema Is
+    [Arguments]    ${input}
+    Should Contain    ${response[0]['headers']['Content-Type']}    application/json
+    ${schema} =    Catenate    ${input}    .schema.json
+    Validate Json    ${schema}    ${response[0]['body']}
+    Log    Json Schema Validation OK
+
diff --git a/SOL002/VNFPerformanceManagement-API/environment/pmJobs.txt b/SOL002/VNFPerformanceManagement-API/environment/pmJobs.txt
index 57798d17d3210b25b49340d89c32b6e141adb325..d3bffe49dcfe216b32c698e553727a8db74a4e77 100644
--- a/SOL002/VNFPerformanceManagement-API/environment/pmJobs.txt
+++ b/SOL002/VNFPerformanceManagement-API/environment/pmJobs.txt
@@ -2,3 +2,4 @@
 ${POS_FILTER}     objectInstanceIds=1f50d68b-82e8-4deb-bd40-c934d4d1ac0a
 ${NEG_FILTER}     criteriaPmJob=erroneousAttributeName
 ${fields}         criteria,reports
+@{response}=    httpresponse
diff --git a/SOL005/NSFaultManagement-API/Subscriptions.robot b/SOL005/NSFaultManagement-API/Subscriptions.robot
index bfb48bf8b32c22842a07621ebd7281e0ba1d61a4..8b1c16752aff12b9fc1f4b851ce115cd6c0cfcf7 100644
--- a/SOL005/NSFaultManagement-API/Subscriptions.robot
+++ b/SOL005/NSFaultManagement-API/Subscriptions.robot
@@ -3,6 +3,7 @@ Resource    environment/variables.txt
 Resource   NSFMOperationKeywords.robot  
 Library    REST     ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT}
 Library     OperatingSystem
+Library  DependencyLibrary
 Library    JSONLibrary
 Library    JSONSchemaLibrary    schemas/