Μετάβαση στο περιεχόμενο

Δοκιμή ενός API REST σε 5 λεπτά

Στόχος: να ξεκινήσετε από μια προδιαγραφή OpenAPI και να φτάσετε σε μια αυτοματοποιημένη δοκιμή που ελέγχει μια πλήρη διαδρομή.

1. Εισαγάγετε την προδιαγραφή (30 δευτερόλεπτα)

Section titled “1. Εισαγάγετε την προδιαγραφή (30 δευτερόλεπτα)”

Αρχείο ▸ Εισαγωγή (Ctrl+I), και έπειτα η διεύθυνση URL του openapi.json σας.

Το Restorm κατασκευάζει το πλήρες δέντρο: έναν φάκελο ανά ετικέτα, ένα αίτημα ανά λειτουργία, τις παραμέτρους με τύπους, την τεκμηρίωση και τις προκαλωδιωμένες κεφαλίδες ταυτοποίησης με τις μεταβλητές τους.

Το δέντρο που παράγεται από την εισαγωγή OpenAPI, έτοιμο για χρήση: ένας φάκελος ανά ετικέτα (pet, store, user) και ένα προσυμπληρωμένο αίτημα ανά λειτουργία, δίπλα στην υποκαρτέλα υποδοχής του φακέλου μεταβλητών

Αν το API σας δεν έχει προδιαγραφή, επικολλήστε μια εντολή curl — δείτε Εισαγωγή εντολών cURL.

2. Συμπληρώστε το περιβάλλον (1 λεπτό)

Section titled “2. Συμπληρώστε το περιβάλλον (1 λεπτό)”

Ανοίξτε τον φάκελο μεταβλητών που δημιούργησε η εισαγωγή. Η βασική διεύθυνση URL βρίσκεται ήδη εκεί· συμπληρώστε τη μεταβλητή ταυτοποίησης που ετοίμασε για εσάς η εισαγωγή.

Δημιουργήστε ένα δεύτερο περιβάλλον αν δοκιμάζετε πολλούς στόχους — ο επιλογέας της smartbar μεταβάλλει ολόκληρο τον φάκελο με μία κίνηση.

3. Στείλτε μια πρώτη κλήση (30 δευτερόλεπτα)

Section titled “3. Στείλτε μια πρώτη κλήση (30 δευτερόλεπτα)”

Ανοίξτε ένα αίτημα, κάντε κλικ στο Send. Η απόκριση εμφανίζεται: κατάσταση, χρόνος, κεφαλίδες, σώμα μέσα σε έναν αναδιπλούμενο προβολέα.

Αν ξεχάσατε κάτι, σας το λέει η επιλυμένη τιμή που εμφανίζεται κάτω από το πεδίο URL.

4. Κατασκευάστε το σενάριο (2 λεπτά)

Section titled “4. Κατασκευάστε το σενάριο (2 λεπτά)”

Δεξί κλικ ▸ Προσθήκη ▸ Σενάριο. Η διαδρομή «δημιουργία, ανάγνωση, διαγραφή»:

Αίτημα HTTP «POST /clients»
└─response──► Assert (eq, 201)
└─► Ορισμός μεταβλητής «clientId» ◄── επιλογέας body.id
Αίτημα HTTP «GET /clients/{id}»
└─response──► Assert (eq, 200)
└─► Επικύρωση σχήματος (το JSON Schema του πελάτη)
Αίτημα HTTP «DELETE /clients/{id}»
└─response──► Assert (eq, 204)

Και τα τρία αιτήματα χρησιμοποιούν το {{clientId}} στη διεύθυνση URL τους: η μεταβλητή εκτέλεσης που τέθηκε στο πρώτο βήμα διαβάζεται από τα επόμενα.

Αλυσιδώστε τα καλωδιώνοντας τη θύρα done κάθε ισχυρισμού στη θύρα in του επόμενου αιτήματος — αυτό εξασφαλίζει τη σειρά.

5. Ελέγξτε (30 δευτερόλεπτα)

Section titled “5. Ελέγξτε (30 δευτερόλεπτα)”

Κάντε κλικ στην Αναπαραγωγή. Το αρχείο καταγραφής γεμίζει· προσθέστε μια ενέργεια Log μετά από κάθε βήμα για να ιχνηλατείτε ό,τι μετράει.

Συνδέστε μια ενέργεια Throw στην έξοδο else των κρίσιμων ισχυρισμών σας: αυτό είναι που θα κάνει την εργασία CI να αποτύχει.

6. Αυτοματοποιήστε το (30 δευτερόλεπτα)

Section titled “6. Αυτοματοποιήστε το (30 δευτερόλεπτα)”
Terminal window
RESTORM_TOKEN=rstk_… restorm \
--open ./api.restorm \
--run "Parcours client" \
--headless \
--out run.log

Κωδικός εξόδου 0 αν όλα περάσουν, 1 αλλιώς. Δείτε Εκτέλεση headless και CI για τα παραδείγματα GitHub Actions και GitLab CI.