Updates the specified fields of automation in QAComplete.
Use this operation to update individual fields of the existing automation in a QAComplete test.
To add new automation, use the …/tests/{TestId}/automations/{Agent} (POST)
operation.
To update all the fields of automation, use the …/tests/{TestId}/automations/{Agent} (PUT)
operation.
Authentication
Basic authentication using a user’s login and password. See Authentication for details.
Security Rights
The authenticating user must belong to a security group that has the Update privilege for Test Library.
Request Format
To update the automation, send a PATCH request to the following URL:
URL parameters
ProjectId : integer, required
The ID of the project, to which the test belongs.
Id : integer, required
The ID of the test the needed automation belongs to.
Agent : string, required
The URL-encoded or the short name of the automation agent (test runner).
Currently, REST API supports the following agents:
Agent | URL-encoded Name | Short Name |
---|---|---|
TestComplete/TestExecute | TestComplete%2FTestExecute |
testcomplete |
JUnit (Selenium) | JUnit%20%28Selenium%29 |
junit |
NUnit (Selenium) | NUnit%20%28Selenium%29 |
nunit |
TestNG (Selenium) | TestNG%20%28Selenium%29 |
testng |
ReadyAPI / SoapUI OS | ReadyAPI+%2F+SoapUI+OS |
readyapi |
The agent names are case-insensitive.
Body parameters
In the request body, pass the RequestAutomationPatch
JSON object that specifies the automation’s fields to update:
"Title": "string",
"Timeout": "int",
"RunMode": "int",
"Params": {
"Item": {},
"Keys": {
"Count": "int",
"IsReadOnly": "boolean",
}
"Values": "ICollection`1"
}
}
Some string property values (for example, Status
) are based on the choice lists defined in your QAComplete project. You can find these values in the Test Management > Test Library > Tools > Manage Choice Lists panel in QAComplete.
The property values you do not specify remain unchanged.
Title : string
The title of the automation.
Timeout : integer
The test timeout in seconds.
RunMode : integer
Indicates whether to run test in a temporary folder or in-place (if possible).
Params : array of objects
An array of RequestAutomationPatch
objects that describe the automation parameters.
A sample request:
PATCH http://yourserver.com/rest-api/service/api/v2/projects/11873/tests/2696/nunit HTTP/1.1
Host: yourserver.com
Connection: keep-alive
Content-Type: application/json
Accept: application/json
Authorization: Basic am9obkBleGFtcGxlLmNvbTpwQHNzd29yZA==
Content-Length: 54
{
"title": "TheAutomatedTestTitle",
"timeout": 120
}
A sample request made by using cURL:
curl -u [email protected]:p@ssword -d {"title": "TheAutomatedTestTitle", "timeout": 120} -H "Content-Type: application/json" -H "Accept: application/json" http://yourserver.com/service/api/v2/projects/11873/tests/2696/nunit
Response Format
If successful, the operation responds with HTTP status code 200 and returns a JSON object with the updated automation information.
A sample response:
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: 104
{
"agent": "NUnit (Selenium)",
"title": "TheAutomatedTestTitle",
"timeout": 120,
"run_mode": 0,
"params": { }
}
The agent (test runner) to run the test with.
The title of automation.
The test timeout in seconds.
Indicates whether to run a test in a temporary folder or in-place (if possible).
The test parameters.
Error responses
If the operation fails, it returns the appropriate status code and (optionally) the error description in the response body.
If the project with the specified ProjectId does not exist or the authenticating user does not have rights to access the project, the operation returns the Access is denied
error.
If the test with the specified Id does not exist, the operation returns the File or directory not found
error.