Các loại testcase thường viết trong kiểm thử phần mềm



  • I.Giới thiệu

    • Như đã biết, testcase là tập hợp các điều kiện hoặc biến, theo đó người kiểm thử sẽ xác định xem hệ thống đang được kiểm thử có đáp ứng các yêu cầu hay hoạt động chính xác không?
      Testcase không chỉ bao gồm các trường hợp bình thường theo tài liệu yêu cầu mà còn được sử dụng để đo lường một chương trình xử lý các lỗi hoặc các tình huống bất thường.
    • Chất lượng của phần mềm thường có rất nhiều hướng tiếp cận để kiểm thử. Khi bạn bắt đầu tham gia vào việc kiểm thử phần mềm thì gần như bạn sẽ không thể kiểm tra được hết tất cả mọi thứ của phần mềm mà chỉ có thu hẹp lại một số loại estcase để thực hiện. Để khám phá loại nào phục vụ cho mục đích gì, bạn cần biết được tất cả các loại kiểm thử khác nhau và chọn các loại testcase nào phù hợp nhất sẽ mang lại sản phẩm phần mềm có chất lượng tốt nhất.
    • Bài viết dưới đây tôi sẽ giới thiệu các loại trường hợp kiểm thử bạn sẽ thực hiện trong quá trình kiểm tra chất lượng của phần mềm.

    II. Các loại testcase trong kiểm thử phần mềm

    1. Functionality Testcase -Testcase chức năng

    a. Mục đích

    • Testcase chức năng được sử dụng để kiểm tra hoạt động giao diện của một ứng dụng hoạt động với phần còn lại của hệ thống và người sử dụng ứng dụng đó.
    • Hầu hết những case thực hiện đều để xác định sự thành công hay thất bại của CHỨC NĂNG phần mềm có như yêu cầu mong muốn ban đầu hay không.

    b. Đặc điểm

    • Với testcase chức năng, phương pháp kiểm thử được sử dụng là các kỹ thuật kiểm thử HỘP ĐEN, dựa vào các đặc tả yêu cầu hoặc yêu cầu người dùng của phần mềm (Sử dụng kiểm thử hộp đen, QA không cần quan tâm đến các cấu trúc bên dưới của phần mềm)
    • Đội QA là những người viết các testcase chức năng. Họ có thể bắt đầu viết và chạy càng sớm càng tốt khi bên Nhóm phát triển đã tạo ra các chức năng đầu tiên có khả năng kiểm thử được. Để giúp việc phát triển tốt hơn, QA có thể viết kiểu testcase này ngay khi code, nếu tất cả kiểm thử viên đều hiểu rõ hết các đặc tả yêu cầu PM.
    • Với những đặc điêm trên, kiểu testcase này có thể được viết và chạy sớm nếu có thể và nên được lặp lại khi có bất kỳ sự cập nhật hay đổi mới nào, và được thực hiện xuyên suốt cho đến lúc khách hàng có thể sử dụng.
      Ví dụ: Xác nhận một người dùng có thể tải file ảnh lên thông tin cá nhân.

    2. User Interface Test cases - Test case giao diện người dùng

    a. Mục đích

    Loại test case Giao diện người dùng được sử dụng để kiểm tra xem từng phần của GUI (Graphical User Interface) nhìn và hoạt động có đúng như mong muốn hay không. Các case có thể được dùng để xác định các lỗi mâu thuẫn thẩm mỹ, các lỗi ngữ pháp, chính tả, liên kết hay bất cứ phần tử nào người dùng tương tác hoặc nhìn thấy.

    b. Đặc điểm

    • Test case Giao diện người dùng có thể được viết bởi đội kiểm thử nhưng đội thiết kế cũng có khả năng viết bởi vì họ là những người quen thuộc với các giao diện nhất. Những case này chính là loại test case thường kiểm tra qua trình duyệt trong kiểm thử phần mềm
    • Test case giao diện người dùng được chạy một lần khi xong giai đoạn phát triển và UI được kết nối với database.
      Ví dụ: Chuyện gì sẽ xảy ra khi một trang web được xem ở chế màn hình nhỏ như điện thoại di động? Giao diện có bị vỡ, bị thiếu hay tràn không?

    3. Perfomance Test cases - Test case Hiệu năng

    a. Mục đích

    Test case hiệu năng dùng để kiểm tra thời gian phản hồi và hiệu quả tổng thể của một ứng dụng. Điều này có nghĩa là, sau khi thực hiện bất kỳ thao tác nào, hệ thống ứng dụng phải mất thời gian bao nhiêu lâu để hệ thống trả lại kết quả? Các trường hợp kiểm tra hiệu suất nên có cần một bộ điều kiện thành công xác định rõ ràng.

    b. Đặc điểm

    • Nhóm kiểm thử thường viết những case này và chúng sẽ hay được thực hiện tự động. Một ứng dụng lớn có thể có hàng trăm đến hàng nghìn test case hiệu năng. Tự động hóa được những test case hiệu năng và chạy chúng thường xuyên giúp chúng ta tìm ra những tình huống mà ứng dụng không thể thực hiện như mong đợi.
    • Các case hiệu năng giúp bạn hiểu được cách ứng dụng sẽ hoạt động trong môi trường thực. Những trường hợp này có thể được viết khi nhóm kiểm thử có được các yêu cầu về hiệu suất từ nhóm sản phẩm. Tuy nhiên, nhiều vấn đề về hiệu suất cũng có thể xác định thủ công không cần đặc tả yêu cầu
      Ví dụ: Mất bao lâu để hệ thống xác định 1 người dùng và tải đến trang tiếp theo? Khi nhiều người dùng đăng nhập 1 thời điểm, ứng dụng có chạy được không hay sập?

    4. Integration Test cases - Test case Tích hợp

    a. Mục đích

    Test case tích hợp được dùng để kiểm tra cách các module khác nhau tương tác với nhau. Mục đích chính của case tích hợp là để đảm bảo các module trong hệ thống hoạt động chính xác.

    b. Đặc điểm

    • Đội kiểm thử xác định các phần nên được kiểm tra tích hợp, trong khi đội phát triển có đầu vào của các case đó. Một trong hai đội này có thể viết được testcase này.
    • Có thể xác minh được các module làm việc riêng lẻ cũng có thể hoạt động cùng nhau.
      Ví dụ: Kiểm tra liên kết giữa Trang chủ và mục "Yêu thích". Khi thêm 1 item trong phần "Yêu thích" từ trang chủ, thì nó có được hiển thị ở mục "Yêu thích" hay không?

    5. Usability Test cases - Test case Hiệu dụng

    a. Mục đích

    • Testcase Hiệu dụng thường được sử dụng có thể được "nhiệm vụ" hoặc "kịch bản". Thay vì viết hướng dẫn chi tiết từng bước thì người kiểm thử sẽ thực hiện một kịch bản mức cao hơn. Những case này kiểm tra khả năng sử dụng để xác định xem cách người sử dụng có thể tiếp cận ứng dụng tự nhiên hay không? Chúng giúp hướng dẫn người kiểm thử thông qua các tình huống và các luồng khác nhau. Không có hiểu biết về ứng dụng thì tốt hơn.

    b. Đặc điểm

    Test case hiệu dụng được đội thiết kế và đội kiểm thử cùng chuẩn bị. Việc kiểm tra hiệu dụng phải được thực hiện trước khi kiểm tra chấp nhận
    Ví dụ: Người dùng có thể thêm nhiều item vào giỏ hàng của họ không?

    6. Database Test cases - Test case Cơ sở dữ liệu

    a. Mục đích

    Testcase về Cơ sở dữ liệu dùng để kiểm tra những gì nền bên dưới giao diện. Giao diện người dùng thì rất rõ ràng và mọi thứ xuất hiện để hoạt động ... nhưng hầu hết dữ liệu sẽ đi đâu?

    b. Đặc điểm

    • Để viết những case này, bạn cần phải có hiểu biết nhiều về ứng dụng, bảng cơ sở dữ liệu, và các thủ tục. Đội kiểm thử sẽ sử dụng các truy vấn SQL thường xuyên để phát triển các testcase Cơ sở dữ liệu
      Ví dụ: Để xác định bước tạo thông tin cá nhân của người dùng. Khi NSD ấn nút "Lưu" những case dưới đây cần được kiểm tra ở mức cơ sở dữ liệu:
    1. Dữ liệu vừa nhập vào đã được lưu vào cơ sở dữ liệu hay chưa?
    2. Có bất kỳ dữ liệu nào bị mất trong quá trình lưu không?
    3. Một phần dữ liệu hiển thị ra không cần lưu
    4. Người dùng không xác định không cần xem hoặc truy cập đến thông tin người dùng.

    7.Security Test cases - Test case Bảo mật

    a. Mục đích

    Test case bảo mật giúp đảm bảo ứng dụng hạn chế các hành động và phân quyền ở những phần cần thiết.

    b. Đặc điểm

    • Những case này được viết để bảo vệ dữ liệu ở những thời điểm và địa điểm cần được bảo vệ
    • Các trường hợp kiểm thử bảo mật được dùng để thúc đấy kiểm tra xâm nhập và các loại kiểm tra khác.
    • Xác thực và mã hóa thường là trọng tâm chính của loại case này/ Nhóm bảo mật (nếu có" thường chịu trách nhiệm về việc viết và chạy những case này.
      Ví dụ: Nếu người dùng nhập X lần sai mật khẩu khi đăng nhập, thì tài khoản đó có bị khóa không? Một người dùng có thể tải dữ liệu lên mà không cần đăng nhập hay không?

    8. Acceptance Test cases - Test case chấp nhận

    a. Mục đích

    • Test case chấp nhận, hay case "UAT", giúp đội kiểm thử kiểm tra trong môi trường chấp nhận người dùng. Những case này nên được mở rộng, bao phủ được tất cả các phần của ứng dụng.
    • Mục đích của loại test case này không phải tìm lỗi mà để xác nhân xem ứng dụng có khả năng sử dụng cho người dùng không. Do đó, người dùng thực hiện một cuộc kiểm tra, và đưa ra kết quả xem có khả năng dùng ổn không?

    b. Đặc điểm

    • Test case chấp nhận được dùng bởi người dùng cuối hoặc khách hàng và được đội kiểm thử hoặc quản lý sản phẩm chuẩn bị. Bước này có thể là bước quan trọng nhất trong kiểm thử vì đó là bước cuối cùng trước khi sản phẩm được đưa ra.

    III. Kết luận

    Test case có thể có rất nhiều hình dùng hay kích cỡ. Phụ thuộc vào từng loại test case được viết, bạn có thể cần các công cụ khác nhau để viết được testcase hiệu quả.
    Mỗi loại kiểm thử đòi hỏi loại test case khác nhau. Bằng việc xem xét loại case kiểm thử khi bạn thiết kế quá trình kiểm thử của bạn, bạn nên tối đa độ bao phủ kiểm thử và thực hiện thích hợp hơn.
    Nguồn: Viblo


Hãy đăng nhập để trả lời
 

Có vẻ như bạn đã mất kết nối tới LaptrinhX, vui lòng đợi một lúc để chúng tôi thử kết nối lại.