Công cụ kiểm tra LoadRunner của HP là gì? Kiến trúc, thành phần

Mục lục:

Anonim

LoadRunner là gì?

LoadRunner là một công cụ Kiểm tra Hiệu suất được Mercury tiên phong vào năm 1999. LoadRunner sau đó được HPE mua lại vào năm 2006. Năm 2016, LoadRunner được MicroFocus mua lại.

LoadRunner hỗ trợ các công cụ phát triển, công nghệ và giao thức truyền thông khác nhau. Trên thực tế, đây là công cụ duy nhất trên thị trường hỗ trợ một số lượng lớn các giao thức như vậy để tiến hành Kiểm tra hiệu suất. Kết quả kiểm tra hiệu suất được tạo ra bởi phần mềm LoadRunner được sử dụng làm điểm chuẩn so với các công cụ khác

Trong hướng dẫn này, bạn sẽ học-

  • Tại sao LoadRunner?
  • Tại sao bạn cần Kiểm tra hiệu suất?
  • Kiến trúc LoadRunner là gì?
  • Lộ trình kiểm tra hiệu suất: Các bước chi tiết
  • Câu hỏi thường gặp

Tại sao LoadRunner?

LoadRunner không chỉ là công cụ tiên phong trong Kiểm tra Hiệu suất, mà nó còn dẫn đầu thị trường trong mô hình Kiểm tra Hiệu suất. Trong một đánh giá gần đây, LoadRunner chiếm khoảng 85% thị phần trong ngành Kiểm thử hiệu suất.

Nói chung, công cụ LoadRunner hỗ trợ RIA (Ứng dụng Internet phong phú), Web 2.0 (HTTP / HTML, Ajax, Flex và Silverlight, v.v.), Di động, SAP, Oracle, MS SQL Server, Citrix, RTE, Mail và trên hết là Windows Socket. Không có công cụ cạnh tranh nào trên thị trường có thể cung cấp nhiều loại giao thức như vậy được cung cấp trong một công cụ duy nhất.

Điều thuyết phục hơn để chọn LoadRunner trong kiểm thử phần mềm là độ tin cậy của công cụ này. Công cụ LoadRunner từ lâu đã tạo dựng được danh tiếng vì bạn thường thấy khách hàng xác minh chéo các điểm chuẩn hiệu suất của bạn bằng cách sử dụng LoadRunner. Bạn sẽ thấy nhẹ nhõm nếu bạn đã sử dụng LoadRunner cho nhu cầu kiểm tra hiệu suất của mình.

Phần mềm LoadRunner được tích hợp chặt chẽ với các Công cụ HP khác như Kiểm tra chức năng hợp nhất (QTP) & ALM (Quản lý vòng đời ứng dụng) với quyền cho phép bạn thực hiện các Quy trình kiểm tra từ đầu đến cuối.

LoadRunner hoạt động trên cơ sở chính là mô phỏng Người dùng ảo trên ứng dụng chủ đề. Những Người dùng Ảo này còn được gọi là VUsers, sao chép các yêu cầu của khách hàng và mong đợi phản hồi tương ứng để chuyển một giao dịch.

Tại sao bạn cần Kiểm tra hiệu suất?

Khoản lỗ ước tính là 4,4 tỷ doanh thu được ghi nhận hàng năm do hiệu suất web kém.

Trong thời đại Web 2.0 ngày nay, người dùng nhấp chuột đi nếu một trang web không phản hồi trong vòng 8 giây. Hãy tưởng tượng bạn đang đợi 5 giây khi tìm kiếm Google hoặc yêu cầu kết bạn trên Facebook. Hậu quả của thời gian ngừng hoạt động thường tàn khốc hơn bao giờ hết. Chúng tôi có các ví dụ như những dịch vụ gần đây đã thành công với Ngân hàng Trực tuyến Bank of America, Amazon Web Services, Intuit hoặc Blackberry.

Theo Dunn & Bradstreet, 59% công ty trong danh sách Fortune 500 trải qua thời gian ngừng hoạt động ước tính 1,6 giờ mỗi tuần. Xem xét công ty Fortune 500 trung bình với tối thiểu 10.000 nhân viên đang trả 56 đô la mỗi giờ, phần lao động của chi phí thời gian ngừng hoạt động cho một tổ chức như vậy sẽ là 896.000 đô la hàng tuần, tương đương hơn 46 triệu đô la mỗi năm.

Chỉ 5 phút ngừng hoạt động của Google.com (19 tháng 8 - 13) được ước tính sẽ khiến gã khổng lồ tìm kiếm mất tới 545.000 đô la.

Người ta ước tính rằng các công ty đã mất doanh thu trị giá $ 1100 mỗi giây do sự cố gần đây của Amazon Web Service Outage.

Khi một hệ thống phần mềm được triển khai bởi một tổ chức, nó có thể gặp phải nhiều tình huống có thể dẫn đến độ trễ hiệu suất. Một số yếu tố khiến hiệu suất giảm tốc, một số ví dụ có thể bao gồm:

  • Tăng số lượng bản ghi hiện diện trong cơ sở dữ liệu
  • Tăng số lượng yêu cầu đồng thời được thực hiện cho hệ thống
  • một số lượng lớn hơn người dùng truy cập vào hệ thống tại một thời điểm so với trước đây

Kiến trúc LoadRunner là gì?

Nói chung, kiến ​​trúc của HP LoadRunner rất phức tạp nhưng vẫn dễ hiểu.

Sơ đồ kiến ​​trúc LoadRunner

Giả sử bạn được chỉ định kiểm tra hiệu suất của Amazon.com cho 5000 người dùng

Trong tình huống thực tế, tất cả 5000 người dùng này sẽ không ở trang chủ mà ở một phần khác của trang web. Làm thế nào chúng ta có thể mô phỏng khác nhau

VUGen:

VUGen hoặc Virtual User Generator là một IDE (Môi trường Phát triển Tích hợp) hoặc một trình soạn thảo mã hóa phong phú. VUGen được sử dụng để tái tạo hành vi của Hệ thống đang tải (SUL). VUGen cung cấp tính năng "ghi âm" ghi lại các giao tiếp đến và đi từ máy khách và máy chủ dưới dạng một tập lệnh được mã hóa - còn được gọi là tập lệnh VUser.

Vì vậy, xem xét ví dụ trên, VUGen có thể ghi lại để mô phỏng các quy trình kinh doanh sau:

  1. Lướt Trang Sản phẩm của Amazon.com
  2. Thủ tục thanh toán
  3. Xử lý thanh toán
  4. Kiểm tra trang MyAccount

Bộ điều khiển

Khi tập lệnh VUser được hoàn thiện, Bộ điều khiển là một trong những thành phần LoadRunner chính điều khiển mô phỏng Tải bằng cách quản lý, ví dụ:

  • Có bao nhiêu VUser để mô phỏng theo từng quy trình kinh doanh hoặc VUser Group
  • Hành vi của VUsers (dốc lên, dốc xuống, tính chất đồng thời hoặc đồng thời, v.v.)
  • Bản chất của tình huống tải, ví dụ như Cuộc sống thực hoặc Định hướng mục tiêu hoặc xác minh SLA
  • Sử dụng kim phun nào, có bao nhiêu VUsers so với mỗi kim phun
  • Đối chiếu kết quả định kỳ
  • Giả mạo IP
  • Báo cáo lỗi
  • Báo cáo giao dịch, v.v.

Lấy một phép loại suy từ bộ điều khiển ví dụ của chúng tôi sẽ thêm tham số sau vào Tập lệnh VUGen

1) 3500 người dùng đang lướt trang sản phẩm của Amazon.com

2) 750 người dùng đang trong thanh toán

3) 500 người dùng đang thực hiện Xử lý thanh toán

4) 250 người dùng CHỈ kiểm tra trang tài khoản của tôi sau khi 500 người dùng đã thực hiện xử lý thanh toán

Thậm chí có thể xảy ra các tình huống phức tạp hơn

  1. Bắt đầu 5 VUser sau mỗi 2 giây cho đến khi đạt được 3500 VUsers (lướt trang sản phẩm của Amazon).
  2. Lặp lại trong 30 phút
  3. Tạm dừng lặp lại cho 25 VUsers
  4. Bắt đầu lại 20 VUSers
  5. Khởi tạo 2 người dùng (trong Checkout, Payment Process, MyAccounts Page) mỗi giây.
  6. 2500 VUsers sẽ được tạo ra tại Máy A
  7. 2500 VUsers sẽ được tạo ra ở Máy B

Máy đại lý / Máy phát điện / Máy phun

Bộ điều khiển LoadRunner của HP chịu trách nhiệm mô phỏng hàng nghìn VUser - những VUser này tiêu thụ tài nguyên phần cứng, chẳng hạn như bộ xử lý và bộ nhớ - do đó đặt ra giới hạn cho máy đang mô phỏng chúng. Bên cạnh đó, Bộ điều khiển mô phỏng các VUser này từ cùng một máy (nơi Bộ điều khiển cư trú) và do đó kết quả có thể không chính xác. Để giải quyết mối quan tâm này, tất cả VUser được trải rộng trên nhiều máy khác nhau, được gọi là Máy phát tải hoặc Máy phun tải.

Như một thông lệ chung, Bộ điều khiển nằm trên một máy khác và tải được mô phỏng từ các máy khác. Tùy thuộc vào giao thức của tập lệnh VUser và thông số kỹ thuật của máy, một số Đầu phun tải có thể được yêu cầu để mô phỏng đầy đủ. Ví dụ: VUser cho một tập lệnh HTTP sẽ yêu cầu 2-4MB mỗi VUser để mô phỏng, do đó, 4 máy có RAM 4 GB mỗi máy sẽ được yêu cầu để mô phỏng tải 10.000 VUser.

Lấy Tương tự từ Ví dụ Amazon của chúng tôi, đầu ra của thành phần này sẽ là

Phân tích:

Khi các kịch bản Load đã được thực thi, vai trò của các thành phần " Phân tích " của LoadRunner sẽ xuất hiện.

Trong quá trình thực thi, Bộ điều khiển tạo kết xuất kết quả ở dạng thô và chứa thông tin như, phiên bản LoadRunner nào đã tạo kết xuất kết quả này và cấu hình là gì.

Tất cả các lỗi và ngoại lệ được ghi vào cơ sở dữ liệu truy cập của Microsoft, có tên là output.mdb. Thành phần "Phân tích" đọc tệp cơ sở dữ liệu này để thực hiện các loại phân tích khác nhau và tạo đồ thị.

Các biểu đồ này hiển thị các xu hướng khác nhau để hiểu lý do đằng sau các lỗi và sự cố khi tải; do đó giúp xác định xem có cần tối ưu hóa trong SUL, Máy chủ (ví dụ: JBoss, Oracle) hoặc cơ sở hạ tầng hay không.

Dưới đây là một ví dụ mà băng thông có thể đang tạo ra một nút cổ chai. Giả sử máy chủ Web có dung lượng 1GBps trong khi lưu lượng dữ liệu vượt quá dung lượng này khiến người dùng tiếp theo bị ảnh hưởng. Để xác định hệ thống phục vụ cho những nhu cầu như vậy, Kỹ sư hiệu suất cần phân tích hành vi của ứng dụng với tải bất thường. Dưới đây là biểu đồ LoadRunner tạo ra để lấy ra băng thông.

Lộ trình kiểm tra hiệu suất: Các bước chi tiết

Lộ trình kiểm tra hiệu suất có thể được chia thành 5 bước:

  • Lập kế hoạch kiểm tra tải
  • Tạo tập lệnh VUGen
  • Tạo kịch bản
  • Thực thi kịch bản
  • Phân tích kết quả (tiếp theo là điều chỉnh hệ thống)

Bây giờ bạn đã cài đặt xong LoadRunner, chúng ta hãy hiểu từng bước liên quan đến quá trình này.

Các bước liên quan đến quy trình Kiểm tra hiệu suất

Lập kế hoạch cho Kiểm tra tải

Lập kế hoạch cho Kiểm tra hiệu suất khác với lập kế hoạch SIT (Kiểm tra tích hợp hệ thống) hoặc UAT (Kiểm tra sự chấp nhận của người dùng). Việc lập kế hoạch có thể được chia thành các giai đoạn nhỏ như mô tả dưới đây:

Tập hợp nhóm của bạn

Khi bắt đầu với Thử nghiệm LoadRunner, tốt nhất nên ghi lại những ai sẽ tham gia vào hoạt động từ mỗi nhóm tham gia trong quá trình này.

Quản lý dự án:

Đề cử người quản lý dự án, người sẽ sở hữu hoạt động này và đóng vai trò là người chỉ đạo để báo cáo.

Chuyên gia chức năng / Nhà phân tích kinh doanh:

Cung cấp Phân tích sử dụng SUL & cung cấp kiến ​​thức chuyên môn về chức năng kinh doanh của trang web / SUL

Chuyên gia kiểm tra hiệu suất:

Tạo các bài kiểm tra hiệu suất tự động và thực hiện các kịch bản tải

Kiến trúc hệ thống:

Cung cấp kế hoạch chi tiết của SUL

Nhà phát triển web và SME:

  • Duy trì trang web và cung cấp các khía cạnh giám sát
  • Phát triển trang web và sửa lỗi

Quản trị hệ thống:

  • Duy trì các máy chủ liên quan trong suốt một dự án thử nghiệm

Phác thảo các ứng dụng và Quy trình kinh doanh liên quan:

Kiểm tra tải thành công yêu cầu bạn phải có kế hoạch thực hiện một số quy trình kinh doanh nhất định. Quy trình kinh doanh bao gồm các bước được xác định rõ ràng tuân thủ các giao dịch kinh doanh mong muốn - để đạt được các mục tiêu kiểm tra tải của bạn.

Một số liệu yêu cầu có thể được chuẩn bị để gợi ra tải của người dùng trên hệ thống. Dưới đây là một ví dụ về hệ thống chấm công trong một công ty:

Trong ví dụ trên, các số liệu đề cập đến số lượng người dùng kết nối với ứng dụng (SUL) tại một giờ nhất định. Chúng tôi có thể trích xuất số lượng người dùng tối đa được kết nối với quy trình kinh doanh vào bất kỳ giờ nào trong ngày được tính ở cột ngoài cùng bên phải.

Tương tự, chúng ta có thể kết luận tổng số người dùng đã kết nối với ứng dụng (SUL) tại bất kỳ giờ nào trong ngày. Điều này được tính ở hàng cuối cùng.

Hai dữ kiện trên kết hợp cho chúng ta biết tổng số người dùng mà chúng ta cần để kiểm tra hiệu suất của hệ thống.

Xác định các thủ tục quản lý dữ liệu thử nghiệm

Các số liệu thống kê và quan sát rút ra từ Kiểm tra hiệu suất bị ảnh hưởng rất nhiều bởi nhiều yếu tố như đã trình bày trước đó. Việc chuẩn bị Dữ liệu Kiểm tra cho Kiểm tra Hiệu suất có ý nghĩa quan trọng. Đôi khi, một quy trình kinh doanh cụ thể sử dụng một tập dữ liệu và tạo ra một tập dữ liệu khác. Lấy ví dụ dưới đây:

  • Người dùng 'A' tạo một hợp đồng tài chính và gửi nó để xem xét.
  • Một người dùng khác 'B' phê duyệt 200 hợp đồng mỗi ngày do người dùng 'A' tạo
  • Một người dùng khác 'C' thanh toán khoảng 150 hợp đồng mỗi ngày được người dùng 'B' chấp thuận

Trong tình huống này, Người dùng B cần có 200 hợp đồng được 'tạo' trong hệ thống. Bên cạnh đó, người dùng C cần 150 hợp đồng được "phê duyệt" để mô phỏng tải 150 người dùng.

Điều này hoàn toàn có nghĩa là bạn phải tạo ít nhất 200 + 150 = 350 hợp đồng.

Sau đó, phê duyệt 150 hợp đồng để làm dữ liệu thử nghiệm cho Người dùng C - 200 hợp đồng còn lại sẽ dùng làm Dữ liệu thử nghiệm cho Người dùng B.

Màn hình phác thảo

Suy đoán từng yếu tố có thể ảnh hưởng đến hiệu suất của hệ thống. Ví dụ: việc giảm phần cứng sẽ có tác động tiềm tàng đến hiệu suất SUL (Hệ thống đang tải).

Tranh thủ tất cả các yếu tố và thiết lập màn hình để bạn có thể đánh giá chúng. Dưới đây là một số ví dụ:

  • Bộ xử lý (dành cho Máy chủ Web, Máy chủ Ứng dụng, Máy chủ Cơ sở dữ liệu và Bộ phun)
  • RAM (dành cho Máy chủ Web, Máy chủ Ứng dụng, Máy chủ Cơ sở dữ liệu và Bộ phun)
  • Máy chủ Web / Ứng dụng (ví dụ: IIS, JBoss, Máy chủ Jaguar, Tomcat, v.v.)
  • Máy chủ DB (kích thước PGA và SGA trong trường hợp Máy chủ Oracle và MSSQL, SP, v.v.)
  • Sử dụng băng thông mạng
  • NIC bên trong và bên ngoài trong trường hợp phân cụm
  • Load Balancer (và nó đang phân phối tải đồng đều trên tất cả các nút của cụm)
  • Dòng dữ liệu (tính toán lượng dữ liệu di chuyển đến và đi từ máy khách và máy chủ - sau đó tính toán xem dung lượng của NIC có đủ để mô phỏng X số lượng người dùng hay không)

Tạo tập lệnh VUGen

Bước tiếp theo sau khi lập kế hoạch là tạo các tập lệnh VUser.

Tạo kịch bản

Bước tiếp theo là tạo Kịch bản tải của bạn

Thực thi kịch bản

Thực thi kịch bản là nơi bạn mô phỏng tải của người dùng trên máy chủ bằng cách hướng dẫn nhiều VUser thực hiện các tác vụ đồng thời.

Bạn có thể đặt mức độ tải bằng cách tăng và giảm số lượng VUser thực hiện nhiệm vụ cùng một lúc.

Việc thực thi này có thể dẫn đến máy chủ bị căng thẳng và hoạt động bất thường. Đây là mục đích chính của Kiểm tra hiệu suất. Kết quả rút ra sau đó được sử dụng để phân tích chi tiết và xác định nguyên nhân gốc rễ.

Phân tích kết quả (tiếp theo là điều chỉnh hệ thống)

Trong quá trình thực thi kịch bản, LoadRunner ghi lại hiệu suất của ứng dụng dưới các tải khác nhau. Các thống kê rút ra từ quá trình thực hiện kiểm tra được lưu lại và phân tích chi tiết được thực hiện. Công cụ 'Phân tích HP' tạo ra các biểu đồ khác nhau giúp xác định nguyên nhân gốc rễ dẫn đến sự chậm trễ của hiệu suất hệ thống, cũng như sự cố hệ thống.

Một số đồ thị thu được bao gồm:

  • Thời gian đến vùng đệm đầu tiên
  • Thời gian phản hồi giao dịch
  • Thời gian phản hồi giao dịch trung bình
  • Lượt truy cập mỗi giây
  • Tài nguyên Windows
  • Thống kê lỗi
  • Tóm tắt giao dịch

Câu hỏi thường gặp

Chúng ta nên Kiểm tra Hiệu suất Ứng dụng nào?

Kiểm tra Hiệu suất luôn chỉ được thực hiện cho các hệ thống dựa trên máy khách-máy chủ. Điều này có nghĩa là, bất kỳ ứng dụng nào không phải là kiến ​​trúc dựa trên máy khách-máy chủ, không được yêu cầu Kiểm tra hiệu suất.

Ví dụ: Microsoft Calculator không dựa trên máy khách-máy chủ cũng không chạy nhiều người dùng; do đó nó không phải là một ứng cử viên cho Kiểm tra hiệu suất.

Sự khác biệt giữa Kiểm tra Hiệu suất & Kỹ thuật Hiệu suất là gì

Điều quan trọng là phải hiểu sự khác biệt giữa Kiểm tra hiệu suất và Kỹ thuật hiệu suất. Một sự hiểu biết được chia sẻ dưới đây:

Kiểm thử hiệu suất là một kỷ luật liên quan đến việc kiểm tra và báo cáo hiệu suất hiện tại của một ứng dụng phần mềm dưới nhiều tham số khác nhau.

Kỹ thuật hiệu suất là quá trình phần mềm được kiểm tra và điều chỉnh với mục đích đạt được hiệu suất cần thiết. Quá trình này nhằm mục đích tối ưu hóa đặc điểm hiệu suất ứng dụng quan trọng nhất, tức là trải nghiệm người dùng.

Trong lịch sử, kiểm tra và điều chỉnh là hai lĩnh vực riêng biệt và thường cạnh tranh. Tuy nhiên, trong vài năm gần đây, một số nhóm người thử nghiệm và nhà phát triển đã hợp tác độc lập để tạo ra các nhóm điều chỉnh. Bởi vì các nhóm này đã đạt được thành công đáng kể, khái niệm về kết hợp kiểm tra hiệu suất với điều chỉnh hiệu suất đã bắt đầu phổ biến và bây giờ chúng tôi gọi nó là kỹ thuật hiệu suất.