12/08/2018, 17:08

Kiểm thử cài đặt/gỡ cài đặt phần mềm

Bạn đã bao giờ thực hiện kiểm thử cài đặt chưa? Trải nghiệm của bạn như thế nào? Thực sự thì việc kiểm thử cài đặt là một phần khá thú vị trong một vòng đời kiểm thử phần mềm (STLC). Kiểm thử cài đặt là gì? Nó giống như là việc giới thiệu một vị khách mới tới nhà bạn chơi vậy. Bạn nên ...

Bạn đã bao giờ thực hiện kiểm thử cài đặt chưa? Trải nghiệm của bạn như thế nào? Thực sự thì việc kiểm thử cài đặt là một phần khá thú vị trong một vòng đời kiểm thử phần mềm (STLC).

Kiểm thử cài đặt là gì?

Nó giống như là việc giới thiệu một vị khách mới tới nhà bạn chơi vậy. Bạn nên giới thiệu người đó đầy đủ với các thành viên trong gia đình để họ cảm thấy thoải mái. Khi bạn cài đặt một phần mềm mới thì nó cũng khá là giống hành động được lấy ví dụ ở trên.

Nếu cài đặt thành công phần mềm lên hệ thống thì khách hàng chắc chắn sẽ hài lòng nhưng giả sử nếu không thể hoặc cài đặt không thành công thì sao? Cài đặt không thành công không chỉ dừng ở việc phần mềm không chạy được, mà đôi khi nó còn khiến cho hệ thống bị tổn hại nghiêm trọng. Nghiêm trọng đến mức người dùng phải cài đặt lại toàn bộ hệ điều hành chẳng hạn.

Vậy là ấn tượng ban đầu bạn để lại cho khách hàng đã tan tành chỉ vì kiểm thử cài đặt không cẩn thận. Vì thế để tạo ấn tượng tốt với khách hàng, việc đầu tiên phải làm đó là kiểm thử cài đặt đầy đủ bằng cả phương pháp thủ công và tự động trên nhiều thiết bị với nhiều kiểu thiết đặt khác nhau.

Mối lo chủ yếu của việc kiểm thử cài đặt đó là thời gian. Chỉ cần thực hiện một test case thôi đã đòi hỏi khá nhiều thời gian rồi. Nếu bạn cần phải kiểm thử một trình cài đặt ứng dụng lớn thì chắc hẳn bạn sẽ khá đau đầu trong việc tính toán thời gian cần thiết để chạy hết các test case, mỗi case lại sử dụng một cách cấu hình khác nhau. Trong bài viết sẽ đưa ra một số phương pháp để thực hiện kiểm thử trình cài đặt một cách thủ công và một vài hướng dẫn cơ bản về tự động hóa quá trình cài đặt.

Để bắt đầu quá trình kiểm thử, trước hết bạn cần xác định rõ bạn cần kiểm tra trên bao nhiêu hệ thống có cấu hình cài đặt khác nhau. Chuẩn bị một ổ đĩa cứng. Định dạng ổ đĩa với kiểu tập tin hệ thống phổ thông nhất hoặc mặc định, cài đặt hệ điều hành. Cài đặt một số thành phần cơ bản. Mỗi lần thực hiện cài đặt, hãy tạo một hình ảnh (image) của ổ đĩa gốc này và sau đó bạn có thể tạo ra nhiều kiểu cấu hình cài đặt khác nhau dựa trên nó. Tạo một bộ các kiểu cài đặt ví dụ như hệ điều hành nào và dùng tập tin định dạng gì để tiện cho việc kiểm thử về sau.

Vậy làm thể nào để áp dụng tự động hóa vào quá trình này?

Hãy tạo ra một số hệ thống dành riêng cho việc tạo ra những hình ảnh sao lưu cơ bản với các thành phần cài đặt cố định bằng cách sử dụng các phầm mềm như Norton Ghost. Việc này sẽ giúp bạn tiết kiệm một khoản thời gian khổng lồ dành cho mỗi test case. Ví dụ, nếu thời gian để cài đặt lại một hệ điều hành là 1 giờ thì với mỗi case đòi hỏi thực hiện trên một hệ điều hành mới sẽ khiến bạn mất thêm 1 giờ. Nhưng nếu tạo một hình ảnh của hệ thống thì chỉ mất 5 tới 10 phút. Như vậy bạn đã tiết kiệm được tới 50 rồi!

Bạn có thể sử dụng một hệ điều hành với nhiều lần thử cài đặt. Mỗi lần bạn có thể gỡ cài đặt ứng dụng và chuẩn bị cho case tiếp theo. Nhưng bạn cần chú ý rằng chương trình gỡ cài đặt nên được kiểm tra trước và phải chạy ổn.

Sau đây là một số mẹo khi thực hiện kiểm thử cùng với một số test case:

  1. Dùng sơ đồ flow để thực hiện kiểm thử. Sơ đồ flow giúp đơn giản hóa việc kiểm thử. Tham khảo sơ đồ dưới về những test case cơ bản.

Bạn chỉ cần thêm vào sơ đồ này các test case mở rộng. Ví dụ như nếu bản cài đặt này không phải là bản phát hành lần đầu, bạn có thể thử thêm vào các hướng cài đặt hợp lí khác.

  1. Nếu bạn đã cài đặt một bản compact của ứng dụng rồi chẳng hạn, bạn có thể thực hiện cài đặt bản đầy đủ của ứng dụng trong case tiếp theo.

  2. Nếu bạn đang dùng sơ đồ flow để kiểm tra các tập tin sẽ được ghi lên đĩa trong quá trình cài đặt, hãy dùng chính sơ đồ đó nhưng đảo ngược thứ tự lại để kiểm tra gỡ cài đặt tất cả các tập tin đã được ghi lên đĩa đó.

  3. Sử dụng sơ đồ flow để tự động hóa việc kiểm thử. Việc chuyển đổi sơ đồ thành script tự động hóa sẽ dễ dàng hơn nhiều.

  4. Kiểm thử đoạn scripts dùng để kiểm tra dung lượng ổ cần thiết. Nếu trình cài đặt yêu cầu 1MB, tức là bạn phải kiểm tra có đúng là chỉ đúng 1MB được sử dụng hay không hay nhiều hơn. Nếu nhiều hơn tức là đã có lỗi.

  5. Kiểm tra yêu cầu về dụng lượng ổ trống cần thiết trên các định dạng tập tin hệ thống khác nhau. Ví dụ như FAT16 yêu cầu nhiều hơn NTFS hay FAT32.

  6. Nếu có thể hãy tạo một hệ thống dành riêng cho việc tạo ra các bản sao lưu của ổ đĩa (disk images). Như đã nói ở trên, nó giúp tiết kiệm thời gian kiểm thử.

  7. Sử dụng môi trường kiểm thử phân tán để kiểm thử cài đặt. Việc sử dụng môi trường phân tán giúp bạn có thể thực hiện hiệu quả nhiều hay tất cả các test case khác nhau từ một máy duy nhất. Phương pháp hay cho việc này đó là tạo ra một máy chủ master điều khiển nhiều máy slave khác nhau trong cùng một mạng. Khi đó bạn có thể thực hiện cài đặt cùng lúc trên nhiều máy khác nhau chỉ bằng một máy. Bạn có thể sử dụng các máy ảo (Virtual Machines). Các máy ảo cho phép bạn tạo ra nhiều máy khác nhau trên cùng một máy tính, mỗi chiếc máy ảo giả lập một chiếc máy như một chiếc máy thật. Sử dụng máy ảo để chạy nhiều hệ điều hành cùng lúc trên cùng 1 máy tính và chuyển qua lại giữa chúng dễ dàng như mở tắt ứng dụng. Phương pháp này có thể gọi là lí tưởng cho những case kiểm thử liên quan tới sử dụng nhiều hệ điều hành khác nhau.

  8. Tự động hóa việc kiểm tra số lượng tập tin được ghi lên đĩa. Bạn có thể lưu trữ danh sách các tập tin được ghi lên đĩa này trong một tập tin excel và đưa danh sách này vào một đoạn script để tự động kiểm tra mỗi và mọi đường dẫn nhằm kiểm chứng việc cài đặt đã được thực hiện chuẩn xác.

  9. Sử dụng các phần mềm miễn phí có sẵn trên thị trường để kiểm tra những thay đổi về registry sau khi cài đặt thành công. Kiểm tra xem có khớp với danh sách các registry sẽ thay đổi mà bạn đã lập ra trước đó không.

  10. Hủy cài đặt giữa chừng. Kiểm tra phản ứng của hệ thống và liệu hệ thống có gặp bất kì vấn đề nào trong lúc khôi phục lại trạng thái ban đầu không. Việc hủy cài đặt có thể được thực hiện ở mọi bước cài đặt.

  11. Kiểm tra dung lượng còn trống của ổ đĩa: đây là một yếu tố bắt buộc phải kiểm tra trong kiểm thử cài đặt. Bạn có thể chọn các phương pháp thủ công hay tự động khác nhau để làm việc này. Trong các phương pháp thủ công, bạn có thể kiểm tra dung lượng còn trống trước khi cài đặt và so sánh với dung lượng được trả về trong kết quả của trình cài đặt để xem nó có tính toán và trả về kết quả chính xác không. Kiểm tra sau khi cài đặt để xác minh việc sử dụng đúng dung lượng đĩa như yêu cầu. Bạn có thể sử dụng một vài công cụ để tự động làm ổ đĩa đầy nhằm tạo ra nhiều trường hợp về dung lượng còn trống. Kiểm tra biểu hiện của hệ thống trong lúc cài đặt khi hệ thống gần hết dung lượng đĩa trống.

  12. Kiểm tra gỡ cài đặt. Kiểm tra sau khi gỡ tất cả các tập tin đã được ghi lên đĩa trước đó có được gỡ bỏ hoàn toàn không. Đôi khi sau khi gỡ cài đặt thì chỉ có những tập tin được ghi lên đĩa vào lần nâng cấp sau cùng là bị gỡ đi còn những tập tin cũ thì vẫn còn nguyên. Ngoài ra, bạn cần kiểm tra cả lựa chọn reboot sau khi gỡ cài đặt, có thể lựa chọn bằng thủ công không và có thể chọn không reboot không.

  13. Thử cài đặt phần mềm khi hệ thống không đáp ứng đủ yêu cầu về hệ thống Ví dụ ứng dụng đòi hỏi phải cài IIS trước khi cài phần mềm nhưng bạn sẽ thử cài phần mềm mà không cài IIS và quan sát kết quả xảy ra.

  14. Thử cài đặt bằng cách lựa chọn nhiều nơi lưu tập tin cài đặt khác nhau. Ví dụ thông thường mặc định cái tập tin sẽ được lưu và việc cài đặt sẽ diễn ra ở ở ổ C:Program files, bạn có thể thử chuyển qua chọn lựa ở D: hay F:

  15. Một vài ứng dụng phần mềm đòi hỏi quyền admin (administator (user) permissions) để cài đặt, bạn nên thử sử dụng 2 account khác nhau 1 là admin 1 là không.

  16. Sau khi cài đặt xong cần xem lại cái chức năng, các bản ghi lại sự kiện đã diễn ra, registry entries, v.v...đã được cài thành công hay chưa.

Trên đây là một số trường hợp cần kiểm tra trong khi kiểm thử cài đặt phần mềm. Tuy nhiên vẫn còn rất nhiều điều các bạn cần phải lưu ý, tùy thuộc vào độ phức tạp của phần mềm khi cài đặt. Ví dụ như rất nhiều trường hợp chưa được đề cập trong bài viết mà các bạn có thể tìm hiểu thêm đó là: cài đặt trên một network, cài đặt online, cài đặt bản vá lỗi, kiểm tra cơ sở dữ liệu khi cài đặt, cài đặt các thư viện liên kết động (DLL) dùng chung, …

Hi vọng bài viết đã giúp bạn phần nào có những cái nhìn khái quát về kiểm thử cài đặt cả thủ công và cài đặt.

Nguồn: http://www.softwaretestinghelp.com/software-installationuninstallation-testing/

0