Chia sẻ kinh nghiệm test Batch processingQA/QC Feb 19, 2021 Định nghĩa về Batch processingXử lý hàng loạt (Batch processing) là việc thực hiện hàng loạt công việc trong một chương trình trên máy tính mà không có sự can thiệp thủ công (không tương tác). Nói đúng ra, nó là một chế độ xử lý: thực hiện một loạt các chương trình mỗi ngày một bộ hay "mẻ" đầu vào, chứ không phải là một đầu vào duy nhất (mà thay vào đó sẽ là một công việc tùy chỉnh). Tuy nhiên, sự khác biệt này đã phần lớn bị mất, và hàng loạt các bước trong một quá trình hàng loạt thường được gọi là một "batch" hoặc "batch job". Show
Nguồn: https://vi.wikipedia.org/wiki/Batch Test Batch processing như thế nàoBatch là một chức năng chạy ngầm trong hệ thống nên bạn sẽ không thể thao tác trên màn hình giống như enduser được. Nên bạn sẽ cần phải có kiến thức về SQL và kết hợp với bạn developer support kỹ thuật. Bước 1: setup môi trườngDo không có button trên màn hình nên không thể thao tác bình thường để gọi chức năng Batch được, vậy nên chúng ta phải có cách khác để gọi. Mình hay dùng 2 cách dưới, mọi người có thể tham khảo nhé. Cách 1: Nhờ dev gửi các câu lệnh và cấu hình trên máy để QC chúng ta tự gõ lệnh chạy Batch Cách 2: Nhờ dev chế giúp một button trên giao diện web để chạy Batch (cách này thì QC sẽ nhàn hơn cách 1 rất nhiều) Bước 2: Tìm hiểu yêu cầu của khách hàng về BatchBạn phải hiểu rõ khách hàng muốn tính năng chạy ngầm này sẽ thực hiện các công việc trong hệ thống, điều kiện như thế nào, chạy vào thời gian nào... Ví dụ: Batch chạy hàng ngày lúc 2h sáng để tiến hành đóng các giao dịch của ngày hôm trước. Các bản ghi giao dịch của ngày hôm trước sẽ được gán cờ = 1. Công việc Batch: Tìm các bản ghi giao dịch của ngày hôm trước và gán cờ = 1. Điều kiện: phải là bản ghi giao dịch của today()-1 Thời gian chạy: 2h sáng hàng ngày Bước 3: Tạo data testBước này thì cần bạn phải có kiến thức về database và SQL. Mục đích để truy cập vào database và tạo, sửa dữ liệu trực tiếp trong database sao cho phù hợp/không phù hợp với điều kiện Batch sẽ chạy. Bước 4: Thực hiện testSau khi đã tạo datatest xong, tiến hành chạy lệnh để gọi Batch Bước 5: Kiểm tra kết quả sau khi chạy BatchCần kiểm tra lại dữ liệu trên màn hình sau khi Batch chạy có đúng với yêu cầu không. Hoặc có thể tiến hành check log của batch tạo ra (phải nhờ Developer hỗ trợ) Cần chú ý điều gì khi test Batch processingCác step bên trên thì chỉ test được Batch chạy có đúng yêu cầu khách hàng không. Nhưng còn một điểm chúng ta cần phải lưu ý rằng, Batch phải chạy liên tục và không được ngưng hoạt động. Vì nếu ngưng hoạt động là hệ thống cũng sẽ không tạo ra được dữ liệu và khi phát hiện ra chúng ta phải xử lý cover lại dữ liệu rất mệt và giảm niềm tin từ phía khách hàng. Trên thực tế thì cũng không thể test hết được các trường hợp gây ra ngừng hoạt động Batch, nhưng có một cách để chúng ta biết khi nào ngừng bằng cách thêm tính năng gửi mail đến admin khi Batch có xảy ra sự cố. Ngay khi biết Batch ngưng hoạt động là admin sẽ biết và tiến hành khởi động lại và giảm thiểu được rủi ro về vấn đề dữ liệu và business của khách hàng. Lúc này, phía đội phát triển sẽ tiến hành tìm hiểu nguyên nhân và tiến hành khắc phục luôn. Quan điểm test cho Batch processingKhởi động bằng tay
cần phải lưu lại file log để phục vụ quá trình điều tra sau khi xảy ra vấn đề Khởi động tự động
Dữ liệu thiếu điều kiện để chạy batch
Khởi động batch nhiều lần liên tiếp
Chạy batch với số lượng dữ liệu lớn
Hy vọng các nội dung trên sẽ giúp ích cho các bạn trong quá trình test liên quan đến tính năng Batch nhé. Tags
Vu Le HoangRecommended for youQA/QC Buổi 3: Cách xác định Locators của elements trên website5 months ago 3 min read mysql (SQL Injection)7 months ago 7 min read QA/QC QUAN ĐIỂM TEST: CLICK/TAP LIÊN TỤC7 months ago 1 min read |