Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 51 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
51
Dung lượng
1,35 MB
Nội dung
MỤC LỤC Trang MỤC LỤC Trang LỜI MỞ ĐẦU CHƯƠNG I TỰ ĐỘNG KIỂM THỬ PHẦN MỀM .4 1.Kiểm thử phần mềm Kiểm thử tích hợp – Intergration Test .6 Kiểm thử hệ thống – System test Kiểm thử chấp nhận sản phẩm – Acceptance Test 2.Kiểm thử tự động ( Automation test) Tại phải kiểm thử tự động ? Các bước quy trình kiểm thử tự động .10 Một số thuận lợi khó khăn áp dụng kiểm thử tự động vào kiểm tra phần mềm .11 CHƯƠNG II TÌM HIỂU PHẦN MỀM LOADRUNNER 12 1.Giới thiệu phần mềm Loadrunner 12 3.Cài đặt phần mềm Loadrunner 13 4.Sử dụng phần mềm Loadrunner .13 3.1 Tạo kịch Loadrunner 13 3.2 Hiệu chỉnh kịch 18 3.3 Tạo Scenario Load Test .29 3.4 Phân tích Scenario 41 CHƯƠNG III ỨNG DỤNG PHẦN MỀM LOADRUNNER KIỂM TRA HIỆU NĂNG WEBSITE 43 1.Giới thiệu 43 5.Tình kiểm thử 43 6.Phân tích kết 47 KẾT LUẬN VÀ HƯỚNG PHẤT TRIỂN 50 1.Kết luận 50 7.Hướng phát triển 50 TÀI LIỆU THAM KHẢO .51 Ketnooi.com kết nối công dân điện tử LỜI MỞ ĐẦU Với phát triển vũ bão công nghệ thông tin nói chung công nghệ phần mềm nói riêng, việc phát triển phần mềm ngày hỗ trợ nhiều công cụ tiên tiến, giúp cho việc xây dựng phần mềm đỡ mệt nhọc hiệu Tuy nhiên, độ phức tạp phần mềm giới hạn thời gian chi phí, cho dù hoạt động đảm bảo chất lượng phần mềm nói chung kiểm thử nói riêng ngày chặt chẽ khoa học, không đảm bảo sản phẩm phần mềm ứng dụng lỗi Lỗi tiềm ẩn sản phẩm phần mềm gây thiệt hại khôn lường Kiểm thử phần mềm trình liên tục, xuyên suốt giai đoạn phát triển phần mềm để đảm bảo phần mềm thoả mãn yêu cầu thiết kế yêu cầu đáp ứng nhu cầu người dùng Các kỹ thuật kiểm thử phần mềm đã, nghiên cứu, việc kiểm thử phần mềm trở thành qui trình bắt buộc dự án phát triển phần mềm giới Kiểm thử phần mềm hoạt động tốn kém, thời gian, khó phát hết lỗi Ngày tự động hóa ứng dụng nhiều lĩnh vực, mục đích thường đa dạng tùy theo nhu cầu đặc thù lĩnh vực, nhiên điểm chung giảm nhân lực, thời gian sai sót Ngành CNTT mà cụ thể phát triển phần mềm không ngoại lệ Như biết, để tạo sản phẩm CNTT hay phần mềm có chất lượng hoạt động kiểm tra phần mềm đóng vai trò quan trọng, hoạt động lại tiêu tốn chiếm tỷ trọng lớn công sức thời gian dự án Do vậy, nhu cầu tự động hoá qui trình kiểm tra phần mềm đặt Áp dụng kiểm tra tự động hợp lý mang lại thành công cho hoạt động kiểm tra phần mềm Kiểm thử tự động giúp giảm bớt công sức thực hiện, tăng độ tin cậy, giảm nhàm chán rèn luyện kỹ lập trình cho kiểm tra viên Ở Việt Nam, thời gian qua việc kiểm thử phần mềm bị xem nhẹ, với công cụ lập trình đại, người ta cảm tính cho không kiểm thử không sao, nên chưa có nhiều quan tâm, nghiên cứu Những năm gần đây, số tổ chức nghiên cứu phát triển phần mềm bắt đầu có quan tâm đến vấn đề kiểm thử phần mềm Tuy nhiên, vấn đề kiểm thử phần mềm chưa đầu tư quan tâm mức Nước ta trình xây dựng ngành công nghiệp phần mềm xem nhẹ việc kiểm thử phần mềm xác suất thất bại cao, nữa, hầu hết công ty phần mềm có uy tín đặt yêu cầu nghiêm ngặt phần mềm tài liệu kiểm thử kèm không chấp nhận Ketnooi.com kết nối công dân điện tử Qua tìm hiểu việc kiểm tra hiệu phần mềm, thấy tầm quan trọng vai trò công việc quy trình phát triển phần mềm, phần mềm ứng dụng lớn, có nhiều người sử dụng thời điểm ứng dụng Website, phần mềm quản lý tài chính, ngân hàng Chính thế, em chọn đề tài: “Tìm hiểu phần mềm Loadrunner kiểm tra hiệu WebSite” Mục đích đề tài: • Tìm hiểu quy trình kiểm tra chất lượng phần mềm tự động kiểm tra phẩn mềm • Tìm hiểu cách sử dụng phần mềm mã nguồn mở Loadrunner • Xây dựng kịch tiến hành kiểm tra hiệu cho Website http://student.vinhuni.edu.vn/CMCSoft.IU.Web.info/login.aspx Đề tài bao gồm nội dung sau: • Lời mở đầu • Chương I: Tự động kiểm tra phần mềm • Chương II: Sử dụng phần mềm Loadrunner • Chương III: Ứng dụng phần mềm Loadrunner kiểm tra hiệu Website • Kết luận hướng phát triển Trong khuôn khổ đồ án tốt nghiệp, em tìm hiểu cách tổng quan tự động kiểm tra phần mềm (Automation Testing), bước quy trình kiểm tra phần mềm giới thiệu phần mềm Loadrunner để thực thi kịch trình kiểm thử hiệu phần mềm Cụ thể kiểm tra hiệu WebSite đăng ký học tín trường Đại học Vinh Tuy nhiên với kiến thức hạn chế thân nhiều tài liệu tiếng Việt lĩnh vực (hầu hết tài liệu dạng tiếng Anh) nên đề tài chưa nghiên cứu hết khía cạnh qui trình kiểm tra phần mềm phần mềm Loadrunner Em hy vọng nhận ý kiến đóng góp quý báu từ phía thầy cô bạn bè để đề tài hoàn thiện Hy vọng Automation Test phát triển mạnh tương lai Việt Nam, góp phần mang lại cho công nghệ phần mềm nước nhà sản phẩm phần mềm đạt tiêu chuẩn đáp ứng nhu cầu ứng dụng công nghệ thông tin vào sống Ketnooi.com kết nối công dân điện tử CHƯƠNG I TỰ ĐỘNG KIỂM THỬ PHẦN MỀM Kiểm thử phần mềm Một chương trình tạo thường chứa vài lỗi 100 dòng bao gồm lỗi từ trình lập trình lỗi từ trình thiết kế Nếu chương trình chứa lỗi dùng để vận hành hệ thống trực tuyến, hư hỏng nghiêm trọng phát sinh không ảnh hưởng tới công ty vận hành hệ thống mà ảnh hưởng tới công chúng lớn bên Do việc kiểm thử phần mềm phải tiến hành trước chuyển giao sản phẩm công nghiệp Việc kiểm thử phần mềm phải tiến hành theo trình tự kiểm thử đặc biệt để kiểm chứng chương trình hệ thống mà điều khiển vận hành tương ứng với đặc tả Mặc dù đảm bảo loại bỏ hoàn toàn hết lỗi chương trình chúng làm giảm số lỗi tới mực tối thiểu kiểm thử chương trình theo cách xác, hiệu Một hoạt động mang tính sống dự án sản xuất gia công phần mềm, kiểm tra (Testing) Người làm phần mềm hẳn không nghi ngờ vai trò quan trọng nó, nhiên hiểu rõ hoạt động Bản thân công việc kiểm thử phần mềm lĩnh vực hoạt động độc lập “hấp dẫn” Cùng với dự án gia công sản xuất phần mềm, có nhiều dự án mà nội dung công việc kiểm tra phần mềm khách hàng phát triển sẵn Thực tế cho thấy kiểm thử phần mềm công việc mà người tham gia phát triển phần mềm biết làm Kiểm thử phần mềm bao gồm việc "chạy thử" phần mềm hay chức phần mềm, xem "chạy" mong muốn hay không Việc kiểm tra thực chặng, sau chức module phát triển, thực sau cùng, phần mềm phát triển hoàn tất Do kiểm thử sản phẩm phần mềm xây dựng cách có chủ đích tập liệu dãy thao tác nhằm đánh giá số toàn tiêu chuẩn sản phẩm phần mềm Kiểm tra phần mềm có nhiều mức độ khác có mối tương quan với chặng phát triển dự án phát triển phần mềm Ketnooi.com kết nối công dân điện tử Hình 1.1 Tương quan chặng PTPM KTPM Kiểm tra phần mềm nói chung có mức độ sau đây: Hình 1.2 Các mức độ kiểm thử phẩn mềm Kiểm thử mức đơn vị (Unit Test) Một đơn vị thành phần phần mềm nhỏ mà ta kiểm thử Ví dụ, hàm (Function), thủ tục (Procedure), lớp (Class) hay phương thức (Method) xem Unit Unit Test thường lập trình viên thực Công đoạn cần thực sớm tốt giai đoạn viết code xuyên suốt chu kỳ phát triển phần mềm Unit Test đòi hỏi kiểm thử viên có kiến thức thiết kế code chương trình Mục đích Unit Test bảo đảm thông tin xử lý xuất xác, mối tương quan với liệu nhập chức Unit Tất nhánh bên Unit phải kiểm tra để phát nhánh phát sinh lỗi Một nhánh thường Ketnooi.com kết nối công dân điện tử chuỗi lệnh thực thi Unit Ví dụ: chuỗi lệnh sau điều kiện If nằm then else nhánh Việc chọn lựa nhánh để đơn giản hóa việc kiểm thử quét hết Unit đòi hỏi phải có kỹ thuật, phải dùng thuật toán để chọn lựa Cùng với mục kiểm thử khác, Unit Test đòi hỏi phải chuẩn bị trước ca kiểm thử (Test case) kịch kiểm thử (Test script), định rõ liệu đầu vào, bước thực liệu đầu mong muốn Các Test case Test script nên giữ lại để tái sử dụng Kiểm thử tích hợp – Intergration Test Integration test kết hợp thành phần ứng dụng kiểm thử ứng dụng hoàn thành Trong Unit Test kiểm tra thành phần Unit riêng lẻ Intgration Test kết hợp chúng lại với kiểm tra giao tiếp chúng Hai mục tiêu Integration Test: • Phát lỗi giao tiếp xảy Unit • Tích hợp Unit đơn lẻ thành hệ thống nhỏ (Subsystem) cuối nguyên hệ thống hoàn chỉnh (System) chuẩn bị cho kiểm thử mức hệ thống (System Test) Integration Test nên thực Unit kiểm tra cẩn thận trước Unit Test, tất lỗi mức Unit sửa chữa Một số người hiểu sai Unit qua giai đoạn Unit Test với giao tiếp giả lập không cần phải thực Integration Test Một chiến lược cần quan tâm Integration Test nên tích hợp dần Unit Một Unit thời điểm tích hợp vào nhóm Unit khác tích hợp trước hoàn tất đợt Integration Test trước Lúc này, ta cần kiểm thử giao tiếp Unit thêm vào với hệ thống Unit tích hợp trước đó, điều làm cho số lượng can kiểm thử giảm nhiều, sai sót giảm đáng kể Có loại kiểm thử Integration Test: Kiểm thử cấu trúc (Structure Test): Kiểm thử cấu trúc nhằm bảo đảm thành phần bên chương trình chạy trọng đến hoạt động thành phần cấu trúc nội chương trình Kiểm thử chức (Functional Test): Kiểm thử chức trọng đến chức chương trình, không quan tâm đến cấu trúc bên trong, khảo sát chức chương trình theo yêu cầu kỹ thuật Kiểm thử hiệu (Performance Test): Kiểm thử việc vận hành hệ thống Ketnooi.com kết nối công dân điện tử Kiểm thử khả chịu tải (Stress Test): Kiểm thử giới hạn hệ thống Kiểm thử hệ thống – System test Mục đích System Test kiểm thử thiết kế toàn hệ thống (sau tích hợp) có thỏa mãn yêu cầu đặt hay không System Test bắt đầu tất phận phần mềm tích hợp thành công Loại kiểm thử tốn nhiều công sức thời gian Trong nhiều trường hợp, việc kiểm thử đòi hỏi số thiết bị phụ trợ, phần mềm phần cứng đặc thù, đặc biệt ứng dụng thời gian thực, hệ thống phân bố, hệ thống nhúng Ở mức độ hệ thống, người kiểm thử tìm kiếm lỗi, trọng tâm đánh giá hoạt động, thao tác, tin cậy yêu cầu khác liên quan đến chất lượng toàn hệ thống Điểm khác then chốt Integration Test System Test System Test trọng hành vi lỗi toàn hệ thống, Integration Test trọng giao tiếp đơn thể đối tượng chúng làm việc Ta phải thực Unit Test Integration Test để bảo đảm Unit tương tác chúng hoạt động xác trước thực System Test Sau hoàn thành Integration Test, hệ thống phần mềm hình thành với thành phần kiểm tra đầy đủ Tại thời điểm này, lập trình viên kiểm thử viên bắt đầu kiểm thử phần mềm hệ thống hoàn chỉnh Việc lập kế hoạch cho System Test nên giai đoạn hình thành phân tích yêu cầu System Test kiểm thử hành vi chức phần mềm yêu cầu chất lượng độ tin cậy, tính tiện lợi sử dụng, hiệu bảo mật Mức kiểm thử đặc biệt thích hợp cho việc phát lỗi giao tiếp với phần mềm phần cứng bên ngoài, chẳng hạn lỗi "tắc nghẽn" (deadlock) chiếm dụng nhớ Sau giai đoạn System Test, phần mềm thường sẵn sàng cho khách hàng người dùng cuối kiểm thử chấp nhận sản phẩm (Acceptance Test) dùng thử (Alpha/Beta Test) System Test thường thực nhóm kiểm thử viên hoàn toàn độc lập với nhóm phát triển dự án System Test gồm nhiều loại kiểm thử khác nhau, phổ biến gồm: Kiểm thử chức (Functional Test): Bảo đảm hành vi hệ thống thỏa mãn yêu cầu thiết kế Kiểm thử hiệu (Performance Test): Bảo đảm tối ưu việc phân bổ tài nguyên hệ thống (ví dụ nhớ) nhằm đạt tiêu thời gian xử lý hay đáp ứng Ketnooi.com kết nối công dân điện tử câu truy vấn Kiểm thử khả chịu tải (Stress Test hay Load Test): Bảo đảm hệ thống vận hành áp lực cao (ví dụ nhiều người truy xuất lúc) Stress Test tập trung vào trạng thái tới hạn, "điểm chết", tình bất thường giao dịch ngắt kết nối (xuất nhiều kiểm tra thiết bị POS, ATM ) Kiểm thử cấu hình (Configuration Test) Kiểm thử bảo mật (Security Test): Bảo đảm tính toàn vẹn, bảo mật liệu hệ thống Kiểm thử khả phục hồi (Recovery Test): Bảo đảm hệ thống có khả khôi phục trạng thái ổn định trước tình tài nguyên liệu; đặc biệt quan trọng hệ thống giao dịch ngân hàng trực tuyến Nhìn từ quan điểm người dùng, cấp độ kiểm thử quan trọng: Chúng bảo đảm hệ thống đủ khả làm việc môi trường thực Tùy yêu cầu đặc trưng hệ thống, tuỳ khả thời gian cho phép dự án, lập kế hoạch, người quản lý dự án định áp dụng loại kiểm thử Kiểm thử chấp nhận sản phẩm – Acceptance Test Sau giai đoạn System Test Acceptance Test, khách hàng ủy quyền cho nhóm thứ ba thực Mục đích Acceptance Test để chứng minh phần mềm thỏa mãn tất yêu cầu khách hàng khách hàng chấp nhận sản phẩm Acceptance Test có ý nghĩa quan trọng Mặc dù hầu hết trường hợp, phép kiểm thử System Test Acceptance Test gần tương tự, chất cách thức thực lại khác biệt Đối với sản phẩm dành bán rộng rãi thị trường, thông thường thông qua hai loại kiểm thử gọi kiểm thử Alpha – Alpha Test kiểm thử Beta – Beta Test Alpha Test, người dùng kiểm thử phần mềm nơi phát triển phần mềm, lập trình viên ghi nhận lỗi phản hồi lên kế hoạch sửa chữa Beta Test, phần mềm gửi tới cho người dùng để kiểm thử môi trường thực, lỗi phản hồi gửi ngược lại cho lập trình viên để sửa chữa Nếu khách hàng không quan tâm không tham gia vào trình phát triển phần mềm kết Acceptance Test sai lệch lớn, phần mềm trải qua tất kiểm thử trước Sự sai lệch liên quan đến việc hiểu sai yêu cầu mong chờ khách hàng Gắn liền với giai đoạn Acceptance Test thường nhóm dịch vụ tài liệu kèm, phổ biến hướng dẫn cài đặt, sử dụng v.v Tất tài liệu kèm phải Ketnooi.com kết nối công dân điện tử cập nhật kiểm thử chặt chẽ Kiểm thử tự động ( Automation test) Là software program dùng để chạy cách tự động thay thao tác testing tay Là phần mềm Tại phải kiểm thử tự động ? Test Tool lĩnh vực phát triển phần mềm công cụ giúp thực việc kiểm tra phần mềm cách tự động Tuy nhiên việc kiểm tra tự động hóa, Test Tool thường sử dụng số tình sau: - Không đủ tài nguyên Khi số lượng tình kiểm tra (test case) nhiều mà kiểm thử viên hoàn tất tay thời gian cụ thể Ví dụ thực kiểm tra chức website Website kiểm tra với môi trường gồm trình duyệt hệ điều hành Tình đòi hỏi số lần kiểm tra tăng lên lặp lại lần so với việc kiểm tra cho môi trường cụ thể - Kiểm tra hồi quy Trong trình phát triển phần mềm, nhóm lập trình thường đưa nhiều phiên liên tiếp để kiểm tra Việc đưa phiên phần mềm hàng ngày, phiên bao gồm tính mới, tính cũ sửa lỗi, nâng cấp Việc bổ sung sửa lỗi code phiên làm cho tính khác kiểm tra tốt chạy sai phần code không chỉnh sửa Để khắc phục, kiểm thử viên không kiểm tra chức sửa, mà phải kiểm tra lại tất tính kiểm tra tốt trước Điều khó khả thi mặt thời gian kiểm tra thủ công - Kiểm tra khả vận hành phần mềm môi trường đặc biệt Nhằm đánh giá xem vận hành phần mềm có thỏa mãn yêu cầu đặt hay không Thông qua kiểm thử viên xác định yếu tố phần cứng, phần mềm ảnh hưởng đến khả vận hành phần mềm Một số tình kiểm tra tiêu biểu thuộc loại này: • Đo tốc độ trung bình xử lý yêu cầu web server • Thiết lập 1000 yêu cầu, đồng thời gửi đến web server, kiểm tra tình 1000 người dùng truy xuất web lúc Ketnooi.com kết nối công dân điện tử • Xác định số yêu cầu tối đa xử lý web server xác định cấu hình máy thấp mà tốc độ xử lý phần mềm hoạt động mức cho phép Việc kiểm tra thủ công cho tình cực khó, chí “vô phương” Hoạt động kiểm thử tự động nhằm mục đích kiểm tra, phát lỗi phần mềm trường hợp đoán trước Nó thường thực sau thiết kế xong tình (test case) Tuy nhiên, trường hợp kiểm tra cần thiết phải tự động hóa, tất test case kiểm thử viên phải đánh giá chọn test case phù hợp cần thiết để áp dụng kiểm thử tự động dựa tiêu chí đề cập bên Các bước quy trình kiểm thử tự động Việc phát triển kiểm thử tự động tuân theo bước phát triển phần mềm, phải xem việc phát triển kiểm thử tự động giống phát triển dự án Hình 1.4 Tương quan kiểm thử tự động toàn chu trình kiểm tra phần mềm Giống phát triển phần mềm, để thành công kiểm thử tự động, nên thực bước sau: • Thu thập đặc tả yêu cầu test case; lựa chọn phần cần thực kiểm thử tự động • Phân tích thiết kế mô hình phát triển kiểm thử tự động • Phát triển lệnh đặc tả (script) cho kiểm thử tự động • Kiểm tra theo dõi lỗi script kiểm thử tự động Bảng sau mô tả rõ bước thực kiểm thử tự động 10 Ketnooi.com kết nối công dân điện tử Chọn loại (kiểu) scenario: Chọn tùy chọn Goal-Oriented Scenario Màn hình Controller (goal-oriented) Design view có thành phần chính: Scenario Scripts: Xác định Vuser scripts, đường dẫn, phần trăm tổng số mục tiêu ấn định cho script, máy sinh tải Cấu hình thiết lập cho scenario Scenario Goal: Mục tiêu test, số lượng người dùng mà mình muốn sử dụng để đạt tới mục tiêu suốt trình scenario, hành vi tải Chúng ta định nghĩa thiết lập cho mục tiêu từ hộp thoại Edit Scenario Goal Service Level Agreement: Khi thiết kế load test scenario, ta định nghĩa mục tiêu thỏa thuận mức dịch vụ (SLA) cho thước đo thực thi Khi chạy scenario, LoadRunner tập hợp lưu trữ (chứa) liệu thực thi Khi phân tích trình chạy, hình phân tích đối chiếu xem liệu ngược lại điều khoản SLA xác định trạng thái SLA để định nghĩa thước đo Mở hộp thoại Edit Scenario Goal.Click vào nút Edit Scenario Goal chọn Scenario -> Goal Definition Hộp thoại Edit Scenario Goal mở 37 Ketnooi.com kết nối công dân điện tử Nhập tên cho Goal Profile Trong ô Goal Type, chọn Hits per Second Trong ô Reach Goal of … Hits per Second nhập Nhập vào ô minimum 10 vào ô maximum Vuser Trong hộp thoại Edit Scenario Goal, chọn thẻ Load Behavior, chọn Automatic Điều thị Controller chạy theo yêu cầu số lượng Vusers chạy lúc Chọn thẻ Scenario Settings Chỉ định test chạy vòng phút sau đích chạm đến (Run for… after the target has been achieved) chọn Continue scenario without reaching goal 38 Ketnooi.com kết nối công dân điện tử Sau tải đạt lượt truy cập giây, Controller chạy scenario thêm phút nữa, thêm bớt Vuser cần để giữ cho đo lường thực tế 6% đích (mục tiêu) định Do not change recorded think time không chọn chọn tùy chọn LoadRunner chạy scenario có sử dụng think time recorded script cần phải tăng số lượng Vuser scenario để đạt mục tiêu mà đề Thông tin mục tiêu scenario mà gõ vào xuất cửa sổ Scenario Goal Chọn thẻ Run bên hình Click vào nút Start Scenario click vào Scenario -> Start Controller bắt đầu scenario Chúng ta thấy Vuser tăng lên từ từ theo hình dốc thoai thoải bắt đầu chạy, LoadRunner nỗ lực để tạo mục tiêu yêu cầu lượt truy cập/giây Trong suốt trình test, Controller tự động chạy dừng Vuser để trì mục tiêu Biểu đồ Hits per Second hiển thị số lượt truy cập (HTTP requests) yêu cầu lên máy chủ Vusers scenario chạy thực giây Chúng ta thấy sau khoảng thời gian ngắn mức yêu cầu tải đạt 39 Ketnooi.com kết nối công dân điện tử Biểu đồ Transaction Response Time thể lượng thời gian dành cho giao dịch hoàn thành Rất quan trọng theo dõi transaction response time để xem thời gian hồi đáp khách hàng máy chủ tải Xem biểu đồ Throughput cách chọn Throughput Available Graphs có sẵn, drag vào vùng xem biểu đồ Biểu đồ hiển thị lượng liệu mà Vusers nhận từ Web server vào giây 40 Ketnooi.com kết nối công dân điện tử Chúng ta giám sát việc sử dụng tài nguyên Windows máy chủ processor, disk, vấn đề sử dụng memory Giám sát trình test giúp xác định nguồn gốc vấn đề thực thi hiệu cách kiểm tra biểu đồ tài nguyên Windows Resources Chú thích cho danh sách hệ thống đo lường 3.4 Phân tích Scenario Khi có Sever nạp, ta phải phân tích trình chạy xác định lỗi cần thiết để loại trừ để cải thiện thực thi hệ thống Những biểu đồ báo cáo suốt phiên phân tích thể thông tin quan trọng thực thi scenario Sử dụng biểu đồ báo cáo dễ dàng xác định định nghĩa thắt cổ chai (bottlenecks) ứng dụng mình, định cần phải thay đổi để cải thiện thực thi hệ thống Mở LoadRunner Analysis file analysis session: 41 Ketnooi.com kết nối công dân điện tử Màn hình phân tích bao gồm cửa sổ chính: Trình duyệt Phiên làm việc: Trình bày báo cáo vào biểu đồ mở để xem cách tổng quát Ta trình bày báo cáo hay biểu đồ mà không hình phân tích mở, xóa báo cáo hay biểu đồ bạn không muốn xem Cửa sổ Properties: Trình bày thông tin chi tiết biểu đồ hay báo cáo chọn cửa sổ Session Explorer Vùng xem Biểu đồ: Trình bày biểu đồ Chú thích Biểu đồ: Ta xem liệu từ biểu đồ mà chọn 42 Ketnooi.com kết nối công dân điện tử CHƯƠNG III ỨNG DỤNG PHẦN MỀM LOADRUNNER KIỂM TRA HIỆU NĂNG WEBSITE Giới thiệu Hiện nay, hầu hết công ty có Website để giới thiệu quảng bá sản phẩm dịch vụ công ty Thậm chí số công ty thực việc giao dịch buôn bán Website Như việc đảm bảo Website công ty hoạt động tốt gắn liền với thành công kinh doanh công ty Phần mềm kiểm tra hiệu Website cho phép ta mô trước tình người dùng sử dụng chức Website Từ kiểm soát đảm bảo cho hoạt động thông suốt Website Thông thường thử nghiệm ứng dụng web, kiểm tra viên bắt đầu với việc kiểm tra trang, liên kết tất nút chức ứng dụng Sau kiểm tra độ chịu tải Website để đảm báo Website chạy tốt với số lượng người dùng lớn truy cập vào Website lúc Tình kiểm thử Kiểm thử Website đăng ký học tín trường Đại học Vinh Địa chỉ: http://student.vinhuni.edu.vn/CMCSoft.IU.Web.info/login.aspx Mục đích: - Xác định thông số hệ thống, ví dụ: Hits Per Second, Failed Hits/Failed Hits Per Second, Failed Connections… để có đánh giá sơ hệ thống - Xác định số lượng người dùng đồng thời lớn mà hệ thống đáp ứng mà đáp ứng tiêu chuẩn Tiêu chuẩn: - Thời gian trung bình để tải trang Web nhỏ 30 giây - Thời gian lớn tải trang Web không 45 giây Các chức kiểm tra: - Login - Xem kết đăng ký học - Xem chương trình học - Xem lịch thi cá nhân - Tra cứu điểm 43 Ketnooi.com kết nối công dân điện tử - Logout Kịch (Script) tạo bao gồm hành động để chạy chức nói Website Có hai kiểu kiểm tra mà ta thực với kịch này: Load testing: kiểm tra tải Website với số lượng người dùng Kiểm tra dạng trả thông số phản ánh hoạt động Website Ở ta cho kiểm tra với số lượng người dùng ảo bắt đầu tăng dần tối đa 200 khoảng thời gian phút Stress Testing: Dạng kiểm tra xác định số người dùng tối đa mà hệ thống đảm bảo tiêu chuẩn Tạo kịch kiểm tra Chạy Create/ Edit Script để tạo kịch Mở trình duyệt vào địa Website đăng kí học trường Đại học Vinh: http://student.vinhuni.edu.vn/CMCSoft.IU.Web.info/login.aspx Hình 3.1 Giao diện đăng kí học 44 Ketnooi.com kết nối công dân điện tử Đăng nhập thành công thực bước đăng kí học Hình 3.2 Giao diện trang chủ Click vào link menu dọc, ta có thông tin sau: Hình 3.4 Kết đăng kí học Hình 3.5 Chương trình học Ngoài xem thông tin cá nhân sau: Hình 3.6 Thông tin cá nhân 45 Ketnooi.com kết nối công dân điện tử Hình 3.7 Lịch thi cá nhân Hình 3.8 Tra cứu điểm Sau đăng ký học xem thông tin cá nhân, chọn Logout để quay trang chủ Như ta tạo xong kịch đơn giản với Loadrunner Thưc Load Testing Mở Run Load Test với kịch ghi Thiết lập: - Tổng thời gian(/phút)- Total time in minutes: phút - Số lượng người dùng ảo ban đầu- Starting Load Size: - Số lượng người dùng ảo cuối - Concluding Load Size: 200 Các thông số cần kiểm tra là: - Hits Per Second - Throughput - Running vuser - Transaction summary - Average Transaction response time - Window resource - HTTP response Per Second 46 Ketnooi.com kết nối công dân điện tử Hình 3.9 Cài đặt cho Load test Phân tích kết Thời gian phản hồi server Sử dụng biểu đồ Average Transaction Response Time để đánh giá Phân tích kết quả: Thời gian hồi đáp trung bình máy chủ tăng lên theo thời gian Ta thấy thời gian rung bình hành động xem 54,268 giây /100 users tức khoảng 5,4 giây cho 1user, thời gian nhỏ 2,423 giây /100 users lớn 196,657 giây /100 user Sự chênh lệch lớn dó ta thấy website chưa ổn định Khả máy chủ Ta kết hợp biểu đồ Running Vuser Average Transaction response Time để đánh giá 47 Ketnooi.com kết nối công dân điện tử Phân tích kết quả: Số lượng Vuser tăng khoảng từ vuser đến 40 Vuser thời gian hồi đáp hoạt động Action_Transaction giữ ổn đinh Nhưng sau với mức tăng Vuser ổn định thời gian hồi đáp giảm cách nhanh chóng đạt đỉnh 220 giây Còn hoạt động Xem thời gian hồi đáp giảm ổn định với số lượng Vuser tăng Như ta thấy khả máy chủ chưa tốt, Website chạy chưa ổn định Xác định thời điểm server tải Ta kết hợp biểu đồ HTTP Response per Second Hits per Second để đánh giá 48 Ketnooi.com kết nối công dân điện tử Biểu đồ Hits per second biểu thị lượng yêu cầu / giây tới server theo thời gian Biểu đồ HTTP Response per Second thể khả đáp ứng webserver với số lượng người dung tương ứng Nếu biểu đồ giống hệ thống đáp ứng lượng người dung Ngược lại tức server tải, cần phải sử dụng tới giải pháp tối ưu hóa code, chia tải (load balancing) Phân tích kết quả: Ta thấy biểu đồ giống chứng tỏ hệ thống đáp ứng lượng người dung Đánh giá mức độ lỗi Ta sử dụng biểu đồ Transaction Sumary để đánh giá Phân tích kết quả: Nhìn vào biểu đồ ta thấy Action_Transaction fail cao chứng tỏ mức độ lỗi website nhiều, cần phải sử dụng giải pháp tối ưu hóa code 49 Ketnooi.com kết nối công dân điện tử KẾT LUẬN VÀ HƯỚNG PHẤT TRIỂN Kết luận Qua trình nghiên cứu triển khai, đề tài “Tìm hiểu phần mềm Loadrunner kiểm tra hiệu WebSite” đạt số kết sau: - Nắm sở lí thuyết kiểm thử, kỹ thuật kiểm thử tự động, số vấn đề cần ý thực kiểm thử cho ứng dụng Web - Tìm hiểu công cụ kiểm thử tải LoadRunner áp dụng cho việc kiểm thử tải - Sử dụng công cụ LoadRunner áp dụng quy trình kiểm thử để thực kiểm thử tải cho trang Web - Đưa số đánh giá, nhận xét hiệu website - Với kết đạt được, đề tài có ý nghĩa thực tiễn lĩnh vực nghiên cứu ứng dụng kiểm thử để xác định giới hạn tải, góp phần tối ưu hóa trang Web Hướng phát triển Trên sở kiểm thử tải, ta thực mở rộng việc tìm hiểu ảnh hướng nhân tố mạng đến việc thực kiểm thử tải nào, bên cạnh ñó ta thực tìm hiểu công nghệ, ngôn ngữ phát triển có ảnh hưởng đến hoạt động kiểm thử tải thực trang Web tảng ngôn ngữ khác Thực tìm hiểu công cụ kiểm thử khác WebLOAD, OpenSATA,… Thực kiểm thử trang Web cho loại công cụ để tìm ưu điểm khuyết điểm công cụ khác so với LoadRunner để có nhìn khách quan rõ ràng công cụ kiểm thử, để có nhận xét xác, đắn công cụ LoadRunner 50 Ketnooi.com kết nối công dân điện tử TÀI LIỆU THAM KHẢO http://sqa.fyicenter.com/LoadRunner_Controller http://testervn.com/, Hướng dẫn cài đặt Loadrunner http://testervn.com/, Hướng dẫn sử dụng Loadrunner http://www.testingvn.com, Loadrunner https://datgs.wordpress.com, Mercury Loadrunner Analysis – Phân tích kết Load Test 51 [...]... kỹ năng tạo script kiểm thử tự động - Không áp dụng được trong việc tìm lỗi mới của phần mềm 11 Ketnooi.com kết nối công dân điện tử CHƯƠNG II TÌM HIỂU PHẦN MỀM LOADRUNNER 1 Giới thiệu phần mềm Loadrunner LoadRunner là công cụ kiểm thử tự động thực hiện việc kiểm tra hiệu năng của phần mềm Nó cho phép chúng ta tìm ra những lỗi về khả năng thực thi bằng việc phát hiện nguyên nhân, chỗ làm cho phần mềm. .. dung trang web Khi thực hiện việc test, cần phải xác minh tính chính xác nội dung được tìm thấy ở trang trả về Một nội dung kiểm tra phải xác minh thông tin mong đợi xuất hiện trên trang web khi script được thực thi Ta có thể chèn 2 loại nội dung kiểm tra : text check và image check - Text check kiểm tra một chuỗi văn bản xuất hiện trên trang web - Image check kiểm tra hình ảnh xuất hiện trên trang... mạnh với giải pháp kiểm tra tải, phát hiện và đưa ra giải pháp cải tiến Ứng dụng LoadRunner sẽ giúp giảm thời gian viết test script đến 80% nhờ có chức năng tự động phát sinh script mô tả lại các tình huống muốn kiểm tra LoadRunner có khả năng tạo ra hàng ngàn người dùng ảo thực hiện các giao dịch cùng một lúc Sau đó LoadRunner giám sát các thông số xử lý của phần mềm được kiểm tra Kết quả thống kê... khi áp dụng kiểm thử tự động vào kiểm tra phần mềm Thuận lợi - Kiểm thử phần mềm không cần sự can thiệp của kiểm thử viên - Giảm chi phí khi thực hiện kiểm tra số lượng lớn test case hoặc test case lặp lại nhiều lần - Giả lập tình huống khó có thể thực hiện bằng tay Khó khăn - Mất chi phí tạo các script để thực hiện kiểm thử tự động - Tốn chi phí dành cho bảo trì các script - Đòi hỏi kiểm thử viên... Internet Explorer 6.0 service pack 1 trở lên 4 Sử dụng phần mềm Loadrunner 3.1 Tạo kịch bản bằng Loadrunner Kịch bản là những hành động mà người dùng sẽ tương tác với WebSite cần kiểm tra Sau khi tạo kịch bản, ta phải đảm bảo kịch bản sẽ hoạt động bình thường giống như khi ta thực hiện đối với trang Web cần kiểm tra Trong một môi trường Test, LoadRunner thay thế con người sử dụng sức mạnh của máy tính,... lưu lại và cho phép kiểm thử viên thực hiện phân tích Loadrunner gồm có các thành phần sau: - Virtual User Generator: Tự động tạo ra VuGen script để lưu lại các thao tác người dùng tương tác lên phần mềm VuGen script này còn được xem là hoạt động của một người ảo mà LoadRunner giả lập - Controller: Tổ chức, điều chỉnh, quản lý và giám sát hoạt động kiểm tra tải Thành phần này có chức năng tạo ra những... web Tìm kiếm một văn bản Ở ví dụ này ta sẽ thêm một đoạn văn bản kiểm tra để kiểm tra cụm từ "Find Flight" xuất hiện trên một vùng của trang trên script Chèn vào một đoạn văn bản kiểm tra : Mở Content Check Wizard, click Content Checks Content Check wizard hiển thị thumbnail của mỗi bước trên script Chọn tab Page View bên phải bảng để hiển thị ảnh chụp của thumbnail Chọn trang chứa các văn bản muốn kiểm. .. động mở ra cho phép ta gõ địa chỉ của trang Web cần kiểm tra 14 Ketnooi.com kết nối công dân điện tử Giả sử ta sẽ kiểm tra trang http://127.0.0.1:1080/WebTours/ Đây là trang Web đặt vé máy bay trực tuyến Sau khi bấm OK, một trình duyệt Web mới mở ra và hiển thị trang Web HP Tours đồng thời thanh công cụ Recording cũng được mở ra Ta sẽ thực hiện một số thao tác trên trang Web này, các thao tác này sẽ được... đặt phần mềm Loadrunner Thành phần Yêu cầu Controller User Generator Load Generator Loadrunner Pentium III trở lên (đề nghị Pentium IV) CPU 1Ghz trở lên (đề nghị 2.4 Ghz) Windows 2000 SP4 HĐH Windows 2003 PS3 (Standard and Enterprise editions) Window XP SP2 (đã tắt firewall) HĐH dựa trên UNIX RAM 1GB 512MB trở lên (đề nghị 1GB) Đĩa cứng 2GB 1GB Trình duyệt Phụ thuộc giao thức và ứng dụng phải kiểm tra. .. ta ghi lại Project bằng cách chọn File/Save Như vậy ta đã tạo được một kịch bản kiểm thử tuy nhiên kịch bản này chưa hoàn hảo, nó cần được chỉnh sửa 3.2 Hiệu chỉnh kịch bản Sau khi đã khởi tạo kịch bản thì công việc tiếp theo là phải kiểm tra lại kịch bản để xử lý các đoạn mã Script bị lỗi, có thể ảnh hưởng đến kết quả kiểm thử Thỉnh thoảng, chạy lại một cách đơn giản sẽ không thành công, mặc dù quá