Tất cả bài viết

Tự động hoá quy trình kiểm thử sau cập nhật bằng Phoma

Tự động hoá quy trình kiểm thử sau cập nhật bằng Phoma

Bắt đầu từ thao tác thật của đội ngũ

Trong quy trình kiểm thử Android, nhiều đội ngũ lặp lại cùng một chuỗi thao tác. Sau một lần sửa lỗi, sau một phiên bản mới, sau một thay đổi giao diện, họ lại mở điện thoại, thao tác thủ công. Quy trình này tốn thời gian và dễ bỏ sót.

Thay vì bắt đầu xây dựng hệ thống tự động phức tạp ngay lập tức, hãy chọn một luồng kiểm tra ngắn. Ghi lại cách một người thực hiện việc kiểm tra. Sau đó biến thành flow. Phoma cho phép tạo flow trên máy Windows và chạy trên điện thoại Android của người dùng.

Một đội ngũ nhỏ có thể bắt đầu với một luồng đăng nhập. Một đội phát triển có thể bắt đầu với một luồng đặt hàng. Một nhà vận hành có thể bắt đầu với một luồng kiểm tra dữ liệu. Bản chất vẫn giống nhau: quan sát, ghi chú, dựng flow, chạy thử.

Vì sao ghi chú thao tác trước khi tự động hoá

Việc ghi chú giúp đội ngũ làm rõ hành vi thực tế. Automation không nên được vẽ lên giả định. Nó nên bắt nguồn từ thao tác có thể quan sát. Điều này đặc biệt hữu ích cho kiểm thử smoke và regression sau cập nhật.

Khi lập bảng, cần phân biệt mục tiêu kiểm tra, bước thực hiện và kết quả mong đợi. Nếu không rõ mục tiêu, flow có thể kiểm tra sai thứ. Nếu không rõ bước chờ, flow có thể chạy trước khi UI sẵn sàng.

Nếu đội ngũ đã có thao tác được mô tả bằng lời, họ có thể chuyển thành các bước nhỏ. Mỗi bước nhỏ sẽ dễ kiểm tra hơn. Việc này cũng giúp tránh tự động hoá cả quy trình thay vì chỉ kiểm tra một phần.

Một số lợi ích:

  • Phát hiện bước chưa rõ.
  • Định nghĩa điểm chờ chính xác.
  • Ghi lại dữ liệu đầu vào.
  • Chuẩn bị cho điều kiện và lặp.

Chuẩn ghi chú một luồng kiểm thử

Dùng màn hình ghi, bảng checklist hoặc ghi âm. Mỗi bước cần có mục tiêu, hành động, dữ liệu, kết quả.

Ví dụ luồng kiểm tra đăng nhập:

  • Mục tiêu: xác nhận người dùng đăng nhập được.
  • Thiết bị: điện thoại Android, phiên bản app.
  • Bước 1: mở ứng dụng.
  • Bước 2: chờ màn hình đăng nhập.
  • Bước 3: nhập email kiểm thử.
  • Bước 4: nhập mật khẩu.
  • Bước 5: chạm đăng nhập.
  • Bước 6: chờ màn hình chính.
  • Bước 7: chụp màn hình.

Bảng này có thể mở rộng cho luồng nhập liệu. Ví dụ: mở app, chọn danh mục, nhập mã, nhập số lượng, lưu, xác nhận. Mỗi dòng nên ghi rõ dữ liệu đầu vào và bước xác nhận.

Nên dùng ngôn ngữ rõ ràng. Tránh mô tả chung chung. Nên ghi cả dữ liệu như email, mật khẩu, mã sản phẩm. Dữ liệu này quyết định selector và giá trị gõ.

Từ ghi chú thành flow Phoma

Tạo flow mới trong Phoma. Thêm các bước theo thứ tự. Có thể dùng mở ứng dụng, chờ phần tử, chạm, vuốt, gõ văn bản, nhấn phím, mở hoặc đóng ứng dụng, chờ, đọc text, chụp màn hình, điều kiện, lặp.

Thứ tự thường dùng:

  1. Mở app.
  2. Chờ phần tử.
  3. Thao tác.
  4. Chờ kết quả.
  5. Xác nhận.

Ví dụ flow đăng nhập:

  • Mở ứng dụng.
  • Chờ trường email.
  • Gõ email.
  • Chờ trường mật khẩu.
  • Gõ mật khẩu.
  • Chờ nút đăng nhập.
  • Chạm nút đăng nhập.
  • Chờ màn hình chính.
  • Chụp màn hình.
Mở app
Chờ nút Đăng nhập
Gõ email
Chờ trường mật khẩu
Gõ mật khẩu
Chờ nút Đăng nhập
Chạm nút Đăng nhập
Chờ màn hình chính
Chụp màn hình

Trong thực tế, sau khi tạo flow, người dùng cần chỉnh sửa trong giao diện trực quan. Họ có thể thêm bước chờ, sửa bước gõ, thêm điều kiện. Quá trình này không cần viết mã.

Khi người dùng nhập mô tả, họ có thể nêu rõ màn hình hiện tại. Ví dụ: sau khi mở app, trước khi nhập email. Sau khi nhập email, chờ mật khẩu. Sau khi nhập mật khẩu, chờ nút đăng nhập. Cách nêu này giúp AI hoặc người dựng flow tạo ra thứ tự hợp lý.

Các bước thực hiện đầy đủ

  1. Chọn luồng kiểm tra cần tự động hoá.
  2. Ghi chú thao tác trên điện thoại.
  3. Tạo flow trong Phoma.
  4. Chạy thử trên một máy.
  5. Sửa các bước lỗi.
  6. Lưu và tái sử dụng.

Ví dụ thực tế sau cập nhật

Giả sử cập nhật đổi màu nút và thêm bước xác thực. Luồng kiểm tra ban đầu vẫn giữ mục tiêu xác nhận đăng nhập. Sau khi ghi chú lại, đội ngũ thấy cần chờ trường xác thực.

Dựng flow mới:

  • Mở app.
  • Chờ màn hình đăng nhập.
  • Gõ email.
  • Chờ trường xác thực.
  • Gõ mã xác thực.
  • Chờ trường mật khẩu.
  • Gõ mật khẩu.
  • Chờ nút đăng nhập.
  • Chạm nút đăng nhập.
  • Chờ màn hình chính.
  • Chụp màn hình.

Sau đó chạy thử trên một máy. Xem log và màn hình chụp. Nếu lỗi, điều chỉnh bước chờ hoặc điều kiện.

Nếu màn hình xác thực có nhiều biến thể, có thể dùng điều kiện. Chờ đến khi nút đăng nhập xuất hiện sau khi mã xác thực được nhập. Sau đó mới thao tác tiếp theo.

Trong một dự án có nhiều màn hình, nên chia luồng thành các flow nhỏ. Mỗi flow kiểm tra một mục tiêu. Sau đó có thể kéo flow vào regression suite. Điều này giữ cho automation dễ bảo trì.

Chờ phần tử và xử lý trạng thái

Thay vì dùng thời gian chờ cố định, dùng bước chờ. Có thể chờ element, đọc text, dùng điều kiện. Điều này giúp flow chạy ổn định hơn.

Ví dụ:

  • Chờ nút Đăng nhập.
  • Nếu thông báo lỗi chứa từ khóa lỗi thì chụp màn hình và dừng.
  • Nếu màn hình chính xuất hiện thì tiếp tục.
  • Nếu không, dừng và báo lỗi.

Khi cần lặp, dùng vòng lặp. Khi có nhiều bước có thể xảy ra, dùng điều kiện. Phoma hỗ trợ các khối lặp và điều kiện trong flow.

Việc chờ đúng phần tử giúp tránh chạy trước khi UI sẵn sàng. Nếu màn hình phụ thuộc vào dữ liệu, nên dùng điều kiện. Nếu có nhiều bước lặp lại, dùng vòng lặp. Điều này tạo ra flow linh hoạt hơn so với thời gian ngủ cố định.

Nếu dùng adb, có thể kết nối USB hoặc Wi-Fi. Nhưng trong góc độ này, trọng tâm là chờ UI. Sau đó mới dùng các bước lệnh.

Mở rộng sang kiểm tra regression

Sau khi luồng đăng nhập ổn, có thể mở rộng thành luồng kiểm tra đầy đủ. Thêm các bước nhập dữ liệu, thao tác trên màn hình, chụp màn hình, đọc kết quả. Cách này phù hợp cho smoke test sau cập nhật và regression hàng ngày.

Đối với các quy trình lặp lại như nhập dữ liệu, cần ghi rõ thứ tự. Ví dụ: mở app, chờ tải xong, chọn màn hình, nhập mã, nhập số lượng, nhấn lưu, chờ xác nhận, chụp màn hình.

Rà soát và chạy lại

Sau khi dựng flow, chạy thử trên thiết bị. Xem log, màn hình chụp. Nếu thao tác sai, sửa flow. Có thể thêm bước chờ, thay phần tử, điều chỉnh điều kiện. Sau khi ổn, lưu và dùng cho các lần kiểm tra sau.

Khi chạy thử, nên kiểm tra cả hành vi và kết quả. Màn hình chụp màn hình là bằng chứng trực quan. Log giúp xác định bước nào thất bại. Sau khi sửa, chạy lại nhiều lần nếu cần.

Nên chạy thử nhiều lần để xem tính ổn định. Một flow có thể đẹp trên giấy nhưng lỗi trên thiết bị. Chụp màn hình và log là cần thiết.

Kinh nghiệm vàng

  • Ghi chú trước khi tự động hoá.
  • Ưu tiên chờ phần tử.
  • Dùng tên bước nhất quán.
  • Ghi chú ngoại lệ.
  • Chụp màn hình để đối chiếu.
  • Tái dùng flow.
  • Kiểm tra log sau mỗi chạy.
  • Cập nhật flow khi giao diện thay đổi.

Kết luận

Tự động hoá Android không nhất thiết phải bắt đầu từ code. Bắt đầu từ thao tác thật, ghi chú, dựng flow bằng Phoma, rồi chạy lại. Cách tiếp cận này giúp kiểm thử sau cập nhật nhanh hơn, nhất quán hơn và dễ dàng bảo trì.