Hướng dẫn kiểm thử phần mềm quản lý khách sạn thủ công

MỤC LỤC

Chiến lược kiểm thử

Kiểm thử thủ công (Manual Testing)

Kiểm thử thủ công là kiểm thử phần mềm trong đó các kiểm thử được thực hiện thủ công bởi QA Analyst. Kiểm thử thủ công được thực hiện để tìm ra các lỗi trong phần mềm đang được phát triển. Trong kiểm thử thủ công, tester sẽ kiểm thử tất cả các tính năng thiết yếu của ứng dụng hoặc phần mềm.

Tester thực hiện các test cases và tạo báo cáo kiểm thử mà không cần sự trợ giúp của bất kỳ công cụ kiểm thử phần mềm tự động nào.

Ưu và nhược điểm của hai loại kiểm thử kiểm thử

- Thích hợp trong trường hợp các testcase chỉ phải thực hiện một số ít lần. - Có thể thực hiện các thao tác lặp đi lặp lại (nhập dữ liệu, click, check kết quả..) giúp tester không phải làm những việc gây nhàm chán và dễ nhầm lẫn như vậy. - Kiểm thử thủ công là không thể thay thế vì người ta không thể tự động hóa mọi thứ - Tester phải thông thạo tool kiểm thử tự động hoặc biết code.

Kiểm thử ứng dụng Web

Đặc điểm, chất lượng của một ứng dụng WEB

- Các yêu cầu về chất lượng đóng một vai trò thiết yếu khi thử nghiệm các ứng dụng Web. Mặc dù nhìn chung thì chúng tương tự như những yêu cầu về chất lượng cho các hệ thống phần mềm truyền thống.

Công việc khi kiểm thử một ứng dụng

    Kiểm tra khả năng tương thích ứng dụng với các dịch vụ thiết bị, bao gồm cả vị trí và các dịch vụ quay số. Kiểm tra giao diện người dùng vẽ trên điện thoại di động kích thước màn hình thiết bị, bao gồm cả màn hình xoay. Ứng dụng Web là một trong những loại ứng dụng có nguy cơ bị tấn công cao nhất.

    Vì vậy, ngoài việc đảm bảo ứng dụng chạy đúng, ổn định cần phải kiểm tra nghiêm ngặt khả năng bảo mật của ứng dụng. - Đưa lỗi vào bằng cách truyền các tham số không hợp lệ trên URL hay trong các form nhập liệu. - Kiểm tra khả năng truy cập trái phép đối với những thư mục bị cấm trên máy chủ của ứng dụng.

    - Kiểm tra hoạt động các bộ lọc (validation) khi sử dụng chức năng upload tệp tin, thư mục của ứng dụng (nếu có).

    TÌM HIỂU VỀ SELENIUM

    Phân loại Selenium

      - Là bộ công cụ cho phép nhận các test script được thu bởi Selenium IDE. Nó cho phép chỉnh sửa, cải tiến linh động bằng ngôn ngữ lập trình khác nhau. Sau đó khởi động một trong các trình duyệt web được chỉ định để kiểm tra trực tiếp trên trình duyệt đó.

      - Nó là một công cụ đơn lẻ, tức là bạn phải cài thư việc Selenium server standalone, sau đó khởi động server manual (bằng tay). - Nó là một công cụ đơn lẻ, tức là bạn phải cài thư việc Selenium server standalone, sau đó khởi động server manual (bằng tay). - Là một trong số các bộ test tool của selenium, nó cho phép chúng ta có thể chạy nhiều kịch bản test trên nhiều máy, nhiều hệ điều hành và nhiều trình duyệt khác nhau trên cùng một lúc.

      Ví dụ, ứng dụng của bạn cần chạy trên 5 trình duyệt khác nhau, nếu thông thường thì bạn phải thực hiện chạy 1 test case của bạn trên 5 trình duyệt khác nhau nhưng với Selenium Grid thì bạn chỉ cần chạy 1 lần. - Là các gói thư viện hỗ trợ kiểm thử trên nền tảng web, hỗ trợ nhiều ngôn ngữ lập trình khác nhau để tạo kịch bản test đầy đủ. - Hiện tại WebDriver đã mạnh, cộng đồng người dùng và người phát triển lớn khiến WebDriver có thể giải quyết nhiều bài toán khó.

      Tester sử dụng các thư viện (libraries) kết hợp các thư viện bên ngoài (ví dụ như poi – xử lý file excell, log4j – hiển thị log, …) để xây dựng kịch bản (script).

      TÌM HIỂU VỀ POSTMAN

      Một số chức năng cơ bản của Postman

      - Headers : Bạn có thể thiết lập các header như nội dung kiểu JSON tùy theo cách tổ chức của bạn. - Body : Đây là nơi chúng ta có thể tùy chỉnh chi tiết trong request thường được sử dụng trong request POST. Thông thường, script tiền request (pre-request) cho cài đặt môi trường được sử dụng để đảm bảo các kiểm tra sẽ được chạy trong môi trường chính xác.

      Điều quan trọng là phải có các thử nghiệm như thiết lập các điểm checkpoint để kiểm tra trạng thái là ok, dữ liêu nhận được có như mong đợi không và các thử nghiệm khác.

      KIỂM THỬ GIAO DIỆN

      • Thực hiện kiểm thử chức năng đặt phòng
        • Thực hiện kiểm thử chức năng đăng nhập
          • Thực hiện kiểm thử chức năng thanh toán
            • Thực hiện kiểm thử chức năng thêm tài khoản
              • Thực hiện kiểm thử chức năng phản hồi cskh

                Khi đăng nhập vào website, hệ thống yêu cầu người dùng phải đăng nhập trước khi đặt. Số lượng: 0 < số lượng phòng đặt < số lượng phòng trống hiện tại Như vậy ta sẽ có bảng quyết định sau. + Nút đăng nhập: click vào nút Đăng nhập với tài khoản và mật khẩu chính xác sẽ chuyển sang trang chủ của website.

                + Xác nhận Phòng đã đặt : click thanh toán tại trang phòng đã đặt với các dữ liệu phòng đã đặt sẽ chuyển vào trang xác nhận thanh toán , đồng thời lưu 1 hóa đơn nháp vào database. + Mã hóa đơn (readonly) , tên tài khoản (readonly) , thời gian thanh toán (readonly) , kiểu thanh toán , bảng dữ liệu phòng đã đặt. + Nút quay lại : xóa dữ liệu nháp trong database và quay lại trang phòng đã đặt + Nút thanh toán : Khi click nào nút thanh với các giá trị hợp lệ, hệ thống sẽ lưu dữ liệu đầy đủ vào database và chuyển về trang chủ của website.

                Khi đăng nhập vào website, hệ thống yêu cầu người dùng phải đăng nhập trước khi đặt. Sau khi có đủ dữ liệu sẽ chuyển vào trang xác nhận thanh toán đồng thời sẽ lưu 1 bản nháp vào database. Tại trang thanh toán hệ thống sẽ sẽ tự động lấy các dữ liệu có sẵn, người dùng có thể hủy bỏ bản nháp bằng cách click nút “Quay lại” hoặc xác nhận thanh toán bằng cách click nút “Thanh toán”, hóa đơn sẽ được lưu trên database.

                + Sau khi ấn thêm tài khoản, nếu thành công sẽ trả về trang quản lý tài khoản, nếu thất bại sẽ trả về thông báo fail. Tại trang quản lý tài khoản, thực hiện click vào thêm tài khoản để chuyển hướng đến trang nhập liệu. Sau khi có đủ dữ liệu, hệ thống sẽ thông báo thành công rồi chuyển hướng về trang quản lý tài khoản và những dữ liệu sẽ được chuyển vào database.

                + Gửi phản hồi : click phản hồi tại trang phản hồi với các dữ liệu cần thiết sẽ lưu dữ liệu về phía DB.

                KIỂM THỬ API

                Kiểm thử chức năng đăng nhập

                ": "Bearer eyJh bGciOiJIUzI1NiI sInR5cCI6IkpXVC J9.eyJhY2NvdW50 IjoidmFuZGF0Iiw iZW1haWwiOiJkYX RAZ21haWwuY29tI iwiaWF0IjoxNjk0 OTIzMjYzLCJleHA iOjE2OTQ5MjMyOT N9.M6h90IcUCebh 6kM-. : "Bearer eyJhb GciOiJIUzI1NiIs InR5cCI6IkpXVCJ 9.eyJhY2NvdW50I joidmFuZGF0Iiwi aWF0IjoxNjk0OTI zMjYzLCJleHAiOj E2OTU1MjgwNjN9. ": "Bearer eyJh bGciOiJIUzI1NiI sInR5cCI6IkpXVC J9.eyJhY2NvdW50 IjoidmFuZGF0Iiw iZW1haWwiOiJkYX RAZ21haWwuY29tI iwiaWF0IjoxNjk0 OTIzMjYzLCJleHA iOjE2OTQ5MjMyOT N9.M6h90IcUCebh 6kM-.

                : "Bearer eyJhb GciOiJIUzI1NiIs InR5cCI6IkpXVCJ 9.eyJhY2NvdW50I joidmFuZGF0Iiwi aWF0IjoxNjk0OTI zMjYzLCJleHAiOj E2OTU1MjgwNjN9.

                Kiểm thử chức năng xác thực người dùng

                XVCJ9.eyJhY2Nv dW50IjoidmFuZ GF0IiwiZW1haW wiOiJkYXRAZ21 haWwuY29tIiwi aWF0IjoxNjk0M Dc1MjYwLCJleH AiOjE2OTQwNz UyOTB9.fFe2Ma ECysDP2IKLvUL SWt-.