I. TỔNG QUAN VỀ PERFORMANCE TESTING

1. Performane Testing là gì?

Performance Testing là một trong những nhiều loại kiểm thử nhằm khẳng định cường độ thỏa mãn nhu cầu, đường truyền, độ tin tưởng và/hoặc khả năng mở rộng của hệ thống dưới một trọng lượng có tác dụng việc/truy cập nhất quyết. Performance Testing thường xuyên được áp dụng để:

Đánh giá bán mức độ chuẩn bị của sản phẩmĐánh giá phụ thuộc vào những tiêu chuẩn hiệu suấtSo sánh giữa những công năng công suất của đa khối hệ thống hoặc cấu hình hệ thốngThấy được nguồn gốc của những vấn đề về hiệu suấtHỗ trợ điều chỉnh hệ thốngTìm các cường độ băng thông

Performance Testing thường xuyên được sử dụng để giúp đỡ xác minh ùn tắc vào một khối hệ thống, thiết lập cấu hình một đường các đại lý nhằm kiểm demo sau đây, cung cấp kiểm soát và điều chỉnh công suất tác dụng, xác minh sự phù hợp phương châm với đề xuất năng suất, cùng tích lũy tài liệu vận động tương quan khác để giúp những bên tương quan đưa ra đưa ra quyết định tương quan cho chất lượng chung của những áp dụng đang rất được kiểm thử. Hình như, các hiệu quả từ những việc kiểm thử hiệu suất cùng so sánh hoàn toàn có thể giúp cho bạn dự trù cấu hình phần cứng quan trọng nhằm hỗ trợ các áp dụng khi bạn chuyển sản phẩm lấn sân vào sử dụng thoáng rộng.Quý khách hàng vẫn xem: Performance testing là gì

2. Tại sao lại cần phải triển khai Performance Testing

Tại Lever cao nhất, kiểm thử tính năng gần như là luôn được triển khai nhằm xử lý một hoặc các khủng hoảng rủi ro tương quan cho tới chi phí, thời cơ hoặc khét tiếng của một đơn vị. Một số lý do ví dụ rộng mang đến triển khai kiểm demo công suất bao gồm:

Đánh giá bán sự sẵn sàng chuẩn bị tạo bởi:

Cho phxay chúng ta dự đân oán hoặc ước tính các công dụng năng suất của một áp dụng vào cung ứng với reviews có hay không tiến hành chất vấn công suất dựa vào phần đa dự đoán thù kia. Những dự đoán này cũng có cực hiếm nhằm những bên liên quan đưa ra đưa ra quyết định về câu hỏi liệu một áp dụng sẽ sẵn sàng để xây cất hoặc năng lực xử trí vững mạnh sau này, hoặc nó rất cần phải nâng cấp hiệu suất/phần cứng trước khi thành lập.Cung cấp cho dữ liệu cho thấy kĩ năng của người dùng không ưa thích với hiệu suất của hệ thống.Cung cung cấp dữ liệu để cung cấp vào câu hỏi dự đoán thù các tổn định thất doanh thu tốt uy tín thương hiệu vì chưng khả năng mở rộng, tài năng bất biến hoặc bởi người dùng ko chấp nhận cùng với thời hạn phản hồi của ứng dụng.

Bạn đang xem: Performance testing là gì

Đánh giá bán các đại lý hạ tầng:

Đanh giá chỉ sự cân xứng của năng suất hiện nay tạiXác định năng lực ổn định địnhXác định năng lực của hạ tầng của áp dụng, tương tự như xác minh các nguồn lực có sẵn quan trọng sau đây nhằm cung ứng công suất gật đầu đồng ý được.So sánh thông số kỹ thuật của các hệ thống khác nhau nhằm xác minh hoạt động tốt nhất có thể mang đến vận dụng với doanh nghiệpThđộ ẩm định Việc áp dụng những công năng năng suất mong ước vào buộc ràng thực hiện ngân sách nguồn lực có sẵn.

Đánh giá bán không thiếu thốn về hiệu suất ứng dụng bởi:

Xác định công năng hiệu suất mong ước của ứng dụng trước cùng sau thời điểm chuyển đổi.Cung cấp những so sánh giữa những đặc tính hiệu suất bây giờ và vận dụng mong ước.

Nâng cao kết quả vận động bởi:

1. TOOL AUTOMATION TESTING - JMETER

1.1 Giới thiệu về JmeterJmeter là luật pháp nhằm đo độ download cùng performance của đối tượng người sử dụng, rất có thể áp dụng nhằm chạy thử performance trên cả nguồn tĩnh với mối cung cấp động, hoàn toàn có thể kiểm tra độ sở hữu cùng hiệu năng bên trên nhiều nhiều loại VPS khác nhau như: Web – HTTP., HTTPS, SOAP.., Database via JDBC, LDAP., JMS, Mail – SMTP(S), POP3(S) với IMAP(S)…

Jmeter là 1 phần mềm mã mối cung cấp msống được viết bởi java. Cha đẻ của JMeter là Stefano Mazzocbỏ ra. Sau kia Apabịt đang kiến tạo lại nhằm đổi mới rộng giao diện giao diện cho những người dùng với tài năng kiểm demo phía tác dụng.

1.2 Đặc trưng

Jmeter có 1 số đặc thù nhỏng sau:Nguồn mngơi nghỉ, miễn phíGiao diện đơn giản, trực quan lại dễ sử dụngcũng có thể kiểm thử không ít phong cách server: Web - HTTP, HTTPS, SOAP, Database - JDBC, LDAP., JMS, Mail - POP3, …Một luật pháp hòa bình rất có thể chạy xe trên các nền tảng gốc rễ hệ điều hành quản lý khác biệt, trên Linux chỉ việc chạy bằng một shell script, bên trên Windows thì chỉ cần chạy một tệp tin .batĐa luồng, giúp xử lý chế tác những request và một khoảng chừng thời hạn, giải pháp xử lý những dữ liệu chiếm được một biện pháp tác dụng.Jmeter Performance Testing tất cả 2 phần:Load Testing: Mô hình hóa dự kiến thực hiện bởi nhiều người dùng truy vấn một hình thức website vào thuộc thời khắc.Stress Testing: Tất cả những website server hoàn toàn có thể download một dung lượng mập, Lúc nhưng mà cài đặt trọng thừa ra phía bên ngoài số lượng giới hạn thì website hệ thống bắt đầu đánh giá chậm rãi với tạo ra lỗi. Mục đích của bao tay testing là có thể đưa ra độ thiết lập phệ mà lại website hệ thống rất có thể xử lý.


*

*

1.4 Các yếu tắc thiết yếu của JmeterTEST PLANTest Plan định nghĩa phải kiểm tra gì với phương pháp để thực hiện thế nào.

Test Plan node: khu vực lưu lại thử nghiệm plan thiệt sự bạn có nhu cầu testWorkbench node: vị trí đựng sản xuất những element nhưng mà chúng ta không sử dụng, chỉ nhằm với mục đích copy/paste. Khi lưu giữ Test Plan thì Workbench không được lưu
*

TEST PLAN ELEMENT:Tại mức độ basic, tôi chỉ giới thiệu cụ thể một vài elements trong những những elements sau đây:i. Thread Groups:

Mọi TestPlan đông đảo cần tối thiểu 1 Thread Group, trách nhiệm của Thread Groups sẽ tạo nên ra những thử khám phá nhằm request cho tới hệ thống.Cách tạo: Chuột đề nghị vào Test Plan –> Add –> Threads(users) –> Thread Group
*

*

Giải ưng ý một trong những thuộc tính trên màn hình:Name : khắc tên mang lại ThreadGroupNumber of Threads(users) : số lượng người dùng cơ mà ta mong mỏi tế bào bỏng.Ramp-up Period (in seconds): Cho biết thời gian để JMeter tạo nên tất cả đông đảo thread cần thiết. lấy một ví dụ ví như tsi số này là 10 thì trong 10 giây toàn bộ những Number of Threads vẫn khai báo sống trên sẽ được gửi đi vào 10 giây, nếu để tđê mê số này là 0 thì tất cả các trải nghiệm sẽ tiến hành gửi đi và một thời gian.Loop Count Forever : 1 các thread được sinh sản sẽ triển khai 1 lần (thay là một bởi n thì số các thread đang lặp n lần).

ii. SamplerSamplers cho phép JMeter gửi các một số loại tận hưởng ví dụ cho tới serverCó tương đối nhiều Samplers như sau:

HTTP RequestFTP RequestJDBC Request-Java Request-SOAP/XML RequestRPC Requests

Đây là hình ảnh cho HTTPhường Request:


Giải say đắm một số trong những thuộc tính trên màn hình:

Label : thương hiệu request#Samples : số requestAverage : thời hạn trung bình cách xử trí các requestmin : thời gian bé dại độc nhất cách xử lý requestmax : thời gian lớn số 1 cách xử trí requestError : Phần Trăm bị lỗi của những request(lỗi liên kết hoặc lỗi đến cổng output không mong muốn)thoughput : số request/s của serverkb/s = (avg.bytes*thoughput)/1024

v. Timer: dùng làm quan niệm thời gian hóng thân những request**vi. Assertions:**Xác thừa nhận kết quả trả về đang đúng hay không bằng một vài Validation**vii. Configuration Elements:**Tạo những quý hiếm khoác định với những đổi thay dùng mang lại Samplerviii. Pre-processor Elements: Dùng nhằm xử lý một chiếc gì đó tức thì trước lúc Sampler được thực hiệnix. Post-processor Elements: Dùng để xử lí hiệu quả trả về sau thời điểm Sampler được thực hiện

1.5 Demo - BasicSCENARIO 1:

Số lượng user: 100SCENARIO 2:Access vào trang không giống bên trên lazada: /quan-ao-phu-kien-cho-be/?spm=a2o4n.home.0.0.03OchN&boost=2Số lượng user: 100Step 1: Create a new Test Plan: DemoLazada
**Step 2:**Giả lập nhiều user thuộc truy cập vào trang web đồng thời.Cliông chồng chuột phải vào Test Plan –> Add –> Threads(users) –> Thread GroupName : khắc tên mang đến ThreadGroup ( ở đây mình đặt ThreadGroup1).Number of Threads(users) : số lượng người tiêu dùng nhưng mà ta hy vọng mô bỏng.Ramp-up Period (in seconds): Cho biết thời gian để JMeter tạo thành toàn bộ phần đa thread cần thiết. lấy một ví dụ nếu như tsi số này là 10 thì vào 10 giây toàn bộ các Number of Threads vẫn knhị báo nghỉ ngơi bên trên sẽ tiến hành gửi đi trong 10 giây, nếu để tsay mê số này là 0 thì toàn bộ những yêu cầu sẽ được gửi đi cùng một thời gian.Loop Count Forever : 1 các thread được chế tạo đã triển khai 1 lần( thay 1 bởi n thì số các thread đang lặp n lần).

Xem thêm: Chi Phí Phát Sinh Tăng Tiếng Anh Là Gì, Chi Phí Cụm Từ Có Liên Quan


Step 3: Tạo request mang lại server1 thread(tương ứng 1 user) có thể sinh sản những request http trình lên hệ thống .Chuột buộc phải vào Thread group –> add –> Confict Element –> HTTPhường Request DefaultName : đánh tên requestServer name or Ip : điền tương tác website cần truy cập.Nếu biết ip với cổng thì : điền ip vào Server Name or Ip cùng số cổng vào Port Number, băng thông đến website cần truy cập vào Path.ví dụTruy ctràn vào trang http://lazadachỉ cần điềnServer Name or Ip : lazada.vnPort number : 80

Lưu ý: đề xuất kéo HTTP Request Default lên phía trên những ThreadGroup để dễ ợt tiến hành test, chỉ việc chế tác 1 lần mang đến toàn bộ những ThreadGroup muốn chạy thử trang lazada.vn

Step 4: Tạo HTTP Request rõ ràng đến đối tượng người dùng nhưng mà bạn có nhu cầu truy vấn bên trên trang lazadomain authority.Trong trường thích hợp này, điểm đến là mục Quần áo phú kiện đến béChuột nên vào Thread group –> add –> sample –> HTTPhường RequestPath: quan-ao-phu-kien-cho-be/?spm=a2o4n.home page.0.0.9TS4zZ

Step 5: Chạy testClick vào button Start (lốt mũi tên màu xanh) trên tkhô cứng menuCliông chồng vào ibé Stop trên thanh menu để dừng lại lại

Step 6:Xem công dụng của kịch bản test

Xem công dụng tổng hòa hợp của tất cả những threadChuột đề nghị vào Thread Group –> Add -> Listener –> Summary Report

Bảng thống kê lại kết quảLabel : thương hiệu request#Sample : số requestAverage : thời gian trung bình xử trí các requestmin : thời hạn bé dại tốt nhất giải pháp xử lý requestmax : thời gian nhỏ dại độc nhất vô nhị giải pháp xử lý requestError : xác suất bị lỗi của những request(lỗi kết nối hoặc lỗi mang lại Áp sạc ra không muốn muốn)thoughput : số request/s của serverkb/s = (avg.bytes*thoughput)/1024


Step 7: Xem kết quả của từng Request vào kịch bảnChuột đề nghị Thread Group –> Add –> Listener –> View Results Tree

1.6 Demo - Advance

SCENARIO: Simulate 10 users log-in to system at the same time with different username & password

Để log-in vào 1 website thì hay được dùng method POST để gửi REQUEST lên với gần như parameters cần thiết để hệ thống biết cùng trả về RESPONE tương ứng. Tại đây để biết 1 trang web khi log-in đã yêu cầu gửi lên hồ hết công bố gì, thì ta đã dùng firebug (1 add-on của firefox) để triển khai câu hỏi này.


Sau khi biết được cần phải gửi các parameters như thế nào lên thì chúng ta tiến hành simulate Việc gửi này cùng với Jmeter, như sau :


Nhưng Một trong những parameters này thì bao gồm authencity_token là cực hiếm đổi khác theo từng REQUEST nhằm tránh bài toán spam cũng tương tự bảo mật thông tin mang lại REQUEST, đề xuất bắt buộc copy authencity_token của request này cho request kia. Do kia, bọn họ nên tạo nên phần đa authencity_token riêng rẽ đến từng request. Để làm được bài toán này, Jmeter cung ứng mang lại chúng ta function sẽ là REGULAR EXPRESSION EXTRACTOR

REGULAR EXPRESSION được Hotline là biểu thức chủ yếu quy, Là CPU sau, bộ phận này đang tiến hành sau từng đòi hỏi Mẫu vào phạm vi của chính nó, áp dụng biểu thức thiết yếu quy, trích xuất những giá trị được tận hưởng, tạo ra chuỗi mẫu với lưu trữ hiệu quả vào tên đổi thay nhất thiết (ví dụ : chế tạo ra authencity_token, item_id để bước vào detail, chế tạo transaction_id cho các thanh toán ,…)


Sau Khi lấy được authencity_token cho mỗi request thì họ triển khai log-in 10 users đồng thời với username cùng password khác nhau

CSV DATA SET CONFIGĐể thực hiện Việc này, họ cần sử dụng CSV Data Set Config. Chúng ta sẽ khởi tạo 1 file csv đựng username và password của 10 users phải sử dụng, cùng import tệp tin CSV đó vào CSV Data Set Config cùng gán trở nên cho những parameters ở POST nhằm JMeter phát âm cùng thực hiện.


ASSERTION

Nhưng khi chạy điều đó thì tất cả hầu như request trả về rất nhiều được gật đầu với báo pass, họ khó biệt lập được request làm sao singin thành công, request làm sao đăng nhập không thành công. Do kia, họ sẽ thêm một phần Assertion nhằm phân biệt vấn đề đó.a. lúc singin thành công:

EXPORT TEST RESULTSau kia Run cùng nhấn tác dụng. Chúng ta cũng có thể export công dụng test ra file csv bằng phương pháp. File sẽ được lưu lại auto vào thư mục Bin của Jmeter

2. TOOL AUTOMATION TESTING - LOADCOMPLETE

2.1 Giới thiệuLoadComplete là một trong những nguyên lý kiểm soát lượng thiết lập, được cho phép tạo ra cùng chạy tự động hóa đến web servers cùng services. Giúp người tiêu dùng soát sổ được tính năng của web VPS bên dưới một lượng download Khủng.

2.2 Các Tính Năng:

Load testing: Kiểm tra hành động của web server bên dưới thiết lập trọng lớnStress testing: Kiểm tra hành vi của web server dưới một lượng thiết lập cực kì lớnScalability testing: Xác định năng suất của website server bằng cách tăng lên Hartware hoặc phần mềm

2.3. Hỗ trợ

Web Servers & Platforms: LoadComplete hỗ trợ toàn bộ những nhiều loại web VPS (IIS, Apache) với nền tảng gốc rễ (Windows, Linux/UNIX)We Client Applications: LoadComplete hỗ trợ tất cả những trình cẩn thận website thịnh hành (InteExplorer, Edge, Firefox, Chrome or custom website application)Hỗ trợ Rich InteApplications: LoadComplete hoàn toàn có thể ghi cùng chạy lại các thí nghiệm mang đến ngẫu nhiên nhiều loại nào của Rich InteApplications, bao gồm Adobe Flash & Flex, Microsoft Silverlight và Ajax.Hỗ trợ JSP/Servlet Applications: LoadComplete có thể ghi cùng chạy lại luồng tài liệu mang đến áp dụng JSP/ServletHỗ trợ HTML5 Applications: LoadComplete rất có thể đánh dấu cùng chạy lại luồng dữ liệu mang lại website phầm mềm mà lại được cải tiến và phát triển vì chưng HTML5 và APIs, bao gồm giao thức WebSocket.

2.4. Ưu điểm

Cài đặt dễ dàngDễ áp dụng bằng phương pháp ghi lại hành động của bạn dùngCó thể tùy chỉnh thiết lập các luật lệ nhằm khám nghiệm tùy trực thuộc vào hành động của sản phẩm chủcũng có thể xem được quy trình chạy kiểm traReport dễ đọc

2.5. Nhược điểm

Là một ứng dụng tính phí

3. TOOL AUTOMATION TESTING - GRINDER

3.1 Giới thiệu

The Grinder là một trong những tool kiểm thử hiệu năng dựa vào căn nguyên JavaTM. Và quan trọng nó hoàn toàn miễn giá tiền. Grinder bao gồm:

The Grinder Console: Ứng dụng GUI dùng để tinh chỉnh và điều khiển những Agents cùng hiển thị tác dụng. Grinder Console cũng dùng được sử dụng nlỗi một IDE chỉnh sửa cùng cách tân và phát triển Test suites. Để khởi rượu cồn màn hình Console dùng lệnh “java net.grinder.Console

3.2 Key Future

Generic Approach: Kiểm tra tất cả các ứng dụng nhưng mà có Java API, bao hàm HTTPhường website servers, SOAP. với REST website services, với application servers (CORBA, RMI, JMS, EJBs)Flexible Scripting : Script được viết bằng ngữ điệu Pyhạn hẹp cùng ClojureDistributed Framework : Có hỗ trợ UI có thể chấp nhận được giám sát và kiểm soát điều hành những nhiều injectors và cung ứng việc sửa đổi Script với phân păn năn.TCPhường proxy để cất giữ những hành vi can dự bên trên browser vào Grinder test scriptHỗ trợ những giao thức khác nhau

3.3 Ưu điểm:

Miễn phícũng có thể tùy chỉnh script một bí quyết dễ dàng dàngScript dùng ngôn từ PythonCung cung cấp tác dụng record actioncũng có thể sử dung Browser ProxyLinc hoạt, rất có thể dễ ợt start up trên một hệ thống khác

3.4 Nhược điểm:

Không có tương đối nhiều sự chọn lọc hiển thị hiệu quả ReportGUI ko gần gũi với người dùng

4. TOOL AUTOMATION TESTING - WEB PERFORMANCE

4.1 Giới thiệu

Với mục đích bình chọn hiệu năng của một trang web, webperformance cũng là một Một trong những mức sử dụng cung cấp.

Webperformance cung cấp các công dụng thử nghiệm performance như:

Trang website có thể xử trí được bao nhiêu user ?Trang website có thể bị phá vỡ lẽ bên dưới điều kiện cài đặt làm sao.Trang web hoàn toàn có thể ship hàng từng nào transaction trong một giây.cũng có thể cấu hình để thực hiện load chạy thử với vitual browser và real browser dựa trên Selenium WebDrive sầu.

Xem thêm: Tổng Hợp Các Tuyệt Chiêu Trong Đấu Trường Thú 2 Và Cách Chơi Bakuryu

Với nền tảng cung ứng là Windows, MAC, chúng ta cũng có thể dễ dãi download cùng thiết lập ứng dựng từ website chính thức: http://www.webperformance.com/download/

4.3 Ưu điểm

Dễ sở hữu đặtDễ thực hiện bằng cách khắc ghi đều action user thực hiệnHỗ trợ phần lớn những trình chăm chú thịnh hành hiện tại naycũng có thể xem được report vào quá trình chạy kiểm traReport hiệu quả triển khai ví dụ, chi tiết, dễ dàng hiểu

4.4. Nhược điểm

Là tool có phíKhông support hệ điều hành quản lý LinuxChỉ thử nghiệm được bên trên trang test của webperformane Khi sử dụng bản trialIII. KẾT LUẬN

Qua bài viết này, hi vọng đông đảo người dân có một cái chú ý tổng quan về những Performance Testing Tool. Khi bao gồm một thưởng thức mày mò về Tool Ship hàng đến Performance Test, chắc hẳn phần lớn bạn đang tuyển lựa được cho khách hàng một tool cân xứng cùng với dự án của chính mình.

Tài liệu tđắm đuối khảo:http://opensourceforu.com/2016/04/the-grinder-a-handy-performance-testing-tool/https://www.blazemeter.com/blog/open-source-load-testing-tools-which-one-should-you-use


Chuyên mục: KHÁI NIỆM LÀ GÌ
Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *