- vừa được xem lúc

Tìm hiểu API dành cho Tester

0 0 23

Người đăng: Minh Thu Tran

Theo Viblo Asia

Trong thế giới công nghệ hiện đại, API (Application Programming Interface) là một thuật ngữ phổ biến được sử dụng trong việc phát triển phần mềm.

Lời đầu tiên mình xin chào mọi người, chúc mọi người có một ngày học tập và làm việc vui vẻ. Bài viết này mình sẽ giới thiệu về những kiến thức cơ bản liên quan đến API. Mình cùng vào nội dung bài viết nhé !

1. API là gì ?

API là viết tắt của "Application Programming Interface", là một cách để các phần mềm khác tương tác với nhau. Đây là một dạng giao diện mà một ứng dụng phần mềm sử dụng để cho phép các ứng dụng khác có thể sử dụng chức năng của nó hay thao tác với dữ liệu của nó.

Ví dụ về API trong thực tế cuộc sống:

  • Điều khiển thiết bị thông minh: Các thiết bị thông minh như Amazon Echo, Google Home,...cung cấp API cho các nhà phát triển ứng dụng để chúng có thể điều khiển các thiết bị thông minh này. Ví dụ như bạn có thể sử dụng ứng dụng điện thoại của mình để điều khiển việc mở rộng nhiệt độ trong nhà hoặc tắt bật đèn thông minh thông qua API của Amazon Echo.

  • Ứng dụng đọc sách Kindle của Amazon: Ứng dụng đọc sách Kindle của Amazon cung cấp một API cho phép các ứng dụng khác đồng bộ dữ liệu và truy cập vào các sách được mua từ Amazon. Ví dụ, nếu bạn mua một cuốn sách từ Amazon trên trang web của mình, bạn có thể sử dụng ứng dụng Kindle để đọc sách đó trên điện thoại di động của bạn.

Tóm lại, API đã trở thành công nghệ rất quan trọng trong các ứng dụng công nghệ thông tin. Chúng giúp cho các ứng dụng khác nhau có thể truy cập và tương tác với nhau để cung cấp cho người dùng những trải nghiệm tốt hơn.

Minh hoạ API bằng tình huống đi ăn ở nhà hàng. Khi bạn đến nhà hàng, người phục vụ sẽ ra đưa menu cho bạn gọi món, người phục vụ chính là API

image.png

Sau khi bạn chọn món xong, yêu cầu sẽ được đưa đến người đầu bếp để thực hiện. Người đầu bếp chính là App

image.png

Khi món ăn hoàn thành, người phụ vụ sẽ mang ra cho bạn. Bạn chính là User

image.png

Vậy tổng kết lại nhé. Người nhân viên sẽ có vai trò kết nối bạn và đầu bếp. API là cơ chế để User và App giao tiếp với nhau

image.png

2. RESTfulAPI là gì ?

RESTful API (Representational State Transfer API) là một kiểu kiến trúc web dựa trên giao thức HTTP để truyền tải các dữ liệu. Nó là một trong những kiểu kiến trúc phổ biến nhất để tạo ra các web API. RESTful API định nghĩa các đường dẫn URL và các phương thức HTTP để thực hiện các hoạt động trên tài nguyên, đồng thời cung cấp các định dạng dữ liệu chuẩn như JSON, XML để trao đổi dữ liệu giữa máy chủ và máy khách.

Ví dụ về RESTfulAPI:

Twitter là một mạng xã hội phổ biến được sử dụng trên toàn thế giới. Twitter cung cấp một RESTful API cho phép các nhà phát triển ứng dụng bên thứ ba có thể truy cập và lấy dữ liệu từ các bài đăng, thông tin tài khoản, danh sách bạn bè của người dùng,... thông qua các endpoint API. Các phương thức HTTP bao gồm GET, POST, PUT, DELETE và định dạng dữ liệu được truyền tải là JSON hoặc XML.

Ví dụ: Để lấy danh sách các bài đăng của một tài khoản Twitter, ta có thể sử dụng đường dẫn endpoint: "https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name={screen_name}&count={count}" và phương thức GET để lấy danh sách các bài đăng của người dùng với số lượng mặc định là 20.

3. API Testing

API testing là quá trình kiểm thử phần mềm để đảm bảo tính năng hoạt động, tính ổn định, bảo mật và khả năng tương tác của các API. API testing thường được sử dụng để kiểm tra tính thích hợp của các endpoint, thực hiện các phương thức HTTP (như GET, POST, PUT, DELETE) trên các API và kiểm tra dữ liệu trả về.

Ví dụ về trường hợp sử dụng API Testing:

Ví dụ: GitHub là một dịch vụ lưu trữ mã nguồn được sử dụng rộng rãi bởi các nhà phát triển trên toàn thế giới. GitHub cung cấp một RESTful API cho phép các nhà phát triển ứng dụng bên thứ ba có thể truy cập và lấy dữ liệu về các repository, issues, pull requests,... thông qua các endpoint API.

Để kiểm tra tính thích hợp của một API endpoint trả về danh sách các repository của người dùng trong GitHub, ta có thể thực hiện các bước sau:

  • Tạo một request GET với phương thức HTTP để gửi yêu cầu đến endpoint "https://api.github.com/users/{username}/repos", với {username} là tên người dùng trên GitHub.

  • Kiểm tra rằng request đã được gửi thành công và nhận được response từ server. Kiểm tra xem response có chứa các thông tin cần thiết như tên repository, mô tả, URL hay không.

  • Kiểm tra tính đúng đắn của dữ liệu trả về bằng cách so sánh với dữ liệu chính xác (nếu có).

4. Tổng kết

Tóm lại, API là một kỹ thuật đang được sử dụng rộng rãi trong hoạt động lập trình phần mềm. RESTful API là một phiên bản của API được xây dựng dựa trên kiểu giao diện lập trình REST và API Testing là một kỹ thuật kiểm thử phần mềm quan trọng trong việc đảm bảo tính đúng đắn và an toàn của API. Qua bài viết này hy vọng đây là kiến thức hữu ích với mọi người.

Lời cuối mình cảm ơn mọi người đã đọc bài viết !

Bình luận

Bài viết tương tự

- vừa được xem lúc

Flutter - GetX - Using GetConnect to handle API request (Part 4)

Giới thiệu. Xin chào các bạn, lại là mình với series về GetX và Flutter.

0 0 351

- vừa được xem lúc

API vs WebSockets vs WebHooks: What to Choose?

. Khi xây dựng bất kì một ứng dụng nào, chúng ta đều cần phải có một cơ chế đáng tin cậy để giao tiếp giữa các thành phần của nó. Đây là khi APIs, WebSockets và WebHooks được ứng dụng vào.

0 0 101

- vừa được xem lúc

Sử dụng Fast JSON API serialization trong Ruby on Rails

Ở bài viết này chúng ta sẽ thử tạo 1 project API sử dụng gem fast_jsonapi cho serializer. Đầu tiên là tạo một project API mới. $ rails new rails-jsonapi --database=postgresql --skip-action-mailbox --skip-action-text --skip-spring -T --skip-turbolinks --api. .

0 0 131

- vừa được xem lúc

Test thử ba loại API chụp màn hình Windows

Hiện tại, Windows cung cấp khoảng ba cách để chụp màn hình. Thế thì cái nào là nhanh nhất? Tôi muốn test thử từng cái.

0 0 71

- vừa được xem lúc

Ngừng sử dụng REST cho API — GraphQL là cách tốt hơn

Mở đầu. REST đã được nhiều developers sử dụng để gửi dữ liệu qua HTTP trong khi GraphQL thường được trình bày như một công nghệ thay thế các API REST.

0 0 98

- vừa được xem lúc

Quản lý và sử dụng API trong Nuxt bằng cách sử dụng Repository Pattern

Mở đầu năm mới, à nhầm, mở đầu bài viết. Cái tên NuxtJS chắc hẳn cũng không còn xa lạ gì với những bạn yêu thích VueJS nữa, đương nhiên mình cũng là một chàng trai dành tình yêu to lớn cho frameworks này.

0 0 226