Untitled
unknown
plain_text
a year ago
8.5 kB
2
Indexable
Never
6.1.6 Hỗ trợ công cụ cho hiệu suất và giám sát Các công cụ mô tả trong phần này hỗ trợ kiểm thử có thể được thực hiện trên một hệ thống khi nó đang hoạt động, tức là khi nó đang chạy. Điều này có thể xảy ra trong quá trình kiểm thử hoặc sau khi một hệ thống được triển khai vào hoạt động thực tế. Công cụ phân tích động (D) Công cụ phân tích động được gọi là 'động' vì chúng yêu cầu mã nguồn đang chạy. Chúng là các công cụ 'phân tích' chứ không phải là các công cụ 'kiểm thử' vì chúng phân tích những gì đang xảy ra 'phía sau hậu trường' trong khi phần mềm đang chạy (có thể là đang thực hiện các trường hợp kiểm thử hoặc đang được sử dụng trong hoạt động thực tế). Một so sánh với một chiếc xe có thể hữu ích ở đây. Nếu bạn đến xem một chiếc xe để mua, bạn có thể ngồi vào đó để xem nó có thoải mái không và nghe tiếng cửa kêu ra sao - điều này sẽ là phân tích tĩnh vì xe không đang được lái. Nếu bạn đi thử xe, sau đó bạn sẽ kiểm tra xem xe hoạt động như bạn mong đợi không (ví dụ, rẽ phải khi bạn xoay vô lăng theo chiều kim đồng hồ) - điều này sẽ là một ca kiểm thử. Khi chiếc xe đang hoạt động, nếu bạn kiểm tra áp suất dầu hoặc dầu phanh, điều này sẽ là phân tích động - nó chỉ có thể thực hiện khi động cơ đang hoạt động, nhưng nó không phải là một trường hợp kiểm thử. Khi thời gian phản hồi của máy tính cá nhân của bạn trở nên chậm dần đi theo thời gian, nhưng được cải thiện đáng kể sau khi bạn khởi động lại, điều này có thể do có 'rò rỉ bộ nhớ', nơi các chương trình không giải phóng đúng các khối bộ nhớ trở lại cho hệ điều hành. Cuối cùng, hệ thống sẽ hết bộ nhớ hoàn toàn và dừng lại. Khởi động lại sẽ khôi phục lại toàn bộ bộ nhớ đã mất, vì vậy hiệu suất của hệ thống sẽ được khôi phục lại về trạng thái bình thường của nó. Các tính năng hoặc đặc điểm của các công cụ phân tích động bao gồm hỗ trợ cho: • phát hiện rò rỉ bộ nhớ; • xác định lỗi toán học con trỏ như con trỏ null; • xác định phụ thuộc thời gian. Những công cụ này thường được sử dụng bởi các nhà phát triển trong việc kiểm thử thành phần và kiểm thử tích hợp thành phần, ví dụ khi kiểm thử phần trung gian, khi kiểm thử bảo mật hoặc khi tìm kiếm các khuyết điểm về tính ổn định. Một hình thức khác của phân tích động cho trang web là kiểm tra xem mỗi liên kết có thực sự liên kết đến một trang khác không (loại công cụ này có thể được gọi là 'web spider'). Công cụ không biết liệu bạn có liên kết đúng trang hay không, nhưng ít nhất nó có thể tìm thấy các liên kết chết, điều này có thể hữu ích. Công cụ kiểm thử load' test, volume test và 'stress' test Các công cụ kiểm thử hiệu suất liên quan đến việc kiểm thử ở mức hệ thống để xem hệ thống có chịu được một lượng sử dụng lớn hay không. load' test kiểm tra xem hệ thống có thể đối phó với số giao dịch được dự kiến. Kvolume test kiểm tra xem hệ thống có thể đối phó với một lượng dữ liệu lớn, ví dụ, nhiều trường trong một bản ghi, nhiều bản ghi trong một tập tin, v.v. 'stress' test là một kiểm thử vượt ra ngoài việc sử dụng thông thường của hệ thống (để xem điều gì sẽ xảy ra ngoài kỳ vọng thiết kế của nó), liên quan đến tải hoặc thể tích. Để đánh giá hiệu suất, công cụ cần tạo ra một loại hoạt động trên hệ thống, và điều này có thể được thực hiện theo cách khác nhau. các loại hoạt động khác nhau, độ trễ thời gian và các tham số khác. Việc mô phỏng môi trường người dùng cuối hoặc các hồ sơ người dùng cuối một cách đủ đáng để có kết quả thực tế thường rất quan trọng. Các tính năng hoặc đặc điểm của các công cụ kiểm thử hiệu suất bao gồm hỗ trợ cho: • tạo tải trên hệ thống được kiểm thử; • đo thời gian của các giao dịch cụ thể khi tải trên hệ thống thay đổi; • đo thời gian phản hồi trung bình; • tạo đồ thị hoặc biểu đồ về các phản hồi theo thời gian. Công cụ giám sát Các công cụ giám sát được sử dụng để liên tục theo dõi trạng thái của hệ thống đang sử dụng, nhằm có cảnh báo sớm nhất về vấn đề và cải thiện dịch vụ. Có các công cụ giám sát cho máy chủ, mạng, cơ sở dữ liệu, bảo mật, hiệu suất, sử dụng trang web và internet, và ứng dụng. Các tính năng hoặc đặc điểm của các công cụ giám sát bao gồm hỗ trợ cho: • xác định vấn đề và gửi thông báo cảnh báo cho quản trị viên (ví dụ, quản trị viên mạng); • ghi lại thông tin thời gian thực và lịch sử; • tìm cài đặt tối ưu; • giám sát số người dùng trên một mạng; • giám sát lưu lượng mạng (hoặc thời gian thực hoặc bao gồm một khoảng thời gian nhất định của hoạt động với phân tích được thực hiện sau đó). 6.1.7 Hỗ trợ công cụ cho các lĩnh vực ứng dụng cụ thể (Kỹ thuật) Trong chương này đã mô tả các công cụ dựa trên phân loại chức năng chung của chúng. Tuy nhiên, còn có các sự chuyên biệt khác của các công cụ trong các phân loại này. Ví dụ, có các công cụ kiểm thử hiệu suất dựa trên web cũng như các công cụ kiểm thử hiệu suất cho các hệ thống nền văn phòng. Có các công cụ phân tích tĩnh cho các nền tảng phát triển và ngôn ngữ lập trình cụ thể, vì mỗi ngôn ngữ lập trình và mỗi nền tảng đều có đặc điểm riêng biệt. Có các công cụ phân tích động tập trung vào các vấn đề bảo mật, cũng như các công cụ phân tích động dành cho các hệ thống nhúng. Các bộ công cụ thương mại có thể được đóng gói cho các lĩnh vực ứng dụng cụ thể như dựa trên web hoặc hệ thống nhúng. 6.1.8 Hỗ trợ công cụ sử dụng các công cụ khác Các công cụ được mô tả trong chương này không phải là duy nhất mà một người kiểm thử có thể sử dụng. Bạn có thể không nghĩ đến một trình xử lý văn bản hoặc một bảng tính như một công cụ kiểm thử, nhưng chúng thường được sử dụng để test designs, test scripts, hoặc là test data. Người kiểm thử cũng có thể sử dụng SQL để thiết lập và truy vấn cơ sở dữ liệu chứa dữ liệu kiểm thử. Các công cụ được sử dụng bởi các nhà phát triển khi gỡ lỗi, để giúp xác định vị trí các lỗi và kiểm tra các sửa lỗi của họ, cũng là các công cụ kiểm thử. Các nhà phát triển sử dụng debugging tools khi xác định và sửa lỗi. Debugging tools cho phép họ chạy các kiểm thử cá nhân và cục bộ để đảm bảo rằng họ đã xác định đúng nguyên nhân của lỗi và xác nhận rằng thay đổi của họ vào mã nguồn sẽ thực sự sửa lỗi. Đây là một ý tưởng tốt để xem xét mọi loại công cụ có sẵn cho bạn để tìm cách chúng có thể được sử dụng để hỗ trợ các hoạt động kiểm thử. Ví dụ, người kiểm thử có thể sử dụng Perl scripts để giúp so sánh kết quả kiểm thử.