Tầm quan trọng của SQL đối với Tester

Hiện nay các ứng dụng ngày càng được thiết kế, lập trình , phát triển vô cùng phức tạp mà như trước đây tester chỉ cần các thao tác trên giao diện (testing frontend), thì có thể phát hiện ra hầu hết các lỗi, còn bây giờ tester phải làm quen với kĩ thuật sâu hơn để có thể kiểm tra được cả dưới tầng cơ sở để phát triển sớm các vấn đề lỗi. Một trong những kỹ năng rất quan trọng đó là SQL. Vậy SQL là gì và tầm quan trọng của SQL đối với tester như nào ???

SQL là gì ??

SQL là ngôn ngữ máy tính, giúp cho thao tác lưu trữ và truy xuất dữ liệu được lưu trữ trong một cơ sở dữ liệu quan hệ. SQL là viết tắt của Structured Query Language là ngôn ngữ truy vấn có cấu trúc.

Có thể coi SQL là ngôn ngữ chung mà bất cứ hệ thống cơ sở dữ liệu quan hệ (RDBMS) nào cũng phải đáp ứng như: Oracle Database, SQL Server, My SQL,...

SQL là một ngôn ngữ được tiêu chuẩn hóa bởi ANSI (American National Standards Institute) – Viện tiêu chuẩn quốc gia Hoa Kỳ. Đây cũng đồng thời là ngôn ngữ được sử dụng phổ biến trong các hệ thống quản lý cơ sở dữ liệu quan hệ và hỗ trợ sử dụng trong các công ty lớn về công nghệ.

Tại sao SQL cần thiết?

Khi một doanh nghiệp cần một hệ thống để quản lý thông tin nhân viên thì họ phải thiết kế cơ sở dữ liệu để quản lý. Việc lưu trữ các thông tin bằng excel thì quản lý rất khó khăn. Trong trường hợp bạn muốn thêm hay sửa xóa thông tin ai đó sẽ mất nhiều thời gian. SQL sẽ giúp bạn quản lý và truy vấn thông tin nhanh hơn và bảo trì thông tin cũng dễ dàng hơn.

Chính vì vậy người ta thường sử dụng SQL cho các mục đích như sau:

  • Giúp bạn truy cập vào Cơ sở dữ liệu trong hệ thống cơ sở dữ liệu.
  • Được sử dụng để tạo cơ sở dữ liệu, tạo bảng và tạo mới chế độ xem.
  • Cho phép xuất dữ liệu từ CSDL từ việc sử dụng các câu lệnh truy vấn.
  • Chèn, tạo, xóa cơ sở dữ liệu và bảng
  • Cho phép thiết lập quyền truy cập vào bảng, xem các thủ tục.
  • Đã có dữ liệu sửa đổi được phép trong CSDL

Các lệnh truy vấn của SQL

  • SELECT – Chọn lấy dữ liệu từ một hoặc nhiều CSDL bảng đã được tạo.
  • UPDATE – chỉnh sửa và cập nhật dữ liệu đã có trong bảng.
  • DELETE – xóa ghi bảng dữ liệu.
  • INSERT INTO –  thêm hoặc tạo dữ liệu mới vào bảng.

Kiến thức về SQL và cơ sở dữ liệu mà Tester cần có

  • Nhận biết các loại cơ sở dữ liệu khác nhau của nó.
  • Có kiến thức chuyên môn về kết nối với cơ sở dữ liệu cho các khách hàng khác nhau
  • Hiểu mối quan hệ giữa các bảng cơ sở dữ liệu, khóa và chỉ mục
  • Có thể viết câu lệnh truy vấn cơ bản và phức tạp của SQL.
  • Giải thích các truy vấn phức tạp hơn.
  • Có kiến thức về bảng cơ sở dữ liệu, chỉ mục và khóa.

Tầm quan trọng của SQL đối với Tester

Đối với một người kiểm thử, với từng dự án khác nhau, từng yêu cầu của phần mềm, ứng dụng để yêu cầu người kiểm tra cần phải có chuyên môn về SQL hay không. Nếu dự án của bạn về kho dữ liệu thì phần lớn của việc kiểm thử là tập trung vào tính chính xác của dữ liệu thì yêu cầu tester phải có các kiến thức về SQL ví dụ test data của phía server ( hay còn gọi là back-end).

Còn lại khi dự án chỉ cần kiểm thử giao diện hiển thị, ví dụ kiểm thử front-end cho 1 trang web. Thì không cần kiến ​​thức chuyên sâu về SQL. Tuy nhiên, để phát triển được, làm nhiều dự án phức tạp, CV và năng lực được đánh giá cao, bạn nên biết về SQL.

  • SQL giúp công việc kiểm thử trở nên dễ dàng. Biết về SQL, bạn có thể truy xuất và quản lý nhiều dữ liệu, ứng dụng khác nhau.
  • Help tester có thể sửa, thêm, xóa và đọc dữ liệu một cách dễ dàng:

Ví dụ có câu lệnh như sau:

XÓA khỏi tên_bảng WHERE tên_cột = giá_trị

Ví dụ 1: Delete the name is Lona

XÓA khỏi người WHERE FirstName = ‘Lona’

Ví dụ 2: Nếu bạn muốn lấy họ và tên của nhân viên, hãy sử dụng câu lệnh:

CHỌN tên, họ TỪ Nhân viên;

  • SQL được phát triển và được hỗ trợ bởi nhiều công ty lớn như: IBM, Microsoft, Oracle…
  • Giúp người kiểm tra xác định hệ thống cơ sở dữ liệu. Dễ dàng đánh giá giá trị vì sao xuất hiện lỗi.
  • SQL help tester chia nhỏ quá trình của hệ thống để đánh giá được xác định chính xác hơn. Thay vì quá trình: Người dùng -> thực hiện tác vụ -> hệ thống -> Cơ sở dữ liệu -> hệ thống -> người dùng, lúc này người kiểm tra sẽ chia nhỏ thành 2 bước:
  • Bước 1: Người dùng -> thực hiện tác vụ -> hệ thống – Cơ sở dữ liệu
  • Bước 2: Cơ sở dữ liệu -> hệ thống -> người dùng.
  • SQL giúp người kiểm thử nắm rõ quy trình vận hành của hệ thống.  Và hơn nữa không chỉ dừng lại ở việc tìm ra lỗi sai, người kiểm thử sẽ đưa ra được phương án xử lý cho developer. Đây sẽ là tiền đề tốt nếu như bạn đang có định hướng trở thành BA

Như vậy mặc dù SQL là ngôn ngữ đơn giản nhưng nếu bạn thành thạo được ngôn ngữ này nó rất hữu ích: giúp quản lý Database dễ dàng , đơn giản, tiết kiệm thời gian, thao tác test và đưa ra kết quả mong muốn nhanh hơn.

Link tham khảo:https://menaentrepreneur.org/2017/07/the-importance-of-sql-skills-for-testing-profile/

https://www.tutorialspoint.com/sql/sql-overview.htm