Kiểm thử giao diện lập trình

Postman

Công cụ quen thuộc nhất để thử và tài liệu hoá giao diện lập trình

Khi bộ sưu tập đủ đầy đủ, nó trở thành tài liệu mô tả dịch vụ mà người mới vào nhóm mở ra là hiểu ngay hệ thống có những chức năng gì.

Phổ biến nhất trong nhómBản miễn phí đủ dùngNgày càng nặng
8.5
ĐIỂM TOPỨNGDỤNG
Hạng #11 trong nhóm Developer & lập trình
Nhà phát triển
Postman
Nền tảng
Windows · macOS · Linux · Web
Giá
Gói miễn phí cho cá nhân và nhóm nhỏ · Gói trả phí theo người dùng cho đội đông · Windows, macOS, Linux, bản web
Ngôn ngữ
English
NGƯỜI DÙNG CHẤM

Bạn đánh giá Postman thế nào?

Điểm này độc lập với điểm của ban biên tập và quyết định thứ hạng ở tab “Người dùng bình chọn”.

Chưa có bình chọn
Bạn thấy sao?
Không cần đăng nhập. Mỗi người một phiếu, đổi lại được.
CHẤM ĐIỂM

Điểm từng tiêu chí

Điểm tổng là trung bình có trọng số của các tiêu chí bên dưới.

Tổ chức bộ sưu tập
9.6
Quản lý biến môi trường
9.5
Kiểm thử tự động
9
Mức tiêu tốn tài nguyên
5.5
Làm việc ngoại tuyến
5
REVIEW

Đánh giá chi tiết Postman

Trả lời ngắn: Postman đã đi xa khỏi vai trò gửi thử một yêu cầu — nó thành nơi lưu bộ tài liệu sống về giao diện lập trình của cả đội.

Đánh đổi: phần mềm ngày càng nặng và nhiều tính năng đòi hỏi phải đăng nhập tài khoản.

Vì sao cần công cụ riêng để gọi thử?

Khi xây một dịch vụ máy chủ, bạn cần gọi thử từng chức năng để xem nó trả về đúng chưa.

Cách sơ khai là gõ lệnh trong cửa sổ dòng lệnh. Việc đó chạy được, nhưng mỗi lần muốn thử lại bạn phải nhớ hoặc chép lại câu lệnh dài, và chia sẻ cho đồng nghiệp thì gửi qua tin nhắn.

Công cụ chuyên dụng biến những lời gọi đó thành thứ lưu lại được, đặt tên được, nhóm theo thư mục được, và chia sẻ cho cả đội được.

Đến khi bộ sưu tập đủ đầy đủ, nó trở thành tài liệu mô tả dịch vụ của bạn — thứ mà người mới vào nhóm mở ra là hiểu ngay hệ thống có những chức năng gì.

Postman làm được gì?

ViệcMức độGhi chú
Lưu và tổ chức bộ lời gọi theo thư mụcTốt nhấtThành tài liệu sống cho cả đội
Tách biến theo môi trường phát triển và thậtTốt nhấtĐổi môi trường bằng một lần chọn
Viết kiểm thử tự động cho từng lời gọiRất tốtChạy cả bộ và xem báo cáo
Chia sẻ và đồng bộ giữa các thành viênRất tốtCần tài khoản và có giới hạn theo gói
Sinh mã gọi sẵn cho nhiều ngôn ngữRất tốtChép thẳng vào dự án được
Giả lập máy chủ để làm giao diện trướcTốtRất hữu ích khi máy chủ chưa xong
Mức tiêu tốn tài nguyênKémNặng hơn nhiều so với nhu cầu cơ bản
Làm việc hoàn toàn ngoại tuyếnKémNhiều tính năng buộc đăng nhập
Giới hạn của gói miễn phíKháĐội đông người sẽ chạm ngưỡng

Ai nên dùng Postman?

  • Người xây dịch vụ máy chủ cho ứng dụng — nhóm dùng nhiều nhất.
  • Lập trình viên giao diện cần thử dịch vụ của đồng nghiệp — đỡ phải hỏi đi hỏi lại.
  • Người kiểm thử phần mềm — viết được bộ kiểm thử tự động chạy hằng ngày.
  • Đội cần bàn giao tài liệu kỹ thuật cho đối tác — xuất ra bộ sưu tập là xong.

Quá nặng nếu bạn chỉ thỉnh thoảng gọi thử vài lời gọi — Insomnia nhẹ hơn nhiều cho nhu cầu đó.

Tổ chức bộ sưu tập thế nào cho hiệu quả?

Đây là chỗ tách biệt giữa một đống lời gọi lộn xộn và một bộ tài liệu thật sự dùng được.

Việc nên làmLợi ích
Đặt tên lời gọi theo nghiệp vụ chứ không theo đường dẫnNgười mới đọc là hiểu ngay
Nhóm theo chức năng nghiệp vụTìm nhanh hơn hẳn danh sách phẳng
Tách biến môi trường ra khỏi lời gọiKhông phải sửa tay khi đổi máy chủ
Ghi mô tả ngắn cho từng lời gọiGiảm số câu hỏi lặp lại trong nhóm
Lưu ví dụ kết quả trả vềNgười làm giao diện dựng được trước
Để lẫn lời gọi thử nghiệm với lời gọi chính thứcBộ sưu tập nhanh chóng thành rác
Có một rủi ro an toàn mà rất nhiều đội mắc phải: lưu khoá truy cập thật vào ngay trong lời gọi rồi chia sẻ bộ sưu tập cho cả nhóm. Khoá đó theo bộ sưu tập đi khắp nơi — sang máy cá nhân của từng người, lên dịch vụ đồng bộ, và đôi khi vào cả kho mã nguồn khi ai đó xuất ra tệp rồi đưa lên. Cách đúng là để khoá trong biến môi trường của riêng từng người, đánh dấu là giá trị bí mật, và không bao giờ đưa môi trường chứa khoá thật vào phần chia sẻ chung. Khoá của môi trường thật chỉ nên nằm trên máy người thực sự cần dùng nó.

Quy trình dựng bộ sưu tập cho một dự án

  1. Tạo môi trường riêng cho phát triển và cho bản thật (30 phút) — Tách ngay từ đầu.
  2. Khai báo địa chỉ máy chủ thành biến (15 phút) — Không viết cứng vào từng lời gọi.
  3. Thêm từng lời gọi kèm mô tả ngắn (2 giờ) — Làm dần theo tiến độ dự án.
  4. Lưu ví dụ kết quả trả về cho mỗi lời gọi (1 giờ) — Người làm giao diện dùng ngay.
  5. Viết kiểm tra tự động cho các lời gọi quan trọng (3 giờ) — Bắt lỗi sớm khi máy chủ đổi.
  6. Chia sẻ cho nhóm nhưng không kèm khoá thật (30 phút) — Mỗi người tự đặt khoá riêng.

Vì sao nên lưu ví dụ kết quả trả về?

Đây là bước bị bỏ qua nhiều nhất, trong khi nó tháo được một nút thắt lớn về tiến độ.

Trong dự án có cả phần giao diện và phần máy chủ, người làm giao diện thường phải chờ máy chủ xong mới bắt đầu ghép được. Thời gian chờ đó là lãng phí thuần tuý.

Nếu hai bên thống nhất trước hình dạng dữ liệu và lưu ví dụ vào bộ sưu tập, người làm giao diện dựng luôn màn hình dựa trên ví dụ đó. Đến khi máy chủ xong, việc ghép chỉ còn là đổi địa chỉ.

Lợi ích thứ hai lớn không kém là nó buộc hai bên thoả thuận rõ ràng ngay từ đầu. Rất nhiều tranh cãi cuối dự án bắt nguồn từ việc mỗi bên hiểu một kiểu về tên trường và kiểu dữ liệu, và một ví dụ cụ thể chấm dứt được chuyện đó.

Hạn chế cần biết

Nặng hơn nhiều so với nhu cầu cơ bản

Chỉ gọi thử vài lời gọi thì quá thừa.

Nhiều tính năng buộc phải đăng nhập

Làm việc hoàn toàn ngoại tuyến khá bất tiện.

Gói miễn phí có giới hạn với đội đông

Số lần gọi chung và số thành viên bị chặn.

Dễ để lộ khoá truy cập khi chia sẻ

Cần kỷ luật về cách lưu giá trị bí mật.

Bộ sưu tập dễ thành rác nếu không dọn

Lời gọi thử nghiệm tích tụ theo thời gian.

Postman so với các công cụ khác

Tiêu chíPostmanInsomniaGõ lệnh thủ công
Tổ chức bộ sưu tập lớnTốt nhấtTốtKém
Kiểm thử tự độngTốt nhấtTốtKhá
Nhẹ và nhanhKémRất tốtTốt nhất
Làm việc ngoại tuyếnKémRất tốtTốt nhất
Chia sẻ cho cả độiTốt nhấtTốtKém
Giả lập máy chủRất tốtKháKhông có

Xem thêm đánh giá Insomnia, đánh giá Docker, đánh giá DBeaver, hoặc duyệt nhóm công cụ lập trình.

Kết luận

Postman đáng dùng khi đội bạn đủ đông để bộ sưu tập trở thành tài liệu chung chứ không chỉ là ghi chú cá nhân.

Ở quy mô đó, phần đầu tư vào việc đặt tên và mô tả tử tế hoàn lại rất nhanh, vì nó cắt bớt được rất nhiều câu hỏi lặp đi lặp lại giữa các thành viên.

Nhưng hãy giữ kỷ luật về khoá truy cập ngay từ ngày đầu. Một bộ sưu tập tiện lợi mà mang theo khoá của môi trường thật là rủi ro lớn hơn nhiều so với thời gian nó tiết kiệm được.

Về bài đánh giá này: Giới hạn của gói miễn phí Postman đã thay đổi nhiều lần. Kiểm tra thông tin hiện hành tại trang chủ Postman.
ĐÁNH GIÁ

Điểm mạnh & điểm yếu

Điểm mạnh

  • Tổ chức lời gọi theo thư mục nên bộ sưu tập thành tài liệu sống của đội
  • Đổi giữa môi trường phát triển và môi trường thật chỉ bằng một lần chọn
  • Viết được kiểm tra tự động cho từng lời gọi và chạy cả bộ ra báo cáo
  • Sinh sẵn mã gọi cho nhiều ngôn ngữ để chép thẳng vào dự án
  • Giả lập máy chủ giúp làm giao diện trước khi phần máy chủ hoàn thành

Điểm yếu

  • Nặng hơn nhiều so với nhu cầu chỉ gọi thử vài lời gọi
  • Nhiều tính năng buộc đăng nhập nên làm việc ngoại tuyến bất tiện
  • Gói miễn phí giới hạn số lần gọi chung và số thành viên
  • Rất dễ để lộ khoá truy cập khi chia sẻ bộ sưu tập cho cả nhóm
  • Lời gọi thử nghiệm tích tụ dần khiến bộ sưu tập thành rác nếu không dọn
Phù hợp nhất với
Người xây dịch vụ máy chủ cho ứng dụngLập trình viên giao diện cần thử dịch vụ của đồng nghiệpNgười kiểm thử phần mềmĐội cần bàn giao tài liệu kỹ thuật cho đối tác
HỎI ĐÁP

Câu hỏi thường gặp

Vì sao cần công cụ riêng thay vì gõ lệnh?

Vì gõ lệnh thì mỗi lần thử lại phải nhớ hoặc chép câu lệnh dài, còn chia sẻ cho đồng nghiệp thì gửi qua tin nhắn.

Bộ sưu tập trở thành thứ gì khi đủ đầy đủ?

Tài liệu mô tả dịch vụ, thứ người mới vào nhóm mở ra là hiểu ngay hệ thống có những chức năng gì.

Đặt tên lời gọi thế nào cho tốt?

Theo nghiệp vụ chứ không theo đường dẫn, để người đọc hiểu ngay lời gọi đó làm gì.

Rủi ro an toàn lớn nhất khi chia sẻ là gì?

Lưu khoá truy cập thật ngay trong lời gọi, rồi khoá đó theo bộ sưu tập đi khắp máy của từng người và cả lên dịch vụ đồng bộ.

Cách xử lý đúng là gì?

Để khoá trong biến môi trường riêng của từng người, đánh dấu là giá trị bí mật, và không đưa môi trường chứa khoá thật vào phần chia sẻ chung.

Vì sao nên lưu ví dụ kết quả trả về?

Vì người làm giao diện dựng được màn hình ngay dựa trên ví dụ, không phải ngồi chờ máy chủ hoàn thành.

Việc lưu ví dụ còn mang lại điều gì?

Nó buộc hai bên thoả thuận rõ tên trường và kiểu dữ liệu từ đầu, chấm dứt phần lớn tranh cãi cuối dự án.

Điều gì khiến bộ sưu tập nhanh thành rác?

Để lẫn lời gọi thử nghiệm tạm thời với lời gọi chính thức mà không dọn định kỳ.

Khi nào thì công cụ này là quá thừa?

Khi bạn chỉ thỉnh thoảng gọi thử vài lời gọi và không cần chia sẻ cho ai.

KẾT LUẬN

Giữ kỷ luật về khoá truy cập ngay từ ngày đầu — một bộ sưu tập tiện lợi mà mang theo khoá của môi trường thật là rủi ro lớn hơn thời gian nó tiết kiệm.