Cuối tuần chiếc điện thoại dev của tôi chết máy và tôi khám phá thế giới bí mật của các thiết bị kiểm thử giá phải chăng
Bạn biết cái khoảnh khắc toát mồ hôi lạnh khi thiết bị kiểm thử chính của bạn chết cứng ba ngày trước buổi demo với khách hàng chứ? Tôi từng ở đó, nhìn chằm chằm vào màn hình vô hồn, thầm tính xem một chiếc điện thoại flagship mua gấp vào phút chót sẽ khoắn sạch ví tôi bao nhiêu. Chính cơn hoảng loạn đó đã đẩy tôi vào một mê cung những cách thông minh hơn, rẻ hơn để giữ cho quy trình phát triển luôn trôi chảy. Hãy nói về người hùng thầm lặng của việc xây dựng ứng dụng hiện đại: thị trường điện thoại dự phòng và cho thuê thiết bị kiểm thử phần mềm.
Tôi từng nghĩ mình cần những thiết bị mới nhất, bóng loáng hoàn hảo và còn nguyên hộp, để làm bất kỳ việc gì có ý nghĩa. Ôi, tôi đã sai. Một người bạn làm QA đã cười lớn khi tôi nhắc đến chuyện chi nguyên giá bán lẻ cho một thiết bị chỉ để chạy các bản build nightly đầy lỗi. Chính anh ấy là người đầu tiên thì thầm hai từ thần kỳ: thuê điện thoại để kiểm thử. Tôi hình dung ra một hợp đồng thuê doanh nghiệp phức tạp với các mẫu fax và thời hạn tối thiểu ba tháng. Thay vào đó, anh ấy gửi cho tôi một liên kết đến một dịch vụ cho phép tôi chọn một chiếc Samsung tầm trung, nhận máy trong hai ngày, và trả lại sau một tuần—tổng chi phí còn rẻ hơn một bữa ăn ngoài. Đó là lúc tôi nhận ra cả ngành công nghiệp này đã lặng lẽ tiến hóa mà các lập trình viên không hề hay biết.
Vấn đề là thế này. Bối cảnh chia thành hai nhóm rõ ràng, và việc bạn chọn nhóm nào phụ thuộc hoàn toàn vào nhịp độ công việc của bạn. Bạn đang trong giai đoạn hỗn loạn của một sprint trước khi ra mắt, cần một tá giao diện Android hơi khác nhau cho một đợt kiểm thử tương thích? Vậy thì bạn sẽ muốn khám phá cách thuê thiết bị kiểm thử. Hiện có những nền tảng trực tuyến chuyên chính xác việc này: bạn nhận được một thiết bị sạch sẽ, đã được xóa dữ liệu, cài sẵn các phiên bản OS mà bạn chỉ định, và bạn có thể đặt thuê theo ngày hoặc tuần. Một số thậm chí cung cấp quyền truy cập từ xa, vì vậy điện thoại nằm trong một giá máy chủ và bạn tương tác với nó qua trình duyệt—không có độ trễ vận chuyển. Khi tôi phải kiểm thử tính năng gọi video trên các mẫu Xiaomi và Oppo cụ thể mà không ai trong nhóm tôi sở hữu, một dịch vụ cho thuê thiết bị kiểm thử phần mềm đã cứu cả dự án. Tôi lấy một loạt điện thoại trong hai tuần, chạy bộ kiểm thử tự động, rồi gửi trả lại. Từ khóa ở đây là sự linh hoạt. Bạn không bị ràng buộc với một thiết bị sẽ phủ bụi sau sprint.
Nhưng có thể tình huống của bạn khác. Có thể bạn không chỉ kiểm thử—bạn cần một thiết bị phụ đáng tin cậy luôn sẵn sàng. Đó là lúc các lựa chọn mua điện thoại dự phòng trở nên đáng để khám phá. Cuối cùng tôi cũng chịu mua một chiếc điện thoại rẻ để kiểm thử phần mềm vào năm ngoái. Đó là một chiếc Pixel 4a cũ kỹ mà tôi vớ được từ một cửa hàng điện tử tân trang với giá khoảng một trăm đô la. Nó nằm trong ngăn kéo trên bàn làm việc của tôi, luôn được sạc đầy, luôn đăng nhập vào tài khoản Google kiểm thử. Nó không phải máy chính hằng ngày, nhưng nó là chiếc điện thoại dự phòng hoàn hảo cho các nhà phát triển cần một thiết bị vật lý để kiểm tra nhanh mà không phải mượn máy của người thân mỗi ngày. Tôi đã cài vào nó hàng chục ứng dụng mạng xã hội, nhiều cấu hình trình đọc màn hình khác nhau, và thậm chí một launcher tùy chỉnh để mô phỏng phần cứng chậm hơn. Nó là con dao đa năng Thụy Sĩ của tôi, và bởi vì tôi đã mua nó, tôi có thể hành hạ nó bằng các bản build thử nghiệm mà có thể làm chết cứng một chiếc điện thoại thuê (và đúng vậy, tôi đã từng làm nó chết cứng một lần trong ba giờ khi học cách flash một OS tùy chỉnh, nhưng nó đã hồi phục).
Thị trường máy cũ là một mỏ vàng thực sự cho việc này. Một chiếc điện thoại cũ dùng để kiểm thử không cần màn hình nguyên vẹn hay pin dùng cả ngày. Nó cần khởi động được, cài đặt ứng dụng của bạn và không bị treo ngẫu nhiên. Trầy xước và móp méo? Ai quan tâm? Tôi từng thấy đồng nghiệp mua những chiếc iPhone cũ hỏng camera với giá gần như cho không vì họ chỉ quan tâm đến hành vi iOS 15 trên màn hình 4,7 inch. Một anh chàng trong nhóm developer meetup của chúng tôi điều hành cả một phòng lab mini tại ga-ra chỉ bằng những chiếc điện thoại cũ đã mua, mỗi chiếc dành riêng cho một cấp API Android cụ thể. Anh ấy về cơ bản đã tự xây dựng tư duy bán thiết bị kiểm thử điện thoại cho riêng mình, dù không thực sự bán—anh ấy chỉ dần tích lũy các thiết bị đến mức khi một startup cần một ma trận kiểm thử nhanh, họ mượn anh ấy và anh được trả bằng bia thủ công.
Bây giờ, có thể bạn đang thắc mắc tìm những món hời đó ở đâu. “Thuê thiết bị kiểm thử ở đâu?” là câu hỏi tôi nhận được ít nhất hai lần một tháng trong tin nhắn trực tiếp (DM). Vâng, đó không phải là một cửa hàng duy nhất. Có một vài nhà cho thuê trực tuyến uy tín sở hữu thư viện thiết bị lên đến hàng trăm mẫu máy. Các công ty như DeviceAnywhere hoặc các nhà cung cấp địa phương xuất hiện trong đại dịch phục vụ riêng cho các nhà phát triển. Nhưng tôi cũng gặp may với một kênh ít rõ ràng hơn: các chợ cộng đồng. Một số chuyên gia QA có tầm nhìn xa đã biến nghề tay trái của họ thành một dịch vụ cho thuê siêu nhỏ. Họ sẽ liệt kê một bộ sưu tập điện thoại trên các diễn đàn hoặc nền tảng mạng xã hội, và bạn có thể nhắn tin trực tiếp để sắp xếp thuê theo tuần. Nghe có vẻ không đáng tin cậy, nhưng tôi đã kiếm được một chiếc điện thoại thuê để kiểm thử ứng dụng từ một người trong thành phố của tôi qua một nhóm Slack. Tôi trả cho họ một khoản phí nhỏ, lấy máy vào tối hôm đó, kiểm thử kỹ lưỡng các lệnh gọi API dựa trên vị trí vì tôi thực sự có tín hiệu GPS dội quanh các con phố thật trong thành phố, và trả máy vào sáng hôm sau. Việc xác thực trong thế giới thực đó là điều mà các dịch vụ đám mây từ xa không thể tái tạo hoàn hảo.
Đừng quên góc độ ngân sách. Khi tôi bắt đầu phát triển indie, từng đồng đô la đều quan trọng. Tôi cần một chiếc điện thoại kiểm thử cho các ứng dụng nhắm đến phân khúc Android giá rẻ, nhưng những chiếc điện thoại mới rẻ nhất vẫn có giá vài trăm đô la. Đó là lúc tôi sáng tạo với khái niệm điện thoại dự phòng dành cho nhà phát triển. Thay vì một thiết bị mới nguyên, tôi mua hai chiếc điện thoại cũ từ các nhà sản xuất khác nhau với giá bằng một chiếc mới. Bằng cách đó tôi có thể kiểm thử giao diện người dùng của mình trên một màn hình 720p và một thiết bị có tai thỏ hình dạng lạ cùng lúc. Sự kết hợp đó có vẻ hỗn loạn, nhưng tỷ lệ crash của tôi đã giảm 30% trong vài tháng đầu tiên vì tôi phát hiện các lỗi bố cục mà tôi không bao giờ thấy trên trình giả lập. Và nếu bạn đang nghĩ, “nhưng tôi cần các phiên bản hệ điều hành mới hơn,” thì đây là một bí mật: nhiều dịch vụ cho thuê hiện có sẵn các thiết bị thế hệ hiện tại chính vì họ xoay vòng hàng tồn kho mỗi năm. Vì vậy, bạn có thể thuê Galaxy S24 cho giai đoạn UAT quan trọng, sau đó trả lại và quay lại với chiếc điện thoại giá rẻ đáng tin cậy để lặp lại kiểm thử phần mềm hằng ngày.
Cũng có một phương pháp kết hợp mà tôi đã ổn định theo đuổi. Đối với các dự án chính của mình, tôi duy trì một chiếc điện thoại cá nhân khá tốt mà tôi cũng dùng để kiểm thử thiết yếu. Sau đó tôi giữ một nhóm nhỏ gồm hai chiếc điện thoại cũ đã mua—những chiếc giá rẻ mà tôi đã đề cập—để xử lý các trường hợp biên phổ biến. Nhưng mỗi quý, khi có bản beta iOS hoặc Android mới ra mắt, tôi sẽ thuê ngắn hạn một thiết bị kiểm thử phần mềm cho mẫu máy cụ thể mà mọi người đang xôn xao. Bằng cách đó, tôi không đổ hàng nghìn đô la vào phần cứng mất giá nhanh, nhưng vẫn phát hiện sớm những lỗi khó chịu. Tôi biết một trưởng nhóm đã sử dụng một sự kiện bán thiết bị kiểm thử điện thoại để trang bị toàn bộ lab cho startup của họ; họ đã mua một lô 15 thiết bị hỗn hợp tại một buổi đấu giá với giá bằng hai chiếc mới. Chắc chắn, một số có màn hình nứt, nhưng họ làm sạch, giao mỗi chiếc cho một thành viên khác nhau, và đột nhiên việc kiểm thử tương thích trở nên dễ dàng.
Suy cho cùng, dù bạn quyết định thuê điện thoại để thử nghiệm hay mua hẳn các lựa chọn điện thoại dự phòng, cuộc chơi đã thay đổi. Bạn không cần phải đốt tiền để bao phủ sự đa dạng của các thiết bị thực tế. Các thiết bị nằm ngoài kia, chờ trong những ngăn kéo bỏ không và những kho hàng chuyên dụng, và bạn có thể tiếp cận chúng chỉ với một chút hiểu biết. Lần tới khi thiết bị chính của bạn quyết định chợp mắt đột xuất, bạn sẽ đã có sẵn kế hoạch—và thậm chí là một người bạn dự phòng mới giá rẻ đang ngồi trên bàn, sẵn sàng cứu nguy.











