Kiểm tra như Google: Các phương pháp hay nhất từ ​​những người khổng lồ trong ngành (04.19.24)

Chúng ta có thể học hỏi nhiều điều từ những người khổng lồ trong ngành bằng cách quan sát các phương pháp và cách tiếp cận của họ trong quy trình làm việc.

Họ quản lý như thế nào để duy trì quy trình kiểm thử phần mềm trong hàng triệu dòng mã?

Họ tổ chức quy trình làm việc với hàng nghìn kỹ sư QA như thế nào?

Làm cách nào để họ đối phó với việc mở rộng dự án?

Kinh nghiệm của các công ty như Google hoặc Spotify có thể giúp cải thiện quy trình kiểm tra ở các công ty nhỏ và các nhóm.

Hãy xem xét kỹ hơn cách những người khổng lồ kiểm tra.

Google: tầm quan trọng của độ phủ mã

Tuy nhiên, nhiều kỹ sư tranh luận về tầm quan trọng của thước đo hiệu quả kiểm thử phần mềm như vậy như phạm vi bảo hiểm của mã. Các chuyên gia từ Google nhấn mạnh rằng dữ liệu về độ phủ của mã có thể là thông tin có giá trị để đánh giá rủi ro và tắc nghẽn trong hoạt động thử nghiệm. Carlos Arguelles, Marko Ivanković và Adam Bender chia sẻ các phương pháp hay nhất để bảo hiểm mã:

  • Mức độ phù hợp của mã có thể giúp giảm thiểu lỗi và lỗi. Kinh nghiệm của các kỹ sư QA từ Google cho thấy rằng việc tăng mức độ phủ mã dẫn đến những thay đổi trong cách tiếp cận và thái độ đối với thử nghiệm. Các nhóm sử dụng mã làm mục tiêu chính có xu hướng tăng khả năng kiểm tra sản phẩm của họ tốt hơn. Họ viết mã hiệu quả hơn để kiểm tra nhằm đạt được mục tiêu kiểm tra dễ dàng hơn và ít tốn thời gian hơn.
  • Sử dụng kiểm tra đột biến để đảm bảo mức độ phù hợp của thử nghiệm cao. Phạm vi toàn bộ mã có thể lãng phí và không đảm bảo phạm vi kiểm tra chất lượng cao. Tỷ lệ bao phủ mã cao không có nghĩa là tất cả các chức năng đã được kiểm tra chính xác. Nó có nghĩa là mã đã được kiểm tra tổng thể. Để đảm bảo chất lượng cao của phạm vi kiểm tra, các chuyên gia của Google khuyên bạn nên sử dụng kiểm tra đột biến. Phương pháp này bao gồm việc triển khai các thay đổi mã nhỏ và kiểm tra cách bộ thử nghiệm xác định chúng.
  • Tỷ lệ bao phủ của mã phụ thuộc vào nhiều yếu tố. Chúng ta không nên nhắm đến độ phủ mã cao, nhưng độ phủ mã thấp cũng dẫn đến một số lượng lớn các lỗi. Và câu hỏi là, vùng phủ mã cụ thể cho một hệ thống cụ thể là gì? Để trả lời câu hỏi này, chúng ta nên xem xét những điều như mức độ nghiêm trọng, độ phức tạp và tần suất thay đổi mã. Mức độ phù hợp của mã là một quyết định kinh doanh và chủ sở hữu sản phẩm nên xác định điều đó.
  • Phân tích nội dung cần đề cập. Chúng tôi không thể xác định mức độ phù hợp của mã 100%, vì vậy, các kỹ sư QA nên quan sát điều đó các phần có giá trị nhất của mã được bảo hiểm. Nhóm nhà phát triển không nên thảo luận và không suy nghĩ về việc có bao nhiêu dòng mã được đề cập, mà chính xác là những gì được đề cập.
Spotify: chiến lược đáng tin cậy

Spotify là một công ty đang phát triển nhanh chóng. Nó được thành lập vào năm 2008 với 150 nhân viên. Vào năm 2019, số lượng nhân viên đã tăng lên 4.405 người. Ngày nay Spotify phục vụ khoảng 300 triệu người dùng trên toàn thế giới, khiến dịch vụ này trở thành dịch vụ phát trực tuyến phổ biến nhất trên thế giới.

Chúng ta có thể tìm hiểu các bài học về cách Spotify mở rộng quy mô thử nghiệm và quy trình phát triển.

  • Đặt mục tiêu sản phẩm cho nhóm QA. Spotify có các nhóm chức năng chéo. Mỗi đội đều có mục tiêu và một tập hợp các kỹ năng cụ thể để đạt được những mục tiêu này. Cơ cấu đội phụ thuộc vào các mục tiêu. Do đó, một số nhóm chỉ bao gồm các nhà phát triển và một số nhóm có các nhà phát triển và người kiểm tra. Do đó, người kiểm thử hợp tác chặt chẽ với nhóm phát triển và tập trung vào các mục tiêu chính của sản phẩm. Cách tiếp cận như vậy cho phép Spotify mở rộng quy trình phát triển một cách hiệu quả.
  • Kiểm tra tự động hóa là một công cụ, nhưng không phải là thuốc chữa bách bệnh. Giám đốc kiểm tra và phát triển trên Spotify Kristian Karl tuyên bố rằng không thể thay thế tự động hóa những người kiểm tra phần mềm. Kiểm tra đòi hỏi kinh nghiệm và kiến ​​thức của con người. Kiểm tra tự động hóa là một công cụ mạnh mẽ để tăng tốc quá trình, nhưng con người đưa ra quyết định và phân tích các báo cáo tự động. Spotify sử dụng tự động hóa như một trong những công cụ mở rộng quy mô. Nó cho phép người thử nghiệm rời bỏ các thuật toán và tập trung vào các mục tiêu của sản phẩm.
SpaceX: thử nghiệm liên tục là điều bắt buộc

SpaceX là một công ty sáng tạo nổi tiếng về vận chuyển không gian thương mại, hệ thống phóng có thể tái sử dụng và hiệu quả cao.

Nicholas Chaillan, giám đốc phần mềm của Không quân, cho biết hệ thống của bộ phận phát triển SpaceX hiệu quả hơn gấp 5 lần so với các công ty có quy trình làm việc cổ điển. SpaceX làm cách nào để đối phó với quá trình thử nghiệm với hiệu suất như vậy?

DevOps và các phương pháp tiếp cận Agile cho phép các kỹ sư SpaceX QA cung cấp thử nghiệm tự động hóa hàng loạt. Thông qua chu kỳ phát triển, người kiểm tra cung cấp kiểm tra liên tục để nhận được phản hồi tức thì và loại bỏ các rủi ro hiện có. Do đó, họ đang làm việc chủ động, thử nghiệm thường xuyên và sớm.

Công ty đã phát triển chiến lược về cách triển khai thử nghiệm liên tục trong quá trình phát triển.

  • Ưu tiên giá trị. Giống như Google, SpaceX khuyên bạn nên sử dụng các chỉ số về mức độ phù hợp của mã để hiểu những gì bạn nên tự động hóa và những gì không nên. Nó giúp tối ưu hóa quá trình kiểm tra liên tục và nâng cao các hoạt động đã được thực hiện.
  • Chìa khóa là kiểm tra tự động từ đầu đến cuối. Hãy phân tích tác động của quá trình tích hợp liên tục. Nó cho phép các công ty phân tích việc thêm các chức năng mới hoặc thay đổi mã có thể ảnh hưởng như thế nào đến hệ thống tổng thể hoặc một số bộ phận của hệ thống.
  • Nhóm phải có một môi trường thử nghiệm ổn định và dễ dàng tái tạo. Một công cụ như Ảnh chụp nhanh máy ảo có thể giúp lưu trạng thái dữ liệu, quay lại quá trình thử nghiệm hoặc tiếp tục công việc.
  • Sử dụng Trí tuệ nhân tạo và Máy học để phân tích báo cáo thử nghiệm. AI các công cụ dựa trên tăng tốc độ triển khai và tối ưu hóa quy trình thử nghiệm.
  • Xây dựng kiến ​​trúc tích hợp liên tục mạnh mẽ. Ưu điểm chính của hệ thống CI là khoảng thời gian ngắn giữa quá trình xây dựng và kiểm tra mã . Thử nghiệm liên tục phải được tham gia vào quá trình phát triển và liên quan đến các loại thử nghiệm cần thiết.
  • Tổng kết

    Mỗi công ty đều có chiến lược, quy trình và phương pháp thử nghiệm của mình. Mỗi nhóm lựa chọn và điều chỉnh quá trình thử nghiệm dựa trên các mục tiêu cuối cùng và khả năng của sản phẩm. Nhiệm vụ chính của bất kỳ chuyên gia nào là suy nghĩ về khách hàng và người dùng cuối, thích ứng với các yêu cầu mới và áp dụng trải nghiệm của những người giỏi nhất trong ngành.


    Video youtube.: Kiểm tra như Google: Các phương pháp hay nhất từ ​​những người khổng lồ trong ngành

    04, 2024