Tại sao Tester nên học SQL

Mọi thông tin liên quan đến khoá học SQL dành cho Testers.
Forum rules
Mọi thông tin liên quan đến khoá học SQL dành cho Testers.
Post Reply
tvn
Admin
Posts: 4872
Joined: Tue 10 Aug, 2010 10:11 am
Location: HCM
Contact:

Tại sao Tester nên học SQL

Post by tvn » Tue 31 Jan, 2017 9:11 am

Từ lúc đọc bài viết này, mình đã thấy tác giả Nguyễn Đạt đưa ra 5 lý do rất "chính đáng" để học SQL. Nhưng trong bài viết mình trích bên dưới, chỉ đề cập đến việc học SQL là quan trọng đối với góc nhìn của lập trình viên.

Tương tự như lập trình viên (dev), công việc của tester (kiểm thử viên) cũng rất cần kỹ năng sử dụng SQL. Vì họ là người tạo ra dữ liệu test chính. Nhiều dự án Tester sẽ truy cập DB và sử dụng dữ liệu trong hầu hết thời gian kiểm thử ứng dụng. Nếu QC không có kỹ năng sử dụng, thao tác với SQL thì sẽ gặp nhiều khó khăn. Họ phải nhờ Tester khác hoặc dev để giúp học những việc đó.

Đó là chưa kể Tester có kiến thức SQL thì có thể review và chỉ ra một số vấn đề gặp phải trong các câu truy vấn, nhất là các câu truy vấn dài. Lỗi performance, quét dữ liệu nhiều lần gây tốn thời gian không cần thiết.

Backup dữ liệu và tạo mới dữ liệu để test. Khách hàng báo cáo lỗi và gửi bản dump dữ liệu của họ cho mình. Tester không biết restore dữ liệu thì sao mà có thể dựng môi trường test và tái hiện bug?

Các bạn sẽ tìm hiểu thêm một số lý do tại sao SQL lại quan trọng ở bài viết bên dưới nhé.

~~~5 lý do tại sao bạn nên học SQL~~~
Khi đi ứng tuyển vào các vị trí lập trình viên, ngay cả những vị trí cho những nhân viên mới thì việc nắm vững được ngôn ngữ truy vấn cấu trúc SQL luôn là một kỹ năng quan trọng mà nhà tuyển dụng muốn ứng viên có được.

Vậy thì ngôn ngữ SQL là gì và tại sao nó lại quan trọng tới mức mà ngay cả các nhân viên mới ra trường cũng cần phải biết?

Theo Wikipedia thì ngôn ngữ truy vấn có cấu trúc SQL (Structured Query Language) là một loại ngôn ngữ máy tính phổ biến để tạo, chỉnh sửa, truy vấn và xóa dữ liệu. Nói một cách đơn giản SQL là ngôn ngữ dùng để quản lý dữ liệu. Nó được dùng trong các gần như tất cả các ứng dụng cần lưu dữ liệu của người dùng.

Một số ứng dụng đơn giản có thể lưu dữ liệu trên một file đơn giản và khi cần lấy dữ liệu thì lập trình viên có thể đọc từ nội dung của file đó. Ví dụ một file chứa danh sách các địa chỉ email của người dùng có thể được lưu với nội dung như sau:
  • levanan@gmail.com
    tranvantoan@hotmail.com
    nguyenhoanglinh@gmail.com
    phanthithuthao@yahoo.com
    phamhung@gmail.com
Tuy nhiên, hình thức này chỉ thích hợp cho các ứng dụng vô cùng đơn giản và tỏ ra kém hiệu quả với các ứng dụng đòi hỏi lưu nhiều hơn một trường dữ liệu như trường hợp trên (ví dụ: ngoài lưu địa chỉ email thì cần lưu cả họ, tên, tuổi, giới tính của người dùng). SQL hỗ trợ việc lưu các thông tin phức tạp bằng cách đưa các thông tin này về một dàng cấu trúc thống nhất, rõ ràng và dễ hiểu. Tuy nhiên SQL không dừng lại ở việc hỗ trợ lưu các thông tin phức tạp, còn rất nhiều tính năng khác khiến SQL trở thành ngôn ngữ đáng học cho bất cứ ai làm trong ngành lập trình.

Dữ Liệu Có Ở Mọi Nơi
Dữ liệu tồn tại ở hầu như mọi ứng dụng bạn tìm thấy trên internet. Ngay cả các ứng dụng desktop, laptop và mobile cũng cần phải lưu dữ liệu. Khi bạn đăng ký tài khoản trên ứng dụng, bạn đang cung cấp thông tin cho ứng dụng. Khi chơi một game mobile, dù bạn nhận ra hay không bạn đang tương tác với thông tin lưu của game đó. Ví dụ game Flappy Bird, trong game này ứng dụng cần phải theo dõi xem trạng thái của chú chim mà bạn đang chơi và đưa ra những thử thách dựa trên trạng thái này.

Thêm, Sửa, Đọc Và Xóa Dữ Liệu Dễ Dàng
Với SQL, việc bạn muốn thêm, sửa, đọc hay xóa dữ liệu trở lên dễ dàng hơn bao giờ hết. Ví dụ, nếu bạn muốn lấy thông tin người dùng với email chứa gmail trong đó bạn có thể chạy một câu lệnh duy nhất sau với MySQL:

Code: Select all

mysql> select * from users where email like '%gmail%'
Thử tưởng tượng việc này sẽ khó khăn như thế nào nếu như bạn phải dùng một ngôn ngữ lập trình thông thường để đọc toàn bộ nội dung file và tìm ra dòng chữ có chứa 'gmail' trong đó.

Tuy nhiên, SQL không chỉ giới hạn ở việc Thêm, Sửa, Truy Vấn và Xóa dữ liệu.

SQL Giúp Công Việc Lập Trình Trở Lênh Dễ Dàng
Thử tưởng tượng trong ứng dụng của bạn có rất nhiều loại thông tin cần lưu và bạn quyết định sử dụng nhiều file để lưu mỗi loại dữ liệu. Tuy nhiên việc này lại khiến cho việc đọc dữ liệu trở lên phân tán và quy trình maintain không dễ dàng chút nào. Ngoài ra nếu bạn có nhiều ứng dụng khác nhau cần lưu thông tin thì việc quản lý dữ liệu lại càng trở lên khó khăn.

Với SQL, bạn có thể lưu nhiều dữ liệu cho nhiều ứng dụng khác nhau trên cũng một cơ sở dữ liệu và việc truy cập các cơ sở dữ liệu này trở lên đơn giản hơn nhờ một cách thức giống nhau đối với nhiều cơ sở dữ liệu.

SQL Được Sử Dụng Và Hỗ Trợ Bởi Nhiều Công Ty Lớn
Mặc dù SQL là ngôn ngữ khá đơn giản, nhưng nắm vững được nó là một kỹ năng là một điều vô cùng cần thiết. Tất cả các công ty lớn về công nghệ trên thế giới hiện nay như Microsoft, IBM, Oracle... đều hỗ trợ việc phát triển ngôn ngữ này và SQL được rất nhiều công ty lớn sử dụng.

Với Lịch Sử Hơn 40 Năm
SQL ra đời vào đầu những năm 1970 và tồn tại cho tới ngày hôm nay như là một trong những ngôn xử lý dữ liệu phổ biến nhất thế giới. Điều này cũng có nghĩa việc SQL bị thay thế bới một ngôn ngữ khác là điều không dễ dàng xảy ra trong một sớm một chiều. Nhờ đó, việc ngôn ngữ này được các nhà tuyển dụng đánh giá cao cũng là điều hoàn toàn dễ hiểu.

Trên thực tế sẽ còn có rất nhiều lý do khác nữa để có thể liệt kê ra. Tuy nhiên, trong bài viết này tôi chọn ra 5 lý do để bạn tham khảo.

Viết bởi: Nguyễn Đạt
http://www.codehub.vn/5-ly-do-tai-sao-ban-nen-hoc-SQL



Post Reply

Return to “SQL for Testers”