Test Passwordless Login Without Inbox Chaos
Đăng nhập không mật khẩu (passwordless login) trông có vẻ dễ dàng trong các bản demo. Người dùng nhập email. Một magic link được gửi đến. Session bắt đầu.
Trong môi trường staging, luồng này trở nên lộn xộn. Các liên kết rơi vào các hộp thư dùng chung hoặc các alias cũ. Điều này tạo ra sự nhiễu loạn.
Bạn phải coi xác thực không mật khẩu là một hệ thống hoàn chỉnh. Bạn cần kiểm thử client JavaScript, backend Node.js, việc gửi email và session. Nếu bạn bỏ qua hộp thư đến, bạn có thể phát hành một luồng bị lỗi ngay cả khi các bài kiểm tra API của bạn đều vượt qua.
Các lỗi phổ biến bao gồm:
- Backend gửi hai liên kết sau khi retry.
- Email trỏ đến sai host.
- Một liên kết cũ hoạt động lâu hơn mức cần thiết.
- Frontend đánh dấu người dùng đã đăng nhập trước khi cookie được thiết lập.
Hãy sử dụng một hộp thư cô lập cho mỗi lần chạy kiểm thử. Điều này ngăn chặn dữ liệu kiểm thử bị rò rỉ vào hộp thư của nhóm. Sử dụng các dịch vụ email dùng một lần (disposable email services) cho staging để giữ các lần chạy tách biệt.
Sự cô lập giúp việc debug trở nên dễ dàng. Nếu một bài kiểm tra thất bại, bạn sẽ chỉ thấy một hộp thư và một hành trình người dùng duy nhất. Bạn sẽ biết chính xác tin nhắn nào thuộc về bản build nào.
Một bài kiểm tra tốt sẽ kiểm tra các bước này theo thứ tự:
- Yêu cầu đăng nhập thành công mà không tiết lộ liệu tài khoản có tồn tại hay không.
- Có chính xác một magic link mới được gửi đến.
- Host của liên
