Bỏ qua để đến nội dung

Kiểm thử một API REST trong 5 phút

Mục tiêu: đi từ một đặc tả OpenAPI tới một bài kiểm thử tự động xác minh trọn một hành trình.

Tệp ▸ Nhập (Ctrl+I), rồi nhập URL của tệp openapi.json của bạn.

Restorm dựng nên toàn bộ cây: một thư mục cho mỗi nhãn, một yêu cầu cho mỗi thao tác, các tham số có kiểu, phần tài liệu, và các header xác thực đã được đấu nối sẵn cùng với biến của chúng.

Cây do lần nhập OpenAPI tạo ra, sẵn sàng để dùng: một thư mục cho mỗi nhãn (pet, store, user) và một yêu cầu được điền sẵn cho mỗi thao tác, bên cạnh tab con trang chủ của thư mục biến

Nếu API của bạn không có đặc tả, hãy dán một lệnh curl vào — xem Nhập lệnh cURL.

Hãy mở thư mục biến do lần nhập tạo ra. URL cơ sở đã có sẵn ở đó; bạn chỉ cần điền nốt biến xác thực mà phần nhập đã chuẩn bị giúp bạn.

Hãy tạo một môi trường thứ hai nếu bạn kiểm thử nhiều đích — bộ chọn của smartbar sẽ chuyển cả thư mục cùng lúc.

3. Gửi lời gọi đầu tiên (30 giây)

Section titled “3. Gửi lời gọi đầu tiên (30 giây)”

Hãy mở một yêu cầu rồi nhấp Send. Phản hồi hiện ra: mã trạng thái, thời gian, header, thân trong một trình xem thu gọn được.

Nếu bạn quên điều gì đó, giá trị đã giải quyết hiển thị dưới ô URL sẽ cho bạn biết.

Nhấp chuột phải ▸ Thêm ▸ Kịch bản. Hành trình “tạo, đọc lại, xóa”:

Yêu cầu HTTP « POST /clients »
└─response──► Assert (eq, 201)
└─► Đặt biến « clientId » ◄── bộ chọn body.id
Yêu cầu HTTP « GET /clients/{id} »
└─response──► Assert (eq, 200)
└─► Schema validate (JSON Schema của khách hàng)
Yêu cầu HTTP « DELETE /clients/{id} »
└─response──► Assert (eq, 204)

Cả ba yêu cầu đều dùng {{clientId}} trong URL của chúng: biến của lần chạy được đặt ở bước đầu tiên sẽ được các bước sau đọc lại.

Hãy nối chúng lại bằng cách đấu cổng done của mỗi khẳng định vào cổng in của yêu cầu kế tiếp — đó là thứ bảo đảm thứ tự.

Hãy nhấp Chạy. Nhật ký được lấp đầy dần; hãy thêm một hành động Log sau mỗi bước để ghi vết những gì quan trọng.

Hãy đấu một hành động Throw vào đầu ra else của những khẳng định then chốt: đó là thứ sẽ làm job CI thất bại.

Terminal window
RESTORM_TOKEN=rstk_… restorm \
--open ./api.restorm \
--run "Parcours client" \
--headless \
--out run.log

Mã thoát 0 nếu mọi thứ đều qua, 1 nếu không. Xem Chạy headless và CI để có các ví dụ GitHub Actions và GitLab CI.