12/08/2018, 15:07

CHƯƠNG 4: CÁC HOẠT ĐỘNG CHÍNH CỦA KIỂM THỬ HIỆU SUẤT TRÊN CÁC ỨNG DỤNG WEB (PHẦN 2)

HOẠT ĐỘNG 1. XÁC ĐỊNH MÔI TRƯƠNG KIỂM THỬ Môi trường kiểm thử hiệu suất của bạn sẽ được thực hiện, cùng với các công cụ và phần cứng cần thiết để thực hiện các kiểm thử hiệu suất, tạo thành môi trường kiểm thử. Trong điều kiện lý tưởng, nếu mục đích là để xác định đặc tính hiệu suất của ứng ...

HOẠT ĐỘNG 1. XÁC ĐỊNH MÔI TRƯƠNG KIỂM THỬ

Môi trường kiểm thử hiệu suất của bạn sẽ được thực hiện, cùng với các công cụ và phần cứng cần thiết để thực hiện các kiểm thử hiệu suất, tạo thành môi trường kiểm thử. Trong điều kiện lý tưởng, nếu mục đích là để xác định đặc tính hiệu suất của ứng dụng trong sản xuất, môi trường kiểm thử là bản sao chính xác của môi trường sản xuất nhưng là với việc bổ sung các công cụ kiểm tra nguồn lực và tải. Bản sao chính xác của môi trường sản xuất là không phổ biến.

Mức độ tương đồng giữa phần cứng, phần mềm và cấu hình mạng của ứng dụng trong điều kiện kiểm thử và trong điều kiện sản xuất thực tế thường là một cân nhắc quan trọng khi quyết định kiểm thử hiệu suất và độ lớn của việc kiểm thử. Điều quan trọng cần nhớ là nó không chỉ là môi trường vật lý và phần mềm ảnh hưởng đến việc kiểm thử hiệu suất, mà còn là các mục tiêu của bài kiểm tra. Thông thường, các kiểm thử hiệu suất được áp dụng đối với cơ sở hạ tầng phần cứng mới được đề xuất để xác nhận giả thiết rằng phần cứng mới sẽ giải quyết các mối quan tâm về hiệu suất hiện tại. Yếu tố then chốt trong việc xác định môi trường kiểm thử của bạn là phải hiểu hoàn toàn những điểm tương đồng và sự khác biệt giữa môi trường kiểm thử và sản xuất. Một số yếu tố quan trọng cần xem xét là:

  • Phần cứng
    • Cấu hình
    • Phần cứng máy (bộ xử lý, RAM, vv)
  • Mạng
    • Kiến trúc mạng và vị trí người dùng cuối
    • Cân bằng tải
    • Cluster và cấu hình Domain Name System (DNS)
  • Công cụ
    • Giới hạn công cụ tải trọng
    • Tác động môi trường của các công cụ giám sát
  • Phần mềm
    • Các phần mềm khác được cài đặt hoặc chạy trong môi trường chia sẻ hoặc môi trường ảo
    • Hạn chế bản quyền phần mềm hoặc những thứ khác
    • Dung lượng lưu trữ và khối lượng dữ liệu hạt giống
    • Mức ghi
  • Yếu tố bên ngoài
    • Khối lượng và loại lưu lượng bổ sung trên mạng
    • Quy trình theo lịch trình hoặc theo đợt, cập nhật hoặc sao lưu
    • Tương tác với các hệ thống khác

Cân nhắc

Xem xét các điểm chính sau đây khi mô tả môi trường kiểm thử:

  • Mặc dù có ít người kiểm thử hiệu suất cài đặt, cấu hình và quản trị ứng dụng đang được thử nghiệm, nhưng nó có lợi cho người kiểm thử để có quyền truy cập vào các máy chủ và phần mềm hoặc cho các quản trị viên làm việc đó.
  • Xác định số lượng và loại dữ liệu mà ứng dụng phải được gieo hạt để mô phỏng các điều kiện thực tế.
  • Xác định các thành phần quan trọng của hệ thống. Có bất kỳ thành phần hệ thống nào đã biết các mối quan tâm về hiệu năng hoạt động? Có bất kỳ điểm tích hợp nào vượt quá khả năng kiểm soát của bạn để thử nghiệm không?
  • Tìm hiểu nhân viên CNTT. Bạn sẽ cần sự hỗ trợ của họ để thực hiện các nhiệm vụ như giám sát lưu lượng mạng tổng thể và cấu hình công cụ tạo tải của bạn để mô phỏng số địa chỉ Giao thức Internet (IP) thực tế.
  • Kiểm tra cấu hình cân bằng tải.
  • Xác nhận độ phân giải tên bằng DNS. Điều này có thể gây ra độ trễ đáng kể khi mở các kết nối cơ sở dữ liệu.
  • Xác nhận rằng các tường lửa, DNS, định tuyến, vv .. đối xử với tải được tạo ra tương tự như một tải mà thường gặp phải trong môi trường sản xuất.
  • Thường thì thích hợp để các quản trị viên hệ thống thiết lập phần mềm theo dõi nguồn lực, công cụ chẩn đoán và các tiện ích khác trong môi trường kiểm thử.

HOẠT ĐỘNG 2. XÁC ĐỊNH CHỈ TIÊU HIỆU SUẤT CHẤP NHẬN

Nói chung nó có ý nghĩa để bắt đầu xác định, hoặc ít nhất là ước tính, các đặc tính hiệu suất mong muốn của ứng dụng sớm trong chu trình sống phát triển. Điều này có thể được thực hiện đơn giản nhất bằng cách ghi nhận các đặc điểm hiệu suất mà người dùng và các bên liên quan của bạn cho rằng đó là hiệu suất tốt. Các ghi chú có thể được định lượng vào một thời gian sau đó. Các loại đặc điểm thường tương ứng với sự hài lòng của người sử dụng hoặc bên liên quan điển hình bao gồm:

  • Thời gian đáp ứng. Ví dụ: danh mục sản phẩm phải được hiển thị trong vòng chưa đầy 3 giây.
  • Thông lượng. Ví dụ: hệ thống phải hỗ trợ 25 lệnh sách / giây.
  • Tận dụng nguồn tài nguyên. Ví dụ, sử dụng bộ xử lý không được nhiều hơn 75 phần trăm. Các tài nguyên quan trọng khác cần được xem xét để thiết lập mục tiêu là bộ nhớ, đầu vào / đầu ra đĩa (I / O), và I / O mạng.

Cân nhắc

Xem xét các điểm chính sau đây khi xác định các tiêu chí thực hiện:

  • Yêu cầu kinh doanh
  • Kỳ vọng của người dùng
  • Nghĩa vụ hợp đồng
  • Tiêu chuẩn tuân thủ quy định và tiêu chuẩn ngành
  • Các Thỏa thuận Cấp dịch vụ (SLA)
  • Mục tiêu sử dụng tài nguyên
  • Các mô hình khối lượng công việc thực tế đa dạng
  • Toàn bộ phạm vi các điều kiện tải dự kiến
  • Điều kiện áp suất hệ thống
  • Toàn bộ kịch bản và hoạt động của hợp phần
  • Các chỉ số hoạt động chính
  • Bản phát hành trước của ứng dụng
  • Ứng dụng của đối thủ cạnh tranh
  • Mục tiêu tối ưu hóa
  • Các yếu tố an toàn, chỗ cho sự tăng trưởng và khả năng mở rộng
  • Lịch trình, nhân sự, ngân sách, tài nguyên và các ưu tiên khác

HOẠT ĐỘNG 3. KẾ HOẠCH VÀ THIẾT KẾ TRƯỜNG HỢP KIỂM THỬ

Lập kế hoạch và thiết kế thử nghiệm bao gồm việc xác định các kịch bản sử dụng chính, xác định tính phù hợp thích hợp trên người dùng, xác định và tạo ra dữ liệu thử nghiệm, và chỉ định các số liệu cần thu thập. Cuối cùng, các mục này sẽ cung cấp nền tảng cho khối lượng công việc và hồ sơ tải công việc. Khi thiết kế và lên kế hoạch kiểm tra với mục đích mô tả hiệu suất sản xuất, mục tiêu của bạn là tạo ra các mô phỏng trong thế giới thực để cung cấp dữ liệu đáng tin cậy cho phép tổ chức của bạn đưa ra các quyết định kinh doanh. Thiết kế kiểm thử thực tế sẽ làm tăng đáng kể mức độ liên quan và hữu ích của dữ liệu kết quả. Các kịch bản sử dụng chính cho ứng dụng điển hình trong quá trình xác định các đặc tính hiệu năng mong muốn của ứng dụng. Nếu đây không phải là trường hợp cho dự án thử nghiệm của bạn, bạn sẽ cần phải xác định rõ ràng kịch bản sử dụng có giá trị nhất đối với kịch bản. Xem xét những điều sau khi xác định các kịch bản sử dụng chính:

  • Kịch bản sử dụng có liên quan đến hợp đồng
  • Các kịch bản sử dụng ngụ ý hoặc bắt buộc bởi các mục tiêu và mục đích kiểm tra hiệu năng
  • (Các) kịch bản sử dụng phổ biến nhất
  • Kịch bản sử dụng quan trọng về kinh doanh
  • Kịch bản sử dụng có hiệu suất cao
  • Các kịch bản sử dụng mối quan tâm về kỹ thuật
  • Các kịch bản sử dụng mối quan tâm của các bên liên quan
  • Các kịch bản sử dụng có độ nhìn cao

Khi được xác định, nắm bắt và báo cáo chính xác, số liệu cung cấp thông tin về hiệu quả hoạt động của ứng dụng so với các đặc tính hiệu suất mong muốn của bạn. Ngoài ra, số liệu có thể giúp bạn xác định các khu vực có vấn đề và tắc nghẽn trong ứng dụng của bạn. Cần xác định các chỉ số liên quan đến các tiêu chí chấp nhận thực hiện trong quá trình kiểm thử để phương pháp thu thập các chỉ số này có thể được tích hợp vào các bài kiểm tra khi thực hiện thiết kế kiểm tra. Khi xác định số liệu, hãy sử dụng các đặc điểm hoặc chỉ số mong muốn cụ thể liên quan trực tiếp hoặc gián tiếp đến các đặc điểm đó.

Cân nhắc

Xem xét các điểm chính sau đây khi lập kế hoạch và thiết kế các bài kiểm thử:

  • Việc Thiết kế kiểm thử thực tế rất nhạy cảm với sự phụ thuộc bên ngoài sự kiểm soát của hệ thống, chẳng hạn như con người, hoạt động mạng, và các hệ thống khác tương tác với các ứng dụng.
  • Thiết kế kiểm tthử thực tế dựa trên những gì bạn mong muốn tìm thấy trong sử dụng trong thế giới thực chứ không phải lý thuyết hoặc dự báo.
  • Thiết kế kiểm thử thực tế mang lại kết quả đáng tin cậy hơn và do đó nâng cao giá trị của việc kiểm tra hiệu năng.
  • Các cuộc kiểm thử về mức thành phần là các phần không thể tách rời của kiểm thử thực tế.
  • Thiết kế kiểm thử thực tế có thể tốn kém hơn và mất nhiều thời gian để thực hiện, nhưng chúng cung cấp độ chính xác cao hơn cho doanh nghiệp và các bên liên quan.
  • Xóa bỏ kết quả thực hiện từ các cuộc kiểm thử không thực tế có thể tạo ra những sai sót không chính xác khi phạm vi hệ thống tăng lên và thường dẫn đến các quyết định kém.
  • Liên quan đến các nhà phát triển và nhà quản lý trong quá trình xác định những số liệu có khả năng gia tăng giá trị và phương pháp tốt nhất tích hợp chụp những số liệu vào các cuộc kiểm thử. Hãy cẩn thận cho phép các công cụ của bạn ảnh hưởng đến thiết kế kiểm thử của bạn. Kiểm thử tốt hầu như luôn luôn là kết quả của việc thiết kế các cuộc kiểm thử trên giả định rằng họ có thể được thực thi và sau đó thích nghi với các cuộc kiểm thử hoặc công cụ này khi giả định rằng được chứng minh sai sự thật, chứ không phải là bằng cách không thiết kế các cuộc kiểm thử cụ thể dựa trên giả định rằng bạn không có quyền truy cập vào một Công cụ để thực hiện kiểm thử.

Thiết kế kiểm thử thực tế bao gồm:

  • Mô phỏng thực tế của sự chậm trễ và thời gian suy nghĩ của người dùng, điều này rất quan trọng đối với tính chính xác của cuộc kiểm thử.
  • Người dùng bỏ qua, nếu người dùng có thể từ bỏ một nhiệm vụ vì bất kỳ lý do nào.
  • Lỗi thường gặp của người dùng.

HOẠT ĐỘNG 4. CẤU HÌNH MÔI TRƯỜNG KIỂM THỬ

Chuẩn bị môi trường kiểm thử, công cụ và tài nguyên để thực hiện thiết kế kiểm thử và thực hiện kiểm thử trước khi các tính năng và thành phần có sẵn để thử nghiệm có thể làm tăng đáng kể lượng thử nghiệm có thể được thực hiện trong thời gian những tính năng và các thành phần có sẵn. Các công cụ giám sát ứng dụng và tải trọng hầu như không bao giờ dễ dàng để khởi động và chạy như bạn mong đợi. Cho dù các vấn đề phát sinh từ việc thiết lập các môi trường mạng riêng biệt, mua sắm phần cứng, điều phối một ngân hàng dành riêng cho các địa chỉ IP cho giả mạo IP, hoặc sự tương thích giữa phiên bản phần mềm và hệ điều hành máy chủ, vấn đề luôn xuất hiện từ một nơi nào đó. Bắt đầu sớm, để đảm bảo rằng các vấn đề được giải quyết trước khi bạn bắt đầu thử nghiệm. Ngoài ra, lập kế hoạch định kỳ cấu hình lại, cập nhật, thêm vào hoặc bằng cách khác nâng cao môi trường tải trọng của bạn và các công cụ liên quan trong suốt dự án. Ngay cả khi ứng dụng đang được kiểm thử vẫn giữ nguyên và công cụ tạo tải đang hoạt động đúng cách, nhiều khả năng số liệu bạn muốn thu thập sẽ thay đổi. Điều này thường ngụ ý một số mức độ thay đổi, hoặc bổ sung, các công cụ giám sát.

Cân nhắc

Xem xét các điểm chính sau đây khi cấu hình môi trường kiểm thử:

  • Xác định lượng tải bạn có thể tạo ra trước khi máy phát tải đạt đến nút cổ chai. Thông thường, máy phát tải gặp tắc nghẽn đầu tiên trong bộ nhớ và sau đó trong bộ xử lý.
  • Mặc dù nó có thể giống như một thực tiễn chung, điều quan trọng là xác minh rằng đồng hồ hệ thống được đồng bộ hóa trên tất cả các máy tính từ đó dữ liệu nguồn sẽ được thu thập. Làm như vậy có thể giúp bạn tiết kiệm được thời gian đáng kể và ngăn bạn không phải vất bỏ toàn bộ dữ liệu và lặp lại các bài kiểm tra sau khi đồng bộ hóa đồng hồ hệ thống.
  • Xác nhận tính chính xác của việc thực hiện kiểm tra tải đối với các thành phần phần cứng như thiết bị chuyển mạch và card mạng. Ví dụ: đảm bảo đúng chế độ chế độ song công và mô phỏng đúng độ trễ và băng thông của người dùng.
  • Xác thực tính chính xác của việc thực hiện kiểm tra tải liên quan đến các cụm máy chủ trong cấu hình cân bằng tải. Xem xét sử dụng các kỹ thuật kiểm tra tải để tránh áp lực của khách hàng với máy chủ do họ sử dụng cùng một địa chỉ IP. Hầu hết các công cụ tạo công suất cung cấp khả năng mô phỏng việc sử dụng các địa chỉ IP khác nhau trên các máy phát điện tải.
  • Theo dõi việc sử dụng tài nguyên (CPU, mạng, bộ nhớ, đĩa và các giao dịch theo thời gian) trên các máy chủ trong cấu hình cân bằng tải trong quá trình kiểm tra tải để xác nhận tải được phân phối.

To be continued...

0