Untitled

mail@pastecode.io avatar
unknown
plain_text
7 months ago
6.0 kB
3
Indexable
Never
Phần 6.1.6: Hỗ trợ công cụ cho hiệu suất và giám sát

Công cụ hỗ trợ cho hiệu suất và giám sát được mô tả trong phần này hỗ trợ việc 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ác công cụ phân tích động (D) được gọi là 'động' vì chúng yêu cầu mã được thực thi. Chúng là các công cụ 'phân tích' thay vì 'kiểm thử' vì chúng phân tích những gì đang diễn ra 'bên hậu trường' trong khi phần mềm đang chạy (dù đó là trong quá trình thực thi các trường hợp kiểm thử hoặc khi đượ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 đi dần theo thời gian, nhưng cải thiện đáng kể sau khi bạn khởi động lại nó, điều này có thể là do 'rò rỉ bộ nhớ', khi các chương trình không giải phóng đúng các khối bộ nhớ trở lại 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 khôi phục lại tất cả bộ nhớ đã bị mất, vì vậy hiệu suất của hệ thống đã đượ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 tử con trỏ như con trỏ rỗng;
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 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 mềm trung gian, khi kiểm thử bảo mật hoặc khi tìm kiếm các lỗi về tính ổn định.

Một hình thức khác của phân tích động cho các trang web là kiểm tra xem mỗi liên kết có thực sự liên kết đến điều gì khác không (loại công cụ này có thể được gọi là 'web spider'). Công cụ này không biết liệu bạn đã liên kết đúng trang hay chưa, 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.

Phần 6.1.7: Hỗ trợ công cụ cho các lĩnh vực ứng dụng cụ thể (Kl)

Trong chương này, chúng tôi đã mô tả các công cụ theo phân loại chức năng chung của chúng. Tuy nhiên, cũng có sự chuyên môn hóa khác biệt 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ông cụ kiểm thử hiệu suất cho các hệ thống back-office. Có các công cụ phân tích tĩnh dành cho các nền tảng phát triển cụ thể 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á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ư ứng dụng web hoặc hệ thống nhúng.

Phần 6.1.8: Hỗ trợ công cụ bằng cách sử dụng các công cụ khác

Các công cụ mà chúng tôi đã mô tả trong chương này không phải là duy nhất những công cụ mà một người kiểm thử có thể sử dụng. Bạn có thể không thường xuyên nghĩ về một bộ 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 để lưu trữ thiết kế kiểm thử, kịch bản kiểm thử hoặc dữ liệu kiểm thử. Kiểm thử viên 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 nhà phát triển khi gỡ lỗi, để giúp định vị các lỗi và kiểm tra các sửa chữa của họ, cũng là các công cụ kiểm thử.

Nhà phát triển sử dụng các công cụ gỡ lỗi khi xác định và sửa các lỗi. Các công cụ gỡ lỗi cho phép họ chạy các kiểm thử cụ thể và cục bộ để đảm bảo rằng họ đã xác định chính xác nguyên nhân của lỗi và xác nhận rằng sự thay đổi vào mã sẽ thực sự sửa chữa lỗi.

Đó là một ý tưởng tốt để xem xét bất kỳ loại công cụ nào có sẵn cho bạn để tìm cách nó có thể được sử dụng để hỗ trợ các hoạt động kiểm thử. Ví dụ, kiểm thử viên có thể sử dụng kịch bản Perl để so sánh kết quả kiểm thử.