Kiểm tra phục hồi là gì? với ví dụ

Kiểm tra phục hồi

Kiểm tra phục hồi là kỹ thuật kiểm thử phần mềm nhằm xác minh khả năng phục hồi của phần mềm sau các lỗi như sự cố phần mềm/phần cứng, lỗi mạng, v.v. Mục đích của Kiểm thử khôi phục là xác định xem liệu các hoạt động của phần mềm có thể được tiếp tục sau thảm họa hoặc mất tính toàn vẹn hay không. Kiểm thử khôi phục bao gồm việc hoàn nguyên phần mềm về điểm đã biết tính toàn vẹn và xử lý lại các giao dịch đến điểm bị lỗi.

Ví dụ về kiểm tra khôi phục

Khi một ứng dụng đang nhận dữ liệu từ mạng, hãy rút cáp kết nối.

Kiểm tra phục hồi

  • Sau một thời gian, hãy cắm lại cáp và phân tích khả năng tiếp tục nhận dữ liệu của ứng dụng từ thời điểm kết nối mạng bị ngắt.
  • Khởi động lại hệ thống trong khi trình duyệt mở một số phiên xác định và kiểm tra xem trình duyệt có thể khôi phục tất cả các phiên đó hay không

Trong Kỹ thuật phần mềm, Kiểm thử khả năng phục hồi là một loại công việc không Thử nghiệm chức năng. (Thử nghiệm phi chức năng đề cập đến các khía cạnh của phần mềm có thể không liên quan đến chức năng cụ thể hoặc hành động của người dùng như khả năng mở rộng hoặc bảo mật.)

Thời gian phục hồi phụ thuộc vào:

  • Số điểm khởi động lại
  • Một khối lượng ứng dụng
  • Đào tạo và kỹ năng của những người tiến hành các hoạt động phục hồi và các công cụ sẵn có để phục hồi.

Khi có một số lỗi thì thay vì xử lý tất cả các lỗi, thử nghiệm khôi phục nên được thực hiện theo kiểu có cấu trúc, nghĩa là thử nghiệm khôi phục phải được thực hiện cho một phân đoạn và sau đó là một phân đoạn khác.

Nó được thực hiện bởi những người thử nghiệm chuyên nghiệp. Trước khi thử nghiệm khôi phục, dữ liệu sao lưu đầy đủ sẽ được lưu giữ ở những vị trí an toàn. Điều này được thực hiện để đảm bảo rằng hoạt động có thể được tiếp tục ngay cả sau thảm họa.

Vòng đời của quá trình phục hồi

Vòng đời của quá trình phục hồi có thể được phân loại thành năm bước sau:

  1. Hoạt động binh thương
  2. Xảy ra thảm họa
  3. Sự gián đoạn và thất bại của hoạt động
  4. Giải quyết thảm họa thông qua quá trình phục hồi
  5. Xây dựng lại toàn bộ quy trình, thông tin để đưa toàn bộ hệ thống chuyển sang hoạt động bình thường

Quá trình phục hồi

Hãy thảo luận chi tiết về 5 bước này-

  1. Một hệ thống bao gồm phần cứng, phần mềm và phần sụn được tích hợp để đạt được mục tiêu chung sẽ được vận hành để thực hiện mục tiêu đã được xác định rõ ràng và đã nêu. Hệ thống được yêu cầu thực hiện hoạt động bình thường để thực hiện công việc được thiết kế mà không có bất kỳ sự gián đoạn nào trong một khoảng thời gian quy định.
  2. Sự gián đoạn có thể xảy ra do trục trặc của phần mềm, do nhiều lý do khác nhau như trục trặc do đầu vào, trục trặc phần mềm do lỗi phần cứng, hư hỏng do hỏa hoạn, trộm cắp và đình công.
  3. Giai đoạn gián đoạn là giai đoạn đau đớn nhất dẫn đến thua lỗ trong kinh doanh, phá vỡ mối quan hệ, mất cơ hội, mất giờ công và luôn luôn là những tổn thất về tài chính và thiện chí. Mỗi cơ quan hợp lý nên có kế hoạch khắc phục thảm họa để giảm thiểu giai đoạn gián đoạn.
  4. Nếu kế hoạch dự phòng và quy trình giảm thiểu rủi ro được thực hiện đúng chỗ trước khi gặp thảm họa và gián đoạn thì việc phục hồi có thể được thực hiện mà không mất nhiều thời gian, công sức và năng lượng. Cần xác định một cá nhân được chỉ định cùng với nhóm của mình với vai trò được giao của từng người này để xác định trách nhiệm và giúp tổ chức thoát khỏi thời kỳ gián đoạn kéo dài.
  5. Việc xây dựng lại có thể bao gồm nhiều phiên hoạt động để xây dựng lại tất cả các thư mục cùng với các tệp cấu hình. Cần có tài liệu và quy trình tái thiết phù hợp để phục hồi chính xác.

Chiến lược phục hồi

Nhóm khôi phục nên có chiến lược riêng để lấy mã và dữ liệu quan trọng nhằm đưa hoạt động của cơ quan trở lại bình thường.

Chiến lược này có thể dành riêng cho mỗi tổ chức dựa trên mức độ quan trọng của hệ thống mà họ đang xử lý.

Chiến lược khả thi cho các hệ thống quan trọng có thể được hình dung như sau:

  1. Để có một bản sao lưu hoặc nhiều hơn một bản sao lưu
  2. Để có nhiều bản sao lưu tại một nơi hoặc những nơi khác nhau
  3. Để có bản sao lưu trực tuyến hoặc sao lưu ngoại tuyến
  4. Việc sao lưu có thể được thực hiện tự động dựa trên chính sách hay thực hiện theo cách thủ công?
  5. Để có một nhóm phục hồi độc lập hoặc nhóm phát triển có thể được sử dụng cho công việc

Mỗi chiến lược này đều có hệ số chi phí liên quan và nhiều tài nguyên cần thiết cho nhiều bản sao lưu có thể tiêu tốn nhiều tài nguyên vật lý hơn hoặc có thể cần một nhóm độc lập.

Nhiều công ty có thể bị ảnh hưởng do sự phụ thuộc vào dữ liệu và mã của họ vào cơ quan phát triển có liên quan. Ví dụ, nếu Amazon AWS ngừng hoạt động và tắt 25 mạng Internet. Phục hồi độc lập là rất quan trọng trong những trường hợp như vậy.

Cách thực hiện Kiểm tra khôi phục

Trong khi thực hiện thử nghiệm phục hồi cần lưu ý những điều sau.

  • Chúng ta phải tạo ra một nền tảng thử nghiệm càng gần với điều kiện triển khai thực tế càng tốt. Những thay đổi về giao diện, giao thức, chương trình cơ sở, phần cứng và phần mềm phải càng gần với tình trạng thực tế càng tốt nếu không giống tình trạng tương tự.
  • Việc kiểm tra toàn diện có thể tốn thời gian và tốn kém, nên thực hiện cấu hình giống hệt và kiểm tra toàn diện.
  • Nếu có thể, việc kiểm tra nên được thực hiện trên phần cứng mà cuối cùng chúng ta sẽ khôi phục. Điều này đặc biệt đúng nếu chúng ta đang khôi phục sang một máy khác với máy đã tạo bản sao lưu.
  • Một số hệ thống sao lưu yêu cầu ổ cứng phải có cùng kích thước với kích thước mà bản sao lưu được lấy từ đó.
  • Sự lỗi thời cần được quản lý vì công nghệ ổ đĩa đang phát triển với tốc độ nhanh và ổ đĩa cũ có thể không tương thích với ổ đĩa mới. Một cách để giải quyết vấn đề là khôi phục lại một máy ảo. Các nhà cung cấp phần mềm ảo hóa như VMware Inc. có thể định cấu hình máy ảo để bắt chước phần cứng hiện có, bao gồm kích thước ổ đĩa và các cấu hình khác.
  • Hệ thống sao lưu trực tuyến không phải là một ngoại lệ để thử nghiệm. Hầu hết các nhà cung cấp dịch vụ sao lưu trực tuyến đều bảo vệ chúng ta khỏi tiếp xúc trực tiếp với các vấn đề về phương tiện truyền thông bằng cách họ sử dụng hệ thống lưu trữ có khả năng chịu lỗi.
  • Mặc dù hệ thống sao lưu trực tuyến cực kỳ đáng tin cậy nhưng chúng tôi phải kiểm tra khía cạnh khôi phục của hệ thống để đảm bảo không có vấn đề gì với chức năng truy xuất, bảo mật hoặc mã hóa.

Quy trình kiểm tra sau khi phục hồi

Hầu hết các tập đoàn lớn đều có kiểm toán viên độc lập để thực hiện các bài kiểm tra phục hồi theo định kỳ.

Chi phí duy trì và thử nghiệm một kế hoạch khắc phục thảm họa toàn diện có thể rất lớn và có thể gây khó khăn cho các doanh nghiệp nhỏ hơn.

Những rủi ro nhỏ hơn có thể dựa vào các bản sao lưu dữ liệu và kế hoạch lưu trữ bên ngoài để cứu chúng trong trường hợp xảy ra thảm họa.

Sau khi các thư mục và tệp được khôi phục, có thể thực hiện các kiểm tra sau để đảm bảo các tệp được khôi phục đúng cách:

  • Đổi tên thư mục tài liệu bị hỏng
  • Đếm số tập tin trong các thư mục được khôi phục và khớp với thư mục hiện có.
  • Mở một số tệp và đảm bảo chúng có thể truy cập được. Hãy nhớ mở chúng bằng ứng dụng thường sử dụng chúng. Và đảm bảo rằng bạn có thể duyệt dữ liệu, cập nhật dữ liệu hoặc bất cứ điều gì bạn thường làm.
  • Tốt nhất là mở nhiều tệp thuộc nhiều loại khác nhau, hình ảnh, mp3, tài liệu, một số tệp lớn và một số tệp nhỏ.
  • Hầu hết các hệ điều hành có các tiện ích mà bạn có thể sử dụng để so sánh các tập tin và thư mục.

Tổng kết

Trong hướng dẫn này, chúng ta đã tìm hiểu một khía cạnh khác của thử nghiệm khôi phục giúp hiểu được liệu hệ thống hoặc chương trình có đáp ứng các yêu cầu sau khi xảy ra lỗi hay không.