Anchor
...
Include Page
...
title | Base URL for Test Instance REST API |
---|
REST V1 Authentication REST V1 Authentication
Table of Contents | ||
---|---|---|
|
Each function returns a JSON test instance object. The test instance object is an object that has these attributes,
Each JSON test instance object contains a list of property value pojo. The property value object has these attributes.
Testing Tools
Currently there are 8 different testing tools that are supported out of box in Flex Deploy, but you can add your own testing tools as well.
Apache JMeterTesting Tools
Currently there are 8 different testing tools that are supported out of box in Flex Deploy, but you can add your own testing tools as well.
Apache JMeter
Property Display Name | Property Key Name | Type | Required | Description |
---|---|---|---|---|
JMeter Home Directory | FDJM_JMETER_HOME_DIR | String | Yes | Apache JMeter Home Directory. Make sure you have bin directory under this. |
Apache JMeter Properties file | FDJM_JMETER_PROPERTIES_FILE | String | Yes | Apache JMeter Properties file. |
HP Unified Functional Testing
There are no properties for HP Unified Functional Testing.
JUnit
There are no properties for JUnit.
Oracle Application Test Suite (OATS)
Property Display Name | Property Key Name | Type | Required | Description |
---|---|---|---|---|
FDOAT_RUN_SCRIPT | FDOAT_RUN_SCRIPT | String | No | Oracle Application Test Suite run script file name (.sh or .bat) with full Path. |
SoapUI
Property Display Name | Property Key Name | Type | Required | Description |
---|---|---|---|---|
SoapUI Test Runner Path | FDSUI_SOAPUI_PATH_TO_TESTRUNNER_FILE | String | Yes | Absolute path to the Test runner script for SoapUI testing. |
TestNG
There are no properties for TestNG.
utPLSQL
There are no properties for utPLSQL.
Postman
FDJM_JMETER_HOME_DIR
Property Display Name | Property Key Name | Type | Required | Description |
---|
Newman Executable Path | FDPMN_POSTMAN_PATH_TO_NEWMAN_UTILITY | String |
FDJM_JMETER_PROPERTIES_FILE
HP Unified Functional Testing
There are no properties for HP Unified Functional Testing.
JUnit
There are no properties for JUnit.
Oracle Application Test Suite (OATS)
FDOAT_RUN_SCRIPT
SoapUI
FDSUI_SOAPUI_PATH_TO_TESTRUNNER_FILE
TestNG
There are no properties for TestNG.
utPLSQL
There are no properties for utPLSQL.
Postman
FDPMN_POSTMAN_PATH_TO_NEWMAN_UTILITY
FDPMN_POSTMAN_PATH_TO_NODEJS
GET
There are two implementations of GET. One will find a test instance with the given Id and return the JSON representation of the test instance. The other will find a list of test instances matching the parameters supplied to it.
GET (Using Id)
This GET service will find an test instance with the given Id and return the JSON representation of the object.
...
title | API URL |
---|
...
No | Absolute path to the newman command line utility for Postman testing. | |||
Node Executable Path | FDPMN_POSTMAN_PATH_TO_NODEJS | String | No | Absolute path to the Node executable. |
GET
There are two implementations of GET. One will find a test instance with the given Id and return the JSON representation of the test instance. The other will find a list of test instances matching the parameters supplied to it.
GET (Using Id)
This GET service will find an test instance with the given Id and return the JSON representation of the object.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance/{Id} |
Request
Parameter | Required | Type | Description |
---|---|---|---|
Id | Yes | URL | This is a URL parameter for the Id which is used to find and return an test instance with. |
Include Page | ||||
---|---|---|---|---|
|
Response Codes
HTTP Code | Description |
---|---|
200 | Test Instance was found and returned |
400 | Bad request |
401 | Unauthorized |
500 | Unexpected internal server error |
Example
If we had a test instance in our database with an Id of 11101 and had the following attributes
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"isActive": true,
"properties": [
{
"propertyName": "FDJM_JMETER_HOME_DIR",
"propertyValue": "Home Directory Patch 1"
},
{
"propertyName": "FDJM_JMETER_PROPERTIES_FILE",
"propertyValue": "Properties Patch 1"
}
],
"description": "This is Test Instance 1",
"instanceName": "Test Instance 1",
"instanceCode": "TESTINST1",
"instanceId": 11101,
"environments": [],
"testingToolId": 10001
}
} |
When we run a GET request at the following URL
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance/
...
Parameters
Id
This is a URL parameter for the Id which is used to find and return an test instance with.
Response Codes
Example
If we had a test instance in our database with an Id of 11101 and had the following attributes
language | js |
---|---|
theme | Eclipse |
title | Test Instance - 11101 |
11101
The GET request would return the following JSON test instance object
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "isActive": true, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory Patch 1" }, { "propertyName": "FDJM_JMETER_PROPERTIES_FILE", "propertyValue": "Properties Patch 1" } ], "description": "This is Test Instance 1", "instanceName": "Test Instance 1", "instanceCode": "TESTINST1", "instanceId": 11101, "environments": [], "testingToolId": 10001 } } |
When we run a GET request at the following URL
http://host:GET (Using Query Parameters)
This GET service will find an test instance by querying based on a code, name, and/or tool name and return the JSON representations of the objects. If no query parameters are given this request will return the entire list of test instances.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance |
...
The GET request would return the following JSON test instance object
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"isActive": true,
"properties": [
{
"propertyName": "FDJM_JMETER_HOME_DIR",
"propertyValue": "Home Directory 1"
},
{
"propertyName": "FDJM_JMETER_PROPERTIES_FILE",
"propertyValue": "Properties 1"
}
],
"description": "This is Test Instance 1",
"instanceName": "Test Instance 1",
"instanceCode": "TESTINST1",
"instanceId": 11101,
"environments": [],
"testingToolId": 10001
}
} |
GET (Using Query Parameters)
This GET service will find an test instance by querying based on a code, name, and/or tool name and return the JSON representations of the objects. If no query parameters are given this request will return the entire list of test instances.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance? Append the following character sequences to the above URL to specify Query parameters.Use '&' between successive query parameters:instanceCode={code} instanceName={name} testingTool={tool} Examples:To search by code only:http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance?instanceCode={code} To search by name only:http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance?instanceName={name} To search by tool and name:http://host:port/flexdeploy/rest/topology/testinstance?testingTool={tool}&instanceName={name} |
Tip |
---|
The query parameters are not case sensitive. Searching by instanceCode=instanceCode is the same as searching by instanceCode=INSTANCECODE. |
Parameters
...
...
...
...
...
instanceCode
...
Response Codes
...
...
...
Example
If we had a test instance in our database with an Id of 11101 and had the following attributes
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{
"isActive": true,
"properties": [
{
"propertyName": "FDJM_JMETER_HOME_DIR",
"propertyValue": "Home Directory Patch 1"
},
{
"propertyName": "FDJM_JMETER_PROPERTIES_FILE",
"propertyValue": "Properties Patch 1"
}
],
"description": "This is Test Instance 1",
"instanceName": "Test Instance 1",
"instanceCode": "TESTINST1",
"instanceId": 11101,
"environments": [],
"testingToolId": 10001
}
} |
When we run a GET request at the following URL
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance?code=TESTINST1&name=Test%20Instance%201
The GET request would return the following JSON test instance object
? Append the following character sequences to the above URL to specify Query parameters.Use '&' between successive query parameters:instanceCode={code} instanceName={name} testingTool={tool} Examples:To search by code only: http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance?instanceCode={code} To search by name only: http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance?instanceName={name} To search by tool and name: http://host:port/flexdeploy/rest/topology/testinstance?testingTool={tool}&instanceName={name} |
Tip |
---|
The query parameters are not case sensitive. Searching by instanceCode=instanceCode is the same as searching by instanceCode=INSTANCECODE. |
Request
Parameter | Required | Type | Description |
---|---|---|---|
instanceCode | No | URL(query) | Instance code, equals ignore case |
instanceName | No | URL(query) | Instance Name, contains ignore case |
testingTool | No | URL(query | Testing tool name, equals ignore case |
Include Page | ||||
---|---|---|---|---|
|
Response Codes
HTTP Code | Description |
---|---|
200 | Test Instances were found and returned |
400 | Bad request |
401 | Unauthorized |
500 | Unexpected internal server error |
Example
If we had a test instance in our database with an Id of 11101 and had the following attributes
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
{ "isActive": true, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory Patch 1" }, { "propertyName": "FDJM_JMETER_PROPERTIES_FILE", "propertyValue": "Properties Patch 1" } ], "description": "This is Test Instance 1", "instanceName": "Test Instance 1", "instanceCode": "TESTINST1", "instanceId": 11101, "environments": [], "testingToolId": 10001 } } |
POST
This POST service will create a new test instance with the same attributes as the given JSON object.
...
When we run a GET request at the following URL
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance?code=TESTINST1&name=Test%20Instance%201
The GET request would return the following JSON test instance object
Code Block | |||||
---|---|---|---|---|---|
|
...
| |
{
|
...
...
|
...
"isActive": true,
|
...
"properties": [ |
...
{ "propertyName": "FDJM_JMETER_HOME_DIR", |
...
...
|
...
|
...
|
...
"propertyValue": "Home Directory 1" |
...
|
...
|
...
|
...
|
...
},
|
...
{ |
...
...
|
...
|
...
|
...
"propertyName": "FDJM_JMETER_PROPERTIES_FILE", |
...
...
|
...
|
...
|
...
"propertyValue": "Properties |
...
1"
|
...
...
|
...
|
...
|
...
}
|
...
...
|
...
],
|
...
...
"description": "This is |
...
Test Instance 1", "instanceName": "Test Instance 1", |
...
|
...
|
...
" |
...
instanceCode": |
...
"TESTINST1", |
...
|
...
|
...
" |
...
instanceId": |
...
11101, |
...
...
|
...
" |
...
environments": |
...
[], |
...
...
|
...
" |
...
testingToolId": |
...
10001
}
} |
POST
This POST service will create a new test instance with the same attributes as the given JSON object.
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance |
Request
Parameters | Required | Type | Description |
---|---|---|---|
isActive | Yes | Boolean | This is the isActive Boolean which will be given to the created test instance |
description | No | String | This is the description which will be given to the created test instance |
environments | No | List<Long> | This is list of environment Ids which will be given to the created test instance |
instanceCode | Yes | String | This is the code which will be given to the created test instance |
testingToolId | Yes | Long | This is the Id for the testing tool that will be given to the created test instance |
instanceName | Yes | String | This is the name which will be given to the created test instance |
properties | Yes/No |
List<PropertyValue> | This is a list of the Properties associated with the test instance. |
Include Page | ||||
---|---|---|---|---|
|
Response Codes
HTTP Code | Description |
---|---|
201 | Instance was created successfully |
400 | Bad request |
401 | Unauthorized |
404 | Instance not found |
500 | Unexpected internal server error |
Example
If the POST request receives the following JSON test instance object,
Code Block | ||||
---|---|---|---|---|
| ||||
{
"isActive": true,
"properties": [
{
"propertyName": "FDJM_JMETER_HOME_DIR",
"propertyValue": "Home Directory 1"
},
{
"propertyName": "FDJM_JMETER_PROPERTIES_FILE",
"propertyValue": "Properties File 1"
}
],
"description": "This is J Meter Post 1",
"environments": [],
"testingToolId": 10001,
"instanceId": 21807,
"instanceCode": "JMETERPOST1",
"instanceName": "J Meter Post 1"
} |
The following test instance object will then be created as a new row in the database.
Code Block | ||||
---|---|---|---|---|
| ||||
{ "isActive": true, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory 1" }, { "propertyName": "FDJM_JMETER_PROPERTIES_FILE", "propertyValue": "Properties File 1" } ], "description": "This is J Meter Post 1", "environments": [], "testingToolId": 10001, "instanceId": 11101, "instanceCode": "JMETERPOST1", "instanceName": "J Meter Post 1" } |
...
Info | ||
---|---|---|
| ||
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance/{Id} |
Code Block | ||||
---|---|---|---|---|
| ||||
{ "isActive": true, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory Put 1" }, { "propertyName": "FDJM_JMETER_PROPERTIES_FILE", "propertyValue": "Properties File Put 1" } ], "description": "This is J Meter Put 1", "environments": [], "testingToolId": 10001, "instanceId": 11101, "instanceCode": "JMETERPUT1", "instanceName": "J Meter Put 1" } |
Parameters
Parameters | Required | Type | Description |
---|---|---|---|
Id | Yes | URL | This is a URL parameter for the Id which is used to find and return an test instance with. |
description | No | String | This is the description that the test instance's description will be updated to. |
environments | No | List<Long> | This is the list of Environment Ids that will be assigned to the test instance that is being updated. |
isActive | Yes | Boolean | This is the isActive Boolean that the test instance's isActive Boolean will be updated to. |
instanceCode | Yes | String | This is the code that the test instance's code will be updated to. |
testingToolId | Yes | Long | This is the testingToolId that the test instance already has. If this Id is different than what the current testingToolId of the test instance an exception will be thrown. |
instanceId | No | Long | This is the Id place holder. This Id will not be updated in the test instance. |
properties | Yes/No | List<PropertyPojo> | This is the list of Properties that will be updated in the test instance. The JSON object must have all of the properties of the test instance's testing tool. |
instanceName | Yes | String | This is the name that the test instance's name will be updated to. |
...
PATCH
This PATCH service will update an existing test instance with the information passed through a JSON object. If an attribute of the JSON is null it will not be updated in the test instance.
Info | ||
---|---|---|
| ||
By having an environment in the JSON request the environment will be added and no environments will be unassigned. |
...
Code Block | ||||
---|---|---|---|---|
| ||||
{ "isActive": null, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory Put 1" }, ], "description": "This is J Meter Put 1", "environments": null, "testingToolId": 10001, "instanceId": 21807, "instanceCode": "JMETERPUT1", "instanceName": null } |
Parameters
Parameters | Required | Type | Description |
---|---|---|---|
Id | Yes | URL | This is a URL parameter for the Id which is used to find and return an test instance with. |
description | No | String | This is the description that the test instance's description will be updated to. |
environments | No | List<Long> | This is the list of Environment Ids that will be assigned to the test instance that is being updated. |
isActive | No | Boolean | This is the isActive boolean that the test instance's isActive boolean will be updated to. |
instanceCode | No | String | This is the code that the test instance's code will be update to. |
testingToolId | No | Long | This is the testingToolId that the test instance already has. If this Id is different than what the current testingToolId of the test instance an exception will be thrown. |
instanceId | No | Long | This is the Id place holder. It will not change the test instance's Id that is being updated. |
properties | No | List<PropertyPojo> | This is the list of Properties that will be updated in the test instance. The JSON object doesn't need to have all of the properties of the test instance's testing tool. |
instanceName | No | String | This is the name that the test instance's name will be updated to. |
Response Codes
HTTP Code | Description |
---|---|
200 | Test Instance was found and patched |
400 | Bad request |
401 | Unauthorized |
404 | Test Instance not found |
500 | Unexpected internal server error |
Example
If we had an test instance in our database with an Id of 11101 and had the following attributes
Code Block | ||||
---|---|---|---|---|
| ||||
{ "isActive": true, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory Put 1" }, { "propertyName": "FDJM_JMETER_PROPERTIES_FILE", "propertyValue": "Properties File Put 1" } ], "description": "This is J Meter Put 1", "environments": [], "testingToolId": 10001, "instanceId": 21807, "instanceCode": "JMETERPUT1", "instanceName": "J Meter Put 1" } |
When we run a PATCH request at the following URL
http://host:port/flexdeploy/rest/v1/topology/integrations/testinstance/11101
And the PATCH request receives the following JSON test instance object,
Code Block | ||||
---|---|---|---|---|
| ||||
{ "isActive": null, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory Patch 1" }, ], "description": "This is J Meter Patch 1", "environments": null, "testingToolId": 10001, "instanceId": 21807, "instanceCode": "JMETERPATCH1", "instanceName": null } |
The PUT request would then update the test instance with Id 11101 and return the following JSON test instance object
Code Block | ||||
---|---|---|---|---|
| ||||
{ "isActive": true, "properties": [ { "propertyName": "FDJM_JMETER_HOME_DIR", "propertyValue": "Home Directory Patch 1" }, { "propertyName": "FDJM_JMETER_PROPERTIES_FILE", "propertyValue": "Properties File Put 1" } ], "description": "This is J Meter Patch 1", "environments": [], "testingToolId": 10001, "instanceId": 21807, "instanceCode": "JMETERPATCH1", "instanceName": "J Meter Put 1" } |
...