Tài Liệu

Tích hợp kiểm thử cho các nền tảng dành cho robot telepresence

Khách hàng đã thành công tìm được một đối tác nhằm tiết kiệm 58,4% chi phí về nhân sự và thời gian thực hiện việc kiểm thử của họ đã giảm từ vài tuần xuống còn khoảng 4 giờ.

Nhu Cầu Của Doanh Nghiệp

Là một công ty khởi nghiệp tiên phong nhằm cách mạng hóa truyền thông ảo, khách hàng của chúng tôi đã và đang chuyển đổi cách mọi người cộng tác với nhau trong thế giới ảo. Từ New York, bạn có thể họp video với đồng nghiệp của mình ở San Francisco thông qua một rô-bốt có khả năng dịch chuyển tức thời, tương đương có thể “đi lại” quanh phòng. Các rô-bốt có khả năng dịch chuyển tức thời này giúp loại bỏ các rào cản địa lý, do đó xây dựng một cách hiệu quả một nhóm toàn cầu làm việc trên cùng một lĩnh vực trong cùng một thời điểm.

Sản phẩm IoT thông minh độc đáo này rõ ràng yêu cầu một giải pháp kiểm thử độc đáo. Bên cạnh việc kiểm tra cấu hình mạng và phần cứng cho rô-bốt dịch chuyển từ xa IoT, nền tảng này cũng liên quan đến một tập hợp các ứng dụng giao diện người dùng để người dùng cuối điều khiển rô bốt. Các ứng dụng front-end đó phải chạy trên các nền tảng, bao gồm Windows, macOS, Linux (Ubuntu & CentOS), Android và iOS (cả điện thoại và máy tính bảng). Mặt khác, quản trị viên back-end cần một ứng dụng web (được viết bằng Angular & NodeJS) để quản lý tất cả các cài đặt rô bốt, nhóm người dùng, chính sách nhóm, v.v. Ứng dụng web này sẽ chạy tốt trên nhiều trình duyệt máy tính để bàn (IE , Chrome, Firefox, Edge và Safari).

Theo đó, cả người dùng front-end và back-end phải có thể chuyển đổi giữa nhiều ngôn ngữ, bao gồm tiếng Anh, tiếng Pháp, tiếng Nhật, tiếng Tây Ban Nha, tiếng Đan Mạch, tiếng Hàn, tiếng Trung, v.v. Số lượng lớn các cấu hình và môi trường kiểm thử này chắc chắn cản trở khả năng tái tạo và khả năng bảo trì của các trường hợp kiểm thử.

Để bao gồm tất cả các khía cạnh kiểm thử, khách hàng đã phải đầu tư vào nhiều gói giải pháp (kiểm thử phần cứng thủ công, kiểm thử mạng, kiểm thử tự động chức năng và kiểm thử di động), mỗi phương pháp đều có những thách thức riêng. Vì vậy, họ cần một đối tác đáng tin cậy có chuyên môn trong tất cả các lĩnh vực đó. Đó là khi LogiGear xuất hiện.

Thông Tin Khách Hàng: 

Lĩnh Vực: Công nghệ, IoT, Truyền thông ảo

Quy Mô: <50 nhân viên (khởi nghiệp)

Địa Điểm: Palo Alto, CA, USA

Nhu Cầu Của Doanh Nghiệp:

• 6 hệ điều hành

• 5 trình duyệt

• 9 ngôn ngữ tự nhiên

Giải Pháp Từ LogiGear:

• Khung tự động hóa Selenium có thể bảo trì

• ~ 400 kiểm tra chức năng tự động trên nhiều nền tảng

• Dịch vụ kiểm tra mạng và phần cứng thủ công

Kết Quả:     

• Đã phát hành trong 2 tuần

• Tiết kiệm được 338.000 đô la mỗi năm (ước tính), bằng 58,4% chi phí nhân sự nhờ cơ cấu chi phí thấp của Việt Nam

• Giảm thời gian thực hiện thử nghiệm từ vài tuần xuống còn 4 giờ

Mục Tiêu

Khi công ty khởi nghiệp với tốc độ nhanh hợp tác với LogiGear, nhóm phát triển phần mềm của họ đã phải vật lộn với thời hạn phát hành áp lực, rất nhiều lỗi được tìm thấy trong quá trình hồi quy và cách tiếp cận tự động hóa kiểm tra BDD không thể khắc phục được. Nhận ra những vấn đề đó, họ đã xác định chiến lược kiểm thử của mình để tập trung vào một khuôn khổ tự động hóa thử nghiệm vững chắc với khả năng bảo trì là ưu tiên số một.

Ngoài ra, họ cần các dịch vụ kiểm tra chuyên nghiệp do một đối tác đáng tin cậy cung cấp để giải quyết sự phức tạp của kiểm tra cấu hình phần cứng và mạng. Điểm thưởng cho đối tác tiềm năng phù hợp với văn hóa khởi nghiệp của họ bằng cách hiểu tầm nhìn của họ và biết những gì cần thiết để cung cấp chất lượng với tốc độ nhanh. Đối tác này phải có khả năng đối phó với tốc độ đổi mới và các đợt ra mắt sản phẩm tích cực của họ.

Giải Pháp

LogiGear đã chạy một dự án bằng chứng khái niệm (POC) được xác định rõ ràng cho khách hàng khi chúng tôi tham gia lần đầu tiên. Chúng tôi luôn tin rằng POC là một công cụ quan trọng để khách hàng của chúng tôi tham gia đánh giá không rủi ro và thực hiện suôn sẻ việc áp dụng.

Trong suốt giai đoạn POC này, khách hàng đã tìm hiểu về các lợi ích khác nhau của việc hợp tác với LogiGear. Ví dụ: chuyên viên kiểm thử đã từng mất 7 ngày để chạy kiểm thử thủ công, gồm 142 trường hợp kiểm thử trên một tổ hợp hệ điều hành-trình duyệt-ngôn ngữ. Nhờ kiểm thử tự động, phần mềm chỉ mất 5-7 giờ tùy thuộc vào hiệu suất của trình duyệt. Thời gian chạy thậm chí có thể giảm xuống dưới 1 giờ nếu được thực hiện bởi nhiều luồng đồng thời trên các đám mây.

Khách hàng cũng có thể kiểm soát tốt hơn tiến độ kiểm thử cũng như nỗ lực tự động hóa thông qua các báo cáo tình trạng hàng ngày chi tiết do các kỹ sư của LogiGear cung cấp. Một điểm hấp dẫn khác là cơ cấu chi phí thấp hơn của Việt Nam dẫn đến rủi ro thấp.

Miễn là POC ra mắt, đội ngũ quản lý và kiểm tra nội bộ thích những gì LogiGear phân phối và cách LogiGear thực hiện. Niềm tin đã được xây dựng. Do đó, sau 1 tháng POC, khách hàng cuối cùng đã quyết định gắn bó lâu dài với LogiGear.

Xây Dựng Khung Selenium

Để đáp ứng các yêu cầu thử nghiệm đối với ứng dụng web quản trị back-end, LogiGear đã tận dụng giải pháp mã nguồn mở Selenium. Mặc dù Selenium đã là một thư viện tự động hóa mạnh mẽ và phổ biến, nhưng nó chỉ là một “thư viện”. Việc xây dựng một khung Selenium có thể bảo trì và mở rộng đòi hỏi thời gian và nỗ lực đáng kể. Một sai lầm phổ biến mà mọi người thường mắc phải là bỏ qua những lợi ích lâu dài của một kiến ​​trúc khung tốt. Cũng giống như phần mềm chúng tôi đang xây dựng, khung thử nghiệm phải được cấu trúc tốt.

Nhận ra sai lầm đó, LogiGear đã cung cấp một khung công tác Selenium phù hợp được điều chỉnh được viết bằng Python. Python là ngôn ngữ được khách hàng lựa chọn do sự quen thuộc của họ với nó trong quá trình phát triển nội bộ của họ. Các định nghĩa giao diện trong khuôn khổ này được lưu trữ riêng trong PageObjects để bảo trì dễ dàng hơn. Khung cũng hỗ trợ viết các bài kiểm tra theo hướng dữ liệu với một lớp dữ liệu kiểm tra riêng biệt. Sau một vài tháng, khung Selenium nhanh nhẹn này đã thay thế hoàn toàn khung BDD cũ và rườm rà.

Sau khi khuôn khổ được thiết lập và chạy, các kỹ sư của LogiGear đã liên tục thực hiện các thử nghiệm tự động mới và thực hiện các bộ thử nghiệm tự động đó để đảm bảo ứng dụng web quản trị back-end hoạt động chính xác.

Trong suốt giai đoạn POC này, khách hàng đã tìm hiểu về các lợi ích khác nhau của việc hợp tác với LogiGear. Ví dụ: người thử nghiệm đã từng mất 7 ngày để chạy thủ công bộ thử nghiệm gồm 142 trường hợp thử nghiệm trên một tổ hợp hệ điều hành-trình duyệt-ngôn ngữ. Nhờ tự động hóa thử nghiệm, bộ phần mềm đó hiện chỉ mất 5-7 giờ tùy thuộc vào hiệu suất của trình duyệt. Thời gian chạy thậm chí có thể giảm xuống dưới 1 giờ nếu được thực hiện bởi nhiều luồng đồng thời trên các đám mây.

Khách hàng cũng có thể kiểm soát tốt hơn tiến độ kiểm tra cũng như nỗ lực tự động hóa thông qua các báo cáo tình trạng hàng ngày chi tiết do các kỹ sư của LogiGear cung cấp. Một điểm hấp dẫn khác là cơ cấu chi phí thấp hơn của Việt Nam dẫn đến rủi ro thấp.

Miễn là POC ra mắt, đội ngũ quản lý và kiểm tra nội bộ thích những gì LogiGear phân phối và cách LogiGear thực hiện. Niềm tin đã được xây dựng. Do đó, sau 1 tháng POC, khách hàng cuối cùng đã quyết định gắn bó lâu dài với LogiGear.

Leveraged Squish Để Kiểm Tra Ứng Dụng Phía Trước

Vì Squish là một giải pháp mạnh mẽ để kiểm thử đa nền tảng, chúng tôi đã tận dụng Squish để tự động hóa các bộ phần mềm cho các ứng dụng front-end (với Qt là công nghệ GUI cơ bản) trên các nền tảng không đồng nhất bao gồm Windows, Ubuntu, CentOS và macOS. Các ứng dụng Android và iOS đang trên đà phát triển. Đảm bảo chất lượng của các ứng dụng front-end là điều quan trọng đối với hoạt động kinh doanh của khách hàng vì trong giao tiếp ảo, trải nghiệm người dùng là chìa khóa. Các trục trặc hoặc độ trễ khi phát video liên tục có thể làm gián đoạn liên lạc, do đó làm giảm giá trị của các robot dịch chuyển IoT một cách nghiêm trọng.

Cơ Chế Thông Minh Để Xử Lý Nhiều Cấu Hình

Sử dụng khung Selenium của LogiGear, nhóm kiểm thử không cần sao chép từng trường hợp kiểm thử để phù hợp với cấu hình hoặc môi trường cụ thể (ngôn ngữ, hệ điều hành, trình duyệt, v.v.). Ví dụ: họ chỉ cần một trường hợp kiểm thử để kiểm tra tất cả các ngôn ngữ được hỗ trợ vì các bước kiểm tra & điểm kiểm thử chỉ lấy một biến tham chiếu đến mục nhập từ điển. Đối với mỗi lần chạy, sau khi người kiểm thử chỉ định ngôn ngữ họ muốn chạy, người chạy thử sẽ tự động chọn giá trị phù hợp cho biến được đề cập ở trên. Điều này rất giống với tiêu chuẩn nội địa hóa i18n được Squish sử dụng.

Kiểm Tra Thủ Công cho Phần Cứng và Mạng

Đảm bảo chất lượng của rô-bốt IoT liên quan đến việc kiểm thử cấu hình phần cứng và mạng, khó tự động hóa hơn do tính chất mờ nhạt của nó và khó khăn trong việc mô phỏng các tình huống kiểm tra khác nhau. Do đó, khách hàng gắn bó với kiểm thử công trong các khu vực kiểm thử này.

Chỉ một kỹ sư kiểm thử thủ công của LogiGear bao gồm tất cả các khía cạnh liên quan đến trục trặc phần cứng, kiểm tra phần mềm, trục trặc trong phát video và khám phá các cấu hình mạng khác nhau như tần số Wi-Fi khác nhau, các phương pháp xác thực khác nhau, các bộ định tuyến và thiết bị mạng khác nhau, bỏ qua cổng bị khóa thông qua trình trợ giúp thiết bị, v.v.

Với hơn 24 năm kinh nghiệm trong lĩnh vực thử nghiệm, đội ngũ LogiGear đã và đang cung cấp cho khách hàng sự đảm bảo và tin cậy đáng tin cậy. Các kỹ sư của LogiGear cũng đã đưa ra những phản hồi có giá trị để cải thiện các thiết kế thử nghiệm và các phương pháp kiểm thử nhất định.

Đồng Bộ Hóa với Quản Lý Kiểm Thử

LogiGear quản lý các trường hợp kiểm thử thủ công trên TestRail giống như máy khách. Tuy nhiên, các bài kiểm thử tự động không được liên kết trực tiếp với một trường hợp kiểm tra TestRail tương đương do thiếu hỗ trợ gốc từ công cụ TCM này. Do đó, nhóm phải ứng biến bằng cách áp dụng hệ thống của riêng họ để theo dõi tiến độ thực hiện, phát triển kiểm thử và các khiếm khuyết được tìm thấy. Mặc dù không tập trung, nhưng hệ thống giám sát này vẫn cung cấp đủ thông tin chi tiết một cách hiệu quả để cung cấp thông tin chi tiết về việc đưa ra quyết định tốt trong văn hóa khởi nghiệp có nhịp độ nhanh của khách hàng.

Kết Quả

• Khách hàng tiết kiệm được 58,4% (khoảng $ 338,000) chi phí nhân sự mỗi năm.

• Với sự hỗ trợ nhanh nhẹn từ nhân viên LogiGear, nhóm nội bộ của khách hàng hiện có thể tập trung vào những gì họ làm tốt nhất: phát triển mã mới, tung ra bản phát hành mới, thiết kế thử nghiệm mới và các nhiệm vụ khác mang lại giá trị trực tiếp cho khách hàng của họ.

• Trong vòng 22 tháng, đội ngũ 4 kỹ sư tự động hóa có trụ sở tại Việt Nam đã thực hiện được 399 trường hợp thử nghiệm, đáp ứng gần 80% các yêu cầu thử nghiệm ban đầu. Đối với mỗi bản phát hành, bộ hồi quy chạy với mức độ ổn định cao.

• Đối với rô-bốt IoT, một người kiểm tra thủ công khác hoạt động đồng bộ với nhóm của khách hàng để khám phá và báo cáo các trục trặc phần cứng, lỗi phần sụn và các vấn đề về cấu hình mạng mỗi sprint.

• Do số lượng lớn các tổ hợp ngôn ngữ trình duyệt-hệ điều hành có thể có, các chu kỳ hồi quy được sử dụng để hoàn thành mất hàng tuần. Kể từ khi cài đặt tự động hóa thử nghiệm, các chu kỳ hồi quy đã giảm xuống chỉ còn 4 giờ.

    Xem thêm tại đây