ETSI's Bug Tracker - TTCN-3 Change Requests
View Issue Details

ID | Project | Category | View Status | Date Submitted | Last Update
0007981 | TTCN-3 Change Requests | New Feature | public | 09-09-2020 14:35 | 08-11-2023 13:48

Reporter | Martti Käärik |
Assigned To | Jens Grabowski |
Priority | high | Severity | major | Reproducibility | have not tried
Status | closed | Resolution | won't fix |
Platform |  | OS |  | OS Version |
Clause Reference(s) | NA
For STF discussion |
Source (company - Author) | STF576

Summary | 0007981: Support for REST APIs (HTTP)

Description

ETSI CTI and MTS have been jointly working on establishing unified methodology for specification and testing of REST APIs. The activities have been carried out by STF576 (https://portal.etsi.org/STF/STFs/STF-HomePages/STF576 [^]) and resulted in an initial version of a guide document: EG 203 647 (https://portal.etsi.org/webapp/WorkProgram/Report_WorkItem.asp?WKI_ID=56708 [^]).
STF576 has integrated several existing methodologies and languages developed within MTS in the guide, to the extent that those are suitable for REST APIs. This includes TTCN-3. However, to support standardized specification and testing process, TTCN-3 should provide means for describing REST API interface specific artifacts in test cases in tool agnostic manner.
Although there are several protocols that may be used for implementing REST APIs, the initial effort has implicitly focused on HTTP.

Steps To Reproduce |

Additional Information

STF576 has no intention to dictate the design of the new feature. However, example test suite is provided with this request to better explain the requirements for the feature.
To avoid confusion, please note that the example follows ES 203 119-6 (The Test Description Language (TDL); Part 6: Mapping to TTCN-3) with regard to implementation of test behavior.
The examples re available at https://forge.etsi.org/rep/mts/eg-203647-restful-api-guide/tree/master/TC/Manual [^]

Tags | No tags attached.
Relationships |
Attached Files |

Issue History
Date Modified | Username | Field | Change
09-09-2020 14:35 | Martti Käärik | New Issue |
05-10-2020 08:18 | Jens Grabowski | Assigned To | => KristÃ³f Szabados
05-10-2020 08:18 | Jens Grabowski | Status | new => assigned
07-10-2020 12:11 | KristÃ³f Szabados | Note Added: 0015773 |
08-10-2020 12:40 | KristÃ³f Szabados | Note Added: 0015779 |
11-12-2020 11:07 | Jens Grabowski | Assigned To | KristÃ³f Szabados => Jens Grabowski
07-12-2022 08:46 | Jens Grabowski | Note Added: 0016365 |
08-11-2023 13:47 | Jens Grabowski | Note Added: 0016554 |
08-11-2023 13:48 | Jens Grabowski | Note Added: 0016555 |
08-11-2023 13:48 | Jens Grabowski | Status | assigned => closed
08-11-2023 13:48 | Jens Grabowski | Resolution | open => won't fix

Notes

(0015773)
KristÃ³f Szabados
07-10-2020 12:11

I will try to contact Martti Käärik to better understand the request. At thid point it is not clear if we should provide a extension descriping how to work with HTTP (similar to the XML, JSON extensions), or we should provide some generic types and templates, or something else.

(0015779)
KristÃ³f Szabados
08-10-2020 12:40

Answer from Martti:
"
Yes, we are basically talking about a standardized mapping from TTCN-3 types/templates to HTTP requests/responses (as you describe). Including a way to specify message bodies with some other (standardized) encoding (such as JSON).
With HTTP (and JSON) mapping, pretty much all of the OpenAPI specification would be supported and no additional work would be required, in my opinion.
"
So the task at hand is to create a new extension to the core language, similar to ES 201 873-11 (Using JSON with TTCN-3) and ES 201 873-9 (Using XML schema with TTCN-3) for HTTP requests and responses.

(0016365)
Jens Grabowski
07-12-2022 08:46

TTF dicussion: Input from Nokia is possible. Without further input, the CR should be closed next year.

(0016554)
Jens Grabowski
08-11-2023 13:47

TTF discussion: No further input received. CR will be closed.

(0016555)
Jens Grabowski
08-11-2023 13:48

TTF discussion: No further input received. CR will be closed.