Testfall-Verwaltung
Auf dieser Seite wird beschrieben, wie Sie Tests mit der Codebeamer Swagger API verwalten können.
Dieser Abschnitt setzt voraus, dass Sie die Projektstruktur bereits kennen und mit den grundlegenden Tracker-Eintragsoperationen vertraut sind.
Testfall-Tracker abrufen
Die folgenden Endpunkte rufen die Testfall-Tracker-Informationen ab. Der Testfall-Tracker ist ein spezifischer Tracker vom Typ Testcase. Er verfügt über die gleichen Konfigurationsoptionen wie andere Tracker, mit Ausnahme einiger spezifischer Felder, die unten beschrieben werden.
URL
GET /v3/trackers/{trackerId}
Beispiel für Antworttext
{
"id": 2323,
"name": "Test Cases",
"description": "Test Cases",
"descriptionFormat": "Wiki",
"keyName": "TESTCASE",
"version": 1,
"createdAt": "2020-11-23T10:40:19.562",
"createdBy": {
"id": 1,
"name": "bond",
"type": "UserReference"
},
"type": {
"id": 102,
"name": "Testcase",
"type": "TrackerTypeReference"
},
"deleted": false,
"hidden": false,
"usingWorkflow": true,
"onlyWorkflowCanCreateNewReferringItem": false,
"usingQuickTransitions": false,
"defaultShowAncestorItems": false,
"defaultShowDescendantItems": false,
"project": {
"id": 4,
"name": "Intland Software's Scrum Template",
"type": "ProjectReference"
},
"availableAsTemplate": false
}
Testfallspezifische Felder
Es gibt bestimmte Felder in einem Tracker vom Typ "Testfall", deren Konfiguration auch von den Projektadministratoren nicht geändert werden kann.
Vorarbeiten
Dieses Feld gibt an, dass die Aktion vor der Testausführung ausgeführt werden muss. Es ist ein einfaches Wiki-Textfeld, das Bilder, Links und spezielle Textformatierungen enthält.
URL
GET /v3/trackers/{trackerId}/fields/10000
Beispiel für Antworttext
{
"id": 10000,
"name": "Pre-Action",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "preAction"
}
Nacharbeiten
Dieses Feld gibt an, dass die Aktion nach der Testausführung ausgeführt werden muss. Es ist ein einfaches Wiki-Textfeld, das Bilder, Links und spezielle Textformatierung enthalten kann.
URL
GET /v3/trackers/{trackerId}/fields/10001
Beispiel für Antworttext
{
"id": 10000,
"name": "Post-Action",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "postAction"
},
Testparameter
Ein Testfall kann parametrisiert werden, um denselben Testfall mit einer anderen Eingabe auszuführen. Hierfür gibt es ein spezielles Format, das hier beschrieben wird: Testparametrisierung.
URL
GET /v3/trackers/{trackerId}/fields/10002
Beispiel für Antworttext
{
"id": 10002,
"name": "Test Parameters",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "testParameters"
},
Wiederverwendbar
Dieses Feld gibt an, ob der Testfall von anderen Testfällen wiederverwendet werden kann. Eine detaillierte Beschreibung hierzu finden Sie unter Referenz-Testfälle und Testschritt-Wiederverwendung.
URL
GET /v3/trackers/{trackerId}/fields/10003
Beispiel für Antworttext
{
"id": 10003,
"name": "Reusable",
"type": "BoolField",
"hidden": false,
"valueModel": "BoolFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "In Design",
"type": "ChoiceOptionReference"
},
{
"id": 3,
"name": "Awaiting approval",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Accepted",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Outdated",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "reusable"
}
Geschätzte Laufzeit
Dieses Feld ist ein einfaches Dauerfeld, das die geschätzte Zeit für die Testausführung enthalten kann.
URL
GET /v3/trackers/{trackerId}/fields/10004
Beispiel für Antworttext
{
"id": 10004,
"name": "Estimated Run Time",
"type": "DurationField",
"hidden": false,
"valueModel": "DurationFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "estimatedRunTime"
}
Testschritte
In diesem Tabellenfeld wird beschrieben, welche Tests während des Testlaufs ausgeführt werden müssen. Dies ist der wichtigste Teil des Testfalls.
Das Feld "Testschritte" hat drei sichtbare Spalten: "Aktion", "Erwartetes Ergebnis" und "Kritisch".
In der Swagger-API kann eine zusätzliche Spalte angezeigt werden: "ID". Dieser Wert kann verwendet werden, wenn Sie den Testschritt in anderen Testfällen referenzieren möchten.
URL
GET /v3/trackers/{trackerId}/fields/100000
Beispiel für Antworttext
{
"id": 1000000,
"name": "Test Steps",
"type": "TableField",
"hidden": false,
"valueModel": "TableFieldValue",
"mandatoryInStatuses": [],
"columns": [
{
"id": 1000001,
"name": "Action",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "In Design",
"type": "ChoiceOptionReference"
},
{
"id": 3,
"name": "Awaiting approval",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Accepted",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Outdated",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "action"
},
{
"id": 1000002,
"name": "Expected result",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "expectedResult"
},
{
"id": 1000003,
"name": "Critical",
"type": "BoolField",
"hidden": false,
"valueModel": "BoolFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "critical"
},
{
"id": 1000004,
"name": "Id",
"type": "WikiTextField",
"hidden": true,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "id"
}
],
"legacyRestName": "testSteps"
}
Testfall-Informationen abrufen
Testfälle sind einfache Tracker-Einträge. Rufen Sie die gespeicherten Informationen mithilfe des folgenden Endpunkts ab.
Neben den üblichen Tracker-Eintragswerten können Sie die spezifischen Testfall-Feldwerte abrufen, sofern sie festgelegt sind.
URL
GET /v3/items/{testCaseId}
Beispiel für Antworttext
{
"id": 1133,
"name": "Simple Test case",
"description": "Simple Test case description",
...
"customFields": [
{
"fieldId": 10000,
"name": "Pre-Action",
"value": "Pre-action",
"type": "WikiTextFieldValue"
},
{
"fieldId": 10001,
"name": "Post-Action",
"value": "Post-action",
"type": "WikiTextFieldValue"
},
{
"fieldId": 10003,
"name": "Reusable",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 1000000,
"name": "Test Steps",
"values": [
[
{
"fieldId": 1000001,
"name": "Action",
"value": "Action 1",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000002,
"name": "Expected result",
"value": "Result 1",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000003,
"name": "Critical",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 1000004,
"name": "Id",
"value": "6cb707334c5297652fbe1a700cb4cb32",
"type": "WikiTextFieldValue"
}
],
[
{
"fieldId": 1000001,
"name": "Action",
"value": "Action 2",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000002,
"name": "Expected result",
"value": "Result 2",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000003,
"name": "Critical",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 1000004,
"name": "Id",
"value": "d544c916b3b22cbef43a0aadf48cc6fd",
"type": "WikiTextFieldValue"
}
]
],
"type": "TableFieldValue"
}
],
...
}
Testfälle erstellen
Sie müssen die Pflichtfelder im Tracker definieren, um einen Tracker-Eintrag zu erstellen.
Der folgende Endpunkt gibt alle Felddefinitionen zurück. Die Pflichtfelder sind wie unter Projektstruktur ermitteln beschrieben definiert.
URL
GET /v3/trackers/{trackerId}/schema
Pflichtfelder in einem Agile Scrum-Vorlagenprojekt
Priorität
Beispiel für Anfragetext
{
"id": 2,
"name": "Priority",
"type": "OptionChoiceField",
"hidden": false,
"valueModel": "ChoiceFieldValue<ChoiceOptionReference>",
"title": "P",
"mandatoryInStatuses": [],
"multipleValues": false,
"options": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "Highest",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "High",
"type": "ChoiceOptionReference"
},
{
"id": 3,
"name": "Normal",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Low",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "Lowest",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "priority",
"trackerItemField": "priority",
"referenceType": "ChoiceOptionReference"
},
Dies ist ein integriertes Feld, und Sie können den Wert direkt festlegen.
Beispiel für Anfragetext
{
"priority": {
"id": 3,
"name": "Normal",
"type": "ChoiceOptionReference"
},
}
Name
Beispiel für Anfragetext
{
"id": 3,
"name": "Name",
"type": "TextField",
"hidden": false,
"valueModel": "TextFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "In Design",
"type": "ChoiceOptionReference"
},
{
"id": 3,
"name": "Awaiting approval",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Accepted",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Outdated",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "name",
"trackerItemField": "name"
},
Dies ist ein integriertes Feld, und Sie können den Wert direkt festlegen.
Beispiel für Anfragetext
{
"name": "Simple Test case",
"priority": {
"id": 3,
"name": "Normal",
"type": "ChoiceOptionReference"
},
}
Status
Beispiel für Anfragetext
{
"id": 7,
"name": "Status",
"type": "OptionChoiceField",
"hidden": false,
"valueModel": "ChoiceFieldValue<ChoiceOptionReference>",
"mandatoryInStatuses": [],
"multipleValues": false,
"options": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "In Design",
"type": "ChoiceOptionReference"
},
{
"id": 3,
"name": "Awaiting approval",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Accepted",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Outdated",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "status",
"trackerItemField": "status",
"referenceType": "ChoiceOptionReference"
},
Dies ist ein besonderes Feld, das viele andere Funktionen wie Übergänge oder Berechtigungen steuert.
Existiert nur ein Übergang vom leeren Status, verwendet Codebeamer unabhängig von diesem Feld automatisch den Zielstatus.
Verwenden Sie das folgende Beispiel, um das Feld explizit festzulegen.
Beispiel für Anfragetext
{
"name": "Simple Test case",
"priority": {
"id": 3,
"name": "Normal",
"type": "ChoiceOptionReference"
},
"status": {
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
"customFields": [
{
"fieldId": 10003,
"name": "Reusable",
"value": false,
"type": "BoolFieldValue"
}
]
}
Wiederverwendbar
Beispiel für Anfragetext
{
"id": 10003,
"name": "Reusable",
"type": "BoolField",
"hidden": false,
"valueModel": "BoolFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "In Design",
"type": "ChoiceOptionReference"
},
{
"id": 3,
"name": "Awaiting approval",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Accepted",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Outdated",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "reusable"
},
Es handelt sich um ein benutzerdefiniertes Feld für diesen spezifischen Tracker, und Sie müssen die Eigenschaft customFields verwenden.
Beispiel für Anfragetext
{
"name": "Simple Test case",
"priority": {
"id": 3,
"name": "Normal",
"type": "ChoiceOptionReference"
},
"status": {
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
"customFields": [
{
"fieldId": 10003,
"name": "Reusable",
"value": false,
"type": "BoolFieldValue"
}
]
}
Erstellungsanfrage senden
Verwenden Sie den folgenden Endpunkt, um die Erstellungsanfrage zu senden.
URL
POST /v3/trackers/{trackerId}/items
Beispiel für Anfragetext
{
"name": "Simple Test case",
"priority": {
"id": 3,
"name": "Normal",
"type": "ChoiceOptionReference"
},
"status": {
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
"customFields": [
{
"fieldId": 10003,
"name": "Reusable",
"value": false,
"type": "BoolFieldValue"
}
]
}
Testschritte für einen Testfall festlegen
Beispiel für Anfragetext
Fügen Sie die Felddefinition für Testschritte wie folgt hinzu:
{
"id": 1000000,
"name": "Test Steps",
"type": "TableField",
"hidden": false,
"valueModel": "TableFieldValue",
"mandatoryInStatuses": [],
"columns": [
{
"id": 1000001,
"name": "Action",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "In Design",
"type": "ChoiceOptionReference"
},
{
"id": 3,
"name": "Awaiting approval",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Accepted",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Outdated",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "action"
},
{
"id": 1000002,
"name": "Expected result",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "expectedResult"
},
{
"id": 1000003,
"name": "Critical",
"type": "BoolField",
"hidden": false,
"valueModel": "BoolFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "critical"
},
{
"id": 1000004,
"name": "Id",
"type": "WikiTextField",
"hidden": true,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "id"
}
],
"legacyRestName": "testSteps"
}
Dies ist ein spezifisches Tabellenfeld, das Sie wie folgt als customField festlegen müssen:
{
"name": "Simple Test case",
"priority": {
"id": 3,
"name": "Normal",
"type": "ChoiceOptionReference"
},
"status": {
"id": 1,
"name": "New",
"type": "ChoiceOptionReference"
},
"customFields": [
{
"fieldId": 10003,
"name": "Reusable",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 1000000,
"name": "Test Steps",
"values": [
[
{
"fieldId": 1000001,
"name": "Action",
"value": "Action 1",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000002,
"name": "Expected result",
"value": "Result 1",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000003,
"name": "Critical",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 1000004,
"name": "Id",
"value": "6cb707334c5297652fbe1a700cb4cb32",
"type": "WikiTextFieldValue"
}
],
[
{
"fieldId": 1000001,
"name": "Action",
"value": "Action 2",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000002,
"name": "Expected result",
"value": "Result 2",
"type": "WikiTextFieldValue"
},
{
"fieldId": 1000003,
"name": "Critical",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 1000004,
"name": "Id",
"value": "d544c916b3b22cbef43a0aadf48cc6fd",
"type": "WikiTextFieldValue"
}
]
],
"type": "TableFieldValue"
}
]
}
Referenzierte Testschritte für einen Testfall festlegen
Wenn die Testschritte referenziert werden müssen, anstatt aus einem anderen Testfall kopiert zu werden, verwenden Sie wie folgt ein ReferredTestStepFieldValue-Modell in der Erstellungsanfrage.
Beispiel für Anfragetext
{
"fieldId": 1000004,
"name": "Id",
"referredStepId": "6cb707334c5297652fbe1a700cb4cb32",
"referredTestCaseId": 628791,
"type": "ReferredTestStepFieldValue"
}
Die drei Haupteigenschaften lauten:
Verwenden Sie die fieldId des Felds ID in der Tabelle Test Steps. In der Standardkonfiguration ist dies 100004.
referredTestCaseId stellt die ID des Quell-Testfallelements bereit.
referredStepId muss den Wert im Feld "ID" in der referenzierten Testschrittzeile im Quell-Testfall enthalten.
Geben Sie nur diesen Wert in einer Testschrittzeile an.
* 
Geben Sie nicht die Eigenschaft value an. Da wir einen neuen Testschritt benötigen, wird die ID für den Referenzschritt generiert.
In diesem Beispiel werden die beiden Testschritte aus dem Element wiederverwendet, das im vorherigen Abschnitt (Testschritte für einen Testfall festlegen) erstellt wurde:
{
"name": "Referenced test steps",
"description": "",
"customFields": [
{
"fieldId": 1000000,
"name": "Test Steps",
"values": [
[
{
"fieldId": 1000004,
"name": "Id",
"referredStepId": "6cb707334c5297652fbe1a700cb4cb32",
"referredTestCaseId": 628791,
"type": "ReferredTestStepFieldValue"
}
],
[
{
"fieldId": 1000004,
"name": "Id",
"referredStepId": "d544c916b3b22cbef43a0aadf48cc6fd",
"referredTestCaseId": 628791,
"type": "ReferredTestStepFieldValue"
}
]
],
"type": "TableFieldValue"
}
]
}
Testlauf-Tracker
Der Testfall-Tracker ist ein spezifischer Tracker vom Typ Testcase. Er verfügt über die gleichen Konfigurationsoptionen wie andere Tracker, mit Ausnahme einiger spezifischer Felder, die unten beschrieben werden.
URL
GET /v3/trackers/{trackerId}
Beispiel für Anfragetext
{
"id": 2368,
"name": "Test Runs",
"description": "Test Run",
"descriptionFormat": "Wiki",
"keyName": "TESTRUN",
"version": 1,
"createdAt": "2020-11-23T10:40:19.562",
"createdBy": {
"id": 1,
"name": "bond",
"type": "UserReference"
},
"type": {
"id": 9,
"name": "Testrun",
"type": "TrackerTypeReference"
},
"deleted": false,
"hidden": false,
"usingWorkflow": true,
"onlyWorkflowCanCreateNewReferringItem": false,
"usingQuickTransitions": false,
"defaultShowAncestorItems": false,
"defaultShowDescendantItems": false,
"project": {
"id": 4,
"name": "Intland Software's Scrum Template",
"type": "ProjectReference"
},
"availableAsTemplate": false
}
Testlaufspezifische Felder
Es gibt bestimmte Felder in einem Tracker vom Typ Testcase, deren Konfiguration auch von den Projektadministratoren nicht geändert werden kann.
Testschritt-Ergebnisse
Dies ist der wichtigste Teil des Testlaufs. Dieses Tabellenfeld enthält die Testschritt-Ergebnisse während der Ausführung des Tests.
Das Feld "Ergebnisse" des Testschritts hat fünf Spalten: "Aktion", "Erwartetes Ergebnis", "Kritisch", "Tatsächliches Ergebnis", "Ergebnis".
URL
GET /v3/trackers/{trackerId}/fields/200000
Beispiel für Anfragetext
{
"id": 2000000,
"name": "Test Step Results",
"type": "TableField",
"hidden": false,
"valueModel": "TableFieldValue",
"mandatoryInStatuses": [],
"columns": [
{
"id": 2000001,
"name": "Action",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "In progress",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "Suspended",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Finished",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "To be approved",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Ready for execution",
"type": "ChoiceOptionReference"
},
{
"id": 7,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 8,
"name": "Closed",
"type": "ChoiceOptionReference"
}
],
"legacyRestName": "action"
},
{
"id": 2000002,
"name": "Expected result",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "expectedResult"
},
{
"id": 2000003,
"name": "Critical",
"type": "BoolField",
"hidden": false,
"valueModel": "BoolFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "critical"
},
{
"id": 2000004,
"name": "Actual result",
"type": "WikiTextField",
"hidden": false,
"valueModel": "WikiTextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "actualResult"
},
{
"id": 2000005,
"name": "Result",
"type": "TextField",
"hidden": false,
"valueModel": "TextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "result"
}
],
"legacyRestName": "testStepResults"
}
Testfälle
Diese Tabellenspalte enthält die entsprechenden Testfälle.
Es gibt fünf Spalten: "Testfall", "Aktiv", "Abbruch bei Fehler", "Ergebnis".
URL
GET /v3/trackers/{trackerId}/fields/100000
Beispiel für Anfragetext
{
"id": 1000000,
"name": "Test Cases",
"type": "TableField",
"hidden": false,
"valueModel": "TableFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "In progress",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "Suspended",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Finished",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "To be approved",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Ready for execution",
"type": "ChoiceOptionReference"
},
{
"id": 7,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 8,
"name": "Closed",
"type": "ChoiceOptionReference"
}
],
"columns": [
{
"id": 1000001,
"name": "Test Case",
"type": "TrackerItemChoiceField",
"hidden": false,
"valueModel": "ChoiceFieldValue",
"mandatoryInStatuses": [
{
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
{
"id": 1,
"name": "In progress",
"type": "ChoiceOptionReference"
},
{
"id": 2,
"name": "Suspended",
"type": "ChoiceOptionReference"
},
{
"id": 4,
"name": "Finished",
"type": "ChoiceOptionReference"
},
{
"id": 5,
"name": "To be approved",
"type": "ChoiceOptionReference"
},
{
"id": 6,
"name": "Ready for execution",
"type": "ChoiceOptionReference"
},
{
"id": 7,
"name": "Rejected",
"type": "ChoiceOptionReference"
},
{
"id": 8,
"name": "Closed",
"type": "ChoiceOptionReference"
}
],
"multipleValues": false,
"legacyRestName": "testCase",
"referenceType": "TrackerItemReference"
},
{
"id": 1000002,
"name": "Active",
"type": "BoolField",
"hidden": false,
"valueModel": "BoolFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "active"
},
{
"id": 1000003,
"name": "Stop on Failure",
"type": "BoolField",
"hidden": false,
"valueModel": "BoolFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "stopOnFailure"
},
{
"id": 1000004,
"name": "Result",
"type": "TextField",
"hidden": false,
"valueModel": "TextFieldValue",
"mandatoryInStatuses": [],
"legacyRestName": "result"
}
],
"legacyRestName": "testCases"
},
Testlauf-Informationen
Beispiel für Antworttext
{
"id": 1137,
"name": "Quick Test Run for Simple Test case at Dec 15 2020",
"description": "",
"descriptionFormat": "Wiki",
"createdAt": "2020-12-15T14:14:33.566",
"createdBy": {
"id": 1,
"name": "bond",
"type": "UserReference"
},
"modifiedAt": "2020-12-15T14:14:33.566",
"modifiedBy": {
"id": 1,
"name": "bond",
"type": "UserReference"
},
"version": 1,
"assignedTo": [],
"tracker": {
"id": 2368,
"name": "Test Runs",
"type": "TrackerReference"
},
"children": [
{
"id": 1138,
"name": "Run of Simple Test case",
"type": "TrackerItemReference"
}
],
"customFields": [
{
"fieldId": 10000,
"name": "Sequential",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 10002,
"name": "Run only Accepted TestCases",
"value": false,
"type": "BoolFieldValue"
},
{
"fieldId": 1000000,
"name": "Test Cases",
"values": [
[
{
"fieldId": 1000001,
"name": "Test Case",
"values": [
{
"id": 1136,
"name": "Simple Test case",
"type": "TrackerItemReference"
}
],
"type": "ChoiceFieldValue"
}
]
],
"type": "TableFieldValue"
}
],
"priority": {
"id": 0,
"name": "Unset",
"type": "ChoiceOptionReference"
},
"status": {
"id": 6,
"name": "Ready for execution",
"type": "ChoiceOptionReference"
},
"platforms": [],
"subjects": [],
"resolutions": [],
"severities": [],
"formality": {
"id": 1,
"name": "Regular",
"type": "ChoiceOptionReference"
},
"versions": [
{
"id": 1002,
"name": "Sprint 1.2",
"type": "TrackerItemReference"
}
],
"ordinal": 0,
"typeName": "Testrun",
"comments": []
}
Testläufe erstellen
Proprietären Endpunkt verwenden
Die Hierarchie der Testlauf-Elemente ist eine komplexe Hierarchie. Die Methode akzeptiert eine Liste von Testsätzen oder Testfällen und erstellt einen Testlauf, der alle Testfälle als Kinder enthält. Verwenden Sie den folgenden Endpunkt:
URL
POST /v3/trackers/{testRunTrackerId}/testruns
Beispiel für Anfragetext
{
"testCaseIds": [
{
"id": 1136,
"name": "Simple Test case",
"type": "TrackerItemReference"
},
{
"id": 1139,
"name": "Simple Test case 2",
"type": "TrackerItemReference"
}
]
}
Ergebnis
Tracker-Eintrags-API verwenden
Wir haben alle Informationen, um einen neuen Testlauf-Tracker-Eintrag zu erstellen. In diesem Fall müssen wir jedoch die Kind-Struktur erstellen.
Jeder Testfall muss einen ordnungsgemäß konfigurierten Kind-Testlauf aufweisen.
Testlauf-Ergebnisse festlegen
Nachdem ein automatisierter Test ausgeführt wurde, können Sie die Ergebnisse der Läufe mit dem folgenden Endpunkt festlegen.
URL
PUT /v3/testruns/{testRunId}
Beispiel für Anfragetext
{
"updateRequestModels": [
{
"testCaseReference": {
"id": 1136,
"name": "Simple Test case",
"type": "TrackerItemReference"
},
"result": "PASSED",
"conclusion": "Successful run",
"runTime": 10
},
{
"testCaseReference": {
"id": 1139,
"name": "Simple Test case 2",
"type": "TrackerItemReference"
},
"result": "FAILED",
"conclusion": "Failed run",
"runTime": 20
}
],
"parentResultPropagation": true
}
Ergebnis
War dies hilfreich?