Nghiên cứu và ứng dụng công cụ kiểm thử tự động trong kiểm thử phần mềm – Tài liệu text

Nghiên cứu và ứng dụng công cụ kiểm thử tự động trong kiểm thử phần mềm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2 MB, 24 trang )

1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

MAI THỊ NHI

NGHIÊN CỨU VÀ ỨNG DỤNG CÔNG CỤ KIỂM THỬ
TỰ ĐỘNG TRONG KIỂM THỬ PHẦN MỀM

Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số: 60.48.15

TÓM TẮT LUẬN VĂN THẠC SĨ

HÀ NỘI – 2012
2

Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: PGS.TS. HUỲNH QUYẾT THẮNG
(Ghi rõ học hàm, học vị)

Phản biện 1: ……………………………………………………………………………

Phản biện 2: …………………………………………………………………………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công
nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày tháng năm

Có thể tìm hiểu luận văn tại:
– Thư viện của Học viện Công nghệ Bưu chính Viễn thông

3

MỞ ĐẦU
Lý do chọn đề tài:
Ngày nay, tự động hóa được ứng dụng ở rất nhiều lĩnh vực, mục đích thường rất đa
dạng và tùy theo nhu cầu đặc thù của từng lĩnh vực, tuy nhiên điểm chung nhất vẫn là giảm
nhân lực, thời gian và sai sót. Ngành công nghệ thông tin mà cụ thể là phát triển phần mềm
cũng không ngoại lệ. Như chúng ta biết, để tạo ra sản phẩm công nghệ thông tin hay phần
mềm có chất lượng thì hoạt động kiểm thử phần mềm đóng vai trò rất quan trọng, trong khi
đó hoạt động này lại tiêu tốn và chiếm tỷ trọng khá lớn công sức và thời gian trong một dự
án. Do vậy, nhu cầu tự động hoá quy trình kiểm thử phần mềm cũng được đặt ra.
Qua thực tế cho thấy, việc áp dụng kiểm thử tự động hợp lý sẽ mang lại thành công cho
hoạt động kiểm thử 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 sự nhàm chán và rèn luyện kỹ năng lập trình cho cán bộ kiểm thử.
Đó là lý em chọn đề tài “Nghiên cứu và ứng dụng công cụ kiểm thử tự động trong
Kiểm thử phần mềm” làm luận văn tốt nghiệp.

Mục đích của luận văn: Đề tài tìm hiểu cơ sở lý thuyết về kiểm thử cũng như cách
triển khai công cụ kiểm thử phần mềm tự động để giảm nhân lực kiểm thử và đảm bảo chất
lượng phần mềm hơn với công việc kiểm thử bằng tay.
Mục tiêu chính của đề tài là nghiên cứu giai đoạn nào cần áp dụng công cụ kiểm thử
tự động, các yếu tố nào cần kiểm thử hiệu năng.
Đối tượng và phạm vi nghiên cứu: Luận văn nghiên cứu lý thuyết kiểm thử phần mềm;
bên cạnh đó nghiên cứu công cụ kiểm thử tự động và áp dụng các dự án tại Trung tâm phần
mềm Viettel.
Phương pháp nghiên cứu: Nghiên cứu tổng quan về kiểm thử phần mềm, các kỹ thuật
kiểm thử, nghiên cứu công cụ kiểm thử phần mềm tự động QuickTest Professional,
LoadRunner và ứng dụng vào một dự án phát triển tại Trung tâm phần mềm viễn thông
Viettel – Tập đoàn viễn thông quân đội.
Với mục tiêu đặt ra như vậy, những nội dung và kết quả nghiên cứu chính của luận
văn được trình bày trong ba chương như sau:
Chương 1: Tổng quan về kiểm thử.
4

Chương 2: Nghiên cứu các công cụ kiểm thử phần mềm tự động.
Chương 3: Ứng dụng.
Phần kết luận đưa ra những đánh giá về những kết quả đạt được và thảo luận về
huớng nghiên cứu tiếp của luận văn.
Trong quá trình thực hiện Luận văn, do thời gian cũng như trình độ của tác giả còn
có những hạn chế nhất định nên không thể tránh khỏi những sai sót. Rất mong nhận được sự
góp ý của các thầy, cô giáo và các bạn để Luận văn hoàn thiện hơn. Tôi xin chân thành cảm
ơn sự hướng dẫn, và giúp đỡ tận tình của PGS.TS. Huỳnh Quyết Thắng, các thầy trong
khoa Quốc tế và Đào tạo sau đại học – Học viện Công nghệ BC-VT đã giúp đỡ tôi trong quá
trình học tập cũng như trong quá trình làm Luận văn.

5

CHƯƠNG 1
TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM
1.1. Kiểm thử phần mềm
Kiểm thử phần mềm là quy trình được sử dụng để đánh giá, kiểm tra chất lượng phần
mềm ở nhiều khía cạnh khác nhau dựa trên các yêu cầu của người sử dụng đối với sản phẩm
phần mềm, nhằm đảm bảo phần mềm hoạt động tốt trong các môi trường, các trường hợp
khác nhau.
1.2. Phân loại và các kỹ thuật kiểm thử
Ta phân loại kiểm thử dựa vào các yếu tố: Chiến lược kiểm thử, phương pháp kiểm
thử và kỹ thuật kiểm thử.
Dựa vào chiến lược kiểm thử ta có thể phân chia kiểm thử thành hai loại: kiểm thử
thủ công và kiểm thử tự động.
Theo phương pháp tiến hành kiểm thử ta chia kiểm thử làm hai loại: kiểm thử tĩnh và
kiểm thử động.
Dựa vào kỹ thuật kiểm thử ta có thể phân chia kiểm thử thành ba loại: kiểm thử hộp
đen, kiểm thử hộp trắng và kiểm thử hộp xám.
1.3. Kiểm thử tĩnh và kiểm thử động
1.3.1. Ki
ểm thử tĩn
h
1.3.2. Ki
ểm thử động

1.4. Kiểm thử hộp trắng, kiểm thử hộp đen và kiểm thử hộp xám
1.4.1. Ki
ểm thử hộp trắng
– White box testing
Trong phương pháp kiểm thử hộp trắng, ta đi vào tìm hiểu các kỹ thuật kiểm thử hộp
trắng đó là:

– Kiểm thử bao phủ chu trình cơ sở
– Kiểm thử cấu trúc điều khiển
6

1.4.1.1. Kiểm thử đường dẫn cơ sở (Basic Path Testing)
1.4.1.1.1. Đồ thị chu trình (Flow Graph)
1.4.1.1.2. Độ phức tạp cyclomat
1.4.1.1.3. Phát sinh các trường hợp kiểm thử theo đường dẫn cơ sở
1.4.1.2. Kiểm thử cấu trúc điều khiển
1.4.1.2.1. Kiểm thử điều kiện
1.4.1.2.2. Kiểm thử luồng dữ liệu
1.4.1.2.3. Kiểm thử vòng lặp
1.4.1.3. Kiểm thử hộp đen – Black box testing
1.4.1.4. Phân lớp tương đương
1.4.1.5. Phân tích giá trị biên (BVA – Boundary Value Analysis)
1.4.1.6. Kiểm thử so sánh
1.4.1.7. Đoán lỗi
1.4.2. Ki
ểm thử hộp xám
– Gray box testing
1.5. Quy trình kiểm thử phần mềm
1.5.1. Các
giai đoạn
ki
ểm thử phần mềm

Trong một dự án, kiểm thử thường trải qua các giai đoạn: Kiểm thử đơn vị, kiểm thử
tích hợp, kiểm thử hệ thống và kiểm thử chấp nhận.

7

Hình 1.12 – Các giai đoạn kiểm thử
1.5.1.1. Kiểm thử đơn vị (Unit Testing)
1.5.1.2. Kiểm thử tích hợp (Intergration testing)
1.5.1.3. Kiểm thử hệ thống (System Test)
1.5.1.4. Kiểm thử chấp nhận sản phẩm (Acceptance Test)
1.5.1.5. Một số cấp độ kiểm thử khác
1.6. Kết luận chương
Trong chương này, ta đi vào tìm hiểu để có cái nhìn tổng quan về kiểm thử phần
mềm, phân loại kiểm thử dựa vào các yếu tố: Chiến lược kiểm thử, phương pháp kiểm thử
và kỹ thuật kiểm thử.
– Dựa vào chiến lược kiểm thử ta có thể phân chia kiểm thử thành hai loại: kiểm
thử thủ công và kiểm thử tự động.
– Theo phương pháp tiến hành kiểm thử ta chia kiểm thử làm hai loại: kiểm thử tĩnh
và kiểm thử động.
– Theo phương pháp tiến hành kiểm thử ta chia kiểm thử làm hai loại: kiểm thử tĩnh
và kiểm thử động.
– Dựa vào kỹ thuật kiểm thử ta có thể phân chia kiểm thử thành ba loại: kiểm thử
hộp đen, kiểm thử hộp trắng và kiểm thử hộp xám.
8

Luận văn cũng tìm hiểu về quy trình phân phần mềm, các khái niệm về trường hợp
kiểm thử (testcase), kịch bản kiểm thử (testscript). Quy trình phần mềm gồm các giai đoạn
kiểm thử: kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, kiểm thử chấp nhận sản
phẩm và các phương pháp kiểm thử con người. Chương 2 sẽ đi tìm hiểu khái quát về kiểm
thử tự động, quy trình kiểm thử tự động, mục đích của việc kiểm thử tự động và các công cụ
(tool) kiểm thử tự động chức năng, công cụ kiểm thử hiệu năng cho các ứng dụng phần
mềm.

9

CHƯƠNG 2
NGHIÊN CỨU CÔNG CỤ KIỂM THỬ PHẦN MỀM TỰ ĐỘNG
2.1. Khái quát về kiểm thử phần mềm tự động
Kiểm thử phần mềm tốn nhiều chi phí nhân công, thời gian. Trong một số dự án, chi
phí kiểm thử phần mềm chiếm 50% tổng giá trị của dự án. Nếu cần ứng dụng an toàn hơn,
chi phí kiểm thử còn cao hơn nữa.
Do đó một trong các mục tiêu của kiểm thử là tự động hóa nhiều, nhờ đó mà giảm
thiểu chi phí, giảm lỗi, đặc biệt giúp việc kiểm thử hồi qui dễ dàng và nhanh chóng hơn.
Tự động hóa việc kiểm thử là dùng phần mềm điều khiển việc thi hành kiểm thử, so
sánh kết quả có được với kết quả mong muốn, thiết lập các điều kiện đầu vào, các kiểm soát
kiểm thử và các chức năng báo cáo kết quả
2.1.1. Ki
ểm thử tự động l
à gì?
Kiểm thử tự động là quá trình thực hiện một cách tự động các bước trong một kịch
bản kiểm thử. Kiểm thử tự động bằng một công cụ nhằm rút ngắn thời gian kiểm thử.
2.1.2. T
ại sao phải kiểm thử tự động?

Kiểm thử phần mềm tự động với mục đích:
– Giảm bớt công sức và thời gian thực hiện quá trình kiểm thử
– Tăng độ tin cậy.
– Giảm sự nhàm chán cho con người
– Rèn luyện kỹ năng lập trình cho kiểm thử viên
– Giảm chi phí cho tổng quá trình kiểm thử.
Khi nào cần kiểm thử tự động?
– Không đủ tài nguyên: Khi số lượng TestCase quá nhiều mà kiểm thử viên

không thể hoàn tất trong thời gian cụ thể
– Kiểm tra hồi quy: Nâng cấp phần mềm, kiểm tra lại các tính năng đã chạy tốt
và những tính năng đã sửa. Tuy nhiên, việc này khó đảm bảo về mặt thời gian
– Kiểm tra khả năng vận hành phần mềm trong môi trường đặc biệt:
10

 Đo tốc độ trung bình xử lý một yêu cầu của Web server
 Xác định số yêu cầu tối đa được xử lý bởi Web Server
 Xác định cấu hình máy thấp nhất mà PM vẫn có thể hoạt động tốt
2.1.3. Quy trình ki
ểm thử tự động

Bảng sau mô tả rõ hơn các bước thực hiện kiểm thử tự động:
Bảng 2.1 – Các bước thực hiện kiểm thử tự động
STT Bước thực hiện Mô tả
1
Tạo kịch bản kiểm thử
Giai đoạn này dùng công cụ kiểm thử để ghi lại các
thao tác lên phần mềm cần kiểm tra và tự động
sinh ra kịch bản kiểm thử.
2
Chỉnh sửa kịch bản
kiểm thử
Chỉnh sửa để kịch bản kiểm thử thực hiện kiểm tra
theo đúng yêu cầu đặt ra. Cụ thể, làm theo trường
hợp kiểm thử cần thực hiện.
3
Chạy kịch bản kiểm thử
Chạy kịch bản kiểm thử để kiểm tra phần mềm có

đưa ra đúng như kết quả mong muốn không
4
Đánh giá kết quả Đánh giá kết quả sau khi chạy kịch bản kiểm thử

2.1.4. Công c
ụ kiểm thử tự động

2.2. Nghiên cứu công cụ kiểm thử tự động chức năng bằng QuickTest
Professional
Phần mềm HP Quick Test Professional là phần mềm kiểm soát việc test tự động
những chức năng của một sản phẩm phần mềm khác. Phần mềm QTP là một bộ phận của
hệ thống Mercury Quality Center bao gồm nhiều module phần mềm phối hợp với nhau để
quản lý toàn bộ quy trình đảm bảo chất lượng sản phẩm phần mềm. Trước đây, do hãng
Mercury phát hành. Sau này, tập đoàn HP đã mua lại toàn bộ hãng Mercury, nên tên gọi của
nó là: HP QuickTest Professional.
11

Quick Test Professional là công cụ kiểm thử dùng để kiểm tra chức năng (functional
test) và cho phép thực hiện kiểm tra hồi qui (regression test) một cách tự động.
2.2.1. Lo
ại phần mềm hỗ trợ

2.2.2.
Đặc điểm

2.2.3. Các thành ph
ần quan trọng của QuickTest Professional

a. Action

Giống như hàm hoặc thủ tục trong các ngôn ngữ lập trình khác, Action ghi lại các
bước thực hiện kiểm thử tự động và nó có thể được sử dụng lại nhiều lần. Trong một test
script có thể có nhiều Action.
b. Data Table
Nơi lưu dữ liệu phục vụ cho kiểm thử tự động. Một test script sẽ có một Data Table
được dùng chung cho tất cả các Action. Bên cạnh đó, mỗi Action cũng có một Data Table
cho riêng mình.
c. Object Repository (OR)
Cấu trúc theo dạng cây, mô tả các đối tượng trong phần mềm được kiểm tra. Đây
được xem là cầu nối để test script tương tác với phần mềm được kiểm tra.
Khi ra lệnh cho QTP ghi lại các thao tác người dùng lên phần mềm thì trong OR sẽ tự
động phát sinh thành phần đại diện cho những đối tượng trên phần mềm vừa được thao tác.
OR có thể tổ chức thành 2 loại, một loại dùng chung cho nhiều test script, loại khác
dùng theo từng Action.
Để xem OR, chọn menu Tools > Object Repository.
d. Checkpoint
Có thể hiểu là nơi kiểm tra trong test script, khi chạy nó sẽ thực hiện so sánh kết quả
thực tế khi kiểm tra phần mềm với kết quả mong đợi. Sau khi tiến hành so sánh QTP sẽ tự
động ghi lại kết quả vào Test Results (nơi lưu kết quả khi chạy test script).
2.2.4. Ngôn ng
ữ sử dụng viết script

2.3. Nghiên cứu công cụ kiểm thử hiệu năng
2.3.1. Khái quát v
ề kiểm thử hiệu năng

Các mục tiêu cần kiểm tra hiệu năng:
12

 Thời gian phản hồi (Response time), là thời gian từ lúc client gửi request tới

server cho đến khi client nhận được response từ server trả về.
 Throughput: Thông lượng hệ thống, tính bằng số giao dịch (transaction) hệ
thống đáp ứng được trong một khoảng thời gian. Đơn vị tổng quát là
transaction per time_period vd: transactions per second, calls per day
 Concurrency: Số giao dịch đồng thời được thực hiện, tính bằng số giao dịch
đồng thời hệ thống đáp ứng được. Đơn vị là transaction, vd: 200 transactions
đồng thời, 300 transactions đồng thời
 CPU usage: Hiệu suất sử dụng CPU. Đơn vị là %.
 RAM usage: Hiệu suất sử dụng RAM. Đơn vị là %.
 Fail rate: Tỉ lệ lỗi, tính bằng số giao dịch không thực hiện thành công trên
tổng số giao dịch đã thực hiện. Giá trị này dùng để làm điều kiện cần cho các
mục tiêu trên. Đơn vị là %.
– Tiêu chuẩn thành công: Response time, Throughput, Concurrency, CPU usage,
RAM usage, Fail rate có thể chấp nhận được
2.3.2. Quy trình ki
ểm thử hiệu năng

2.3.3. Gi
ới thiệu về công cụ Load Runner

2.3.3.1. Đặc điểm
LoadRunner giả lập nhiều 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ê
sẽ được lưu lại và cho phép kiểm thử viên thực hiện phân tích.
Bảng 2.5 – Các thành phần của LoadRunner
Thành phần Chức năng
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 tình huống (scenario)
kiểm tra.
13

Load Generator
Cho phép giả lập hàng ngày người dùng, hoạt động của từng người
sẽ được thực hiện theo VuGen script. Kết quả thực hiện sẽ được
thông báo cho Controller.
Analysis Cung cấp việc xem, phân tích và so sánh các kết quả PT.
Launcher Nơi tập trung tất cả các thành phần của LoadRunner cho người dùng.

2.3.3.2. Các bước thực hiện
1. Recording (Ghi nhận):
Cho phép tự động phát sinh script ghi lại thao tác người dùng lên ứng dụng cần kiểm
tra. Cách tổ chức script của LoadRunner được chia ra thành 3 thành phần chính.
– vuser_init: mỗi người dùng ảo sẽ thực hiện một lần trước khi chạy PT.
– Run: bao gồm một hoặc nhiều hàm (action), và cho phép người dùng ảo chạy lặp lại
nhiều lần. Dựa trên action chúng ta có thể tổ chức các nhóm chứa các action khác nhau và
theo thứ tự tùy ý.
– vuser_end: mỗi người dùng ảo thực hiện một lần cuối cùng khi chạy PT.
2. Replay (Phát lại):
Đây là bước cho phép chạy thử để kiểm tra script đã chạy đúng yêu cầu của một
người dùng ảo hay chưa, qua đó có sự chỉnh sửa nếu cần. Bên cạnh đó LoadRunner còn cho
phép tổ chức thứ tự, số lần lặp lại các action hiện đang có bằng cách chọn Open Run-Time
Settings, và thiết lập thời gian tương tác giữa người dùng ảo và web server
3. Enhancements (Nâng cao):
– Tạo transaction: transaction là một số hành động do chúng ta chọn từ quá trình tự

động phát sinh script. Mục tiêu là giám sát thông số hoạt động của một số hành động trong
transaction đó. Thông số giám sát sẽ được thể hiện sau khi chúng ta thực hiện kiểm thử hiệu
năng
– Tham biến hóa: thay thế các giá trị cố định trong script bằng các biến.
– Kiểm tra nội dung: cho phép thêm các điểm kiểm tra nội dung, trong LoadRunner
gọi là content check, có thể hiểu giống như một thuật ngữ khác đã được đề cập trong bài
viết trước là checkpoint.
4. Prepare For Load (Chuẩn bị thực thi):
– Thiết lập sự lặp lại của các action, ở giai đoạn Replay chúng ta cũng có thể làm điều
này.
14

– Thiết kế tình huống: thiết lập số người dùng ảo tối đa thực hiện cùng một lúc, thời
gian chạy bao lâu, số lượng người dùng ảo tăng như thế nào (Ramp Up) hoặc giảm như thế
nào (Ramp Down).
– Thực hiện tình huống: thực thi các tình huống kiểm tra, phân tích kết quả dựa trên
các thông số của môi trường kiểm tra, ví dụ: số yêu cầu gửi tới web server xử lý trong 1
giây, số hồi đáp từ server trong 1 giây, số trang mà người dùng có thể mở trong 1 giây,
5. Finish (Kết thúc):
– Upload script lên Performance Center server, đây là một phần trong việc thực hiện
giải pháp chia sẻ tài nguyên PT qua Internet.
2.4. Kết luận chương
Trong chương này ta tập trung vào tìm hiểu khái quát về kiểm thử tự động là gì? Tại
sao phải kiểm thử tự động? Quy trình kiểm thử tự động? Các kỹ thuật và phương pháp kiểm
thử tự động cũng được trình bày một cách cơ bản nhất.
Về kiểm thử tự động chức năng, luận văn cũng đánh giá khi nào cần kiểm thử tự
động có hiệu quả nhất cả về chi phí và thời gian, đồng thời đề xuất ra quy trình kiểm thử tự
động tự chức năng. Từ cơ sở lý thuyết trên, luận văn đã tìm hiểu chi tiết công cụ kiểm thử
chức năng QuickTest Professional, gồm: Loại phần mềm hỗ trợ, đặc điểm về công cụ và
ngôn ngữ sử dụng để viết script.

Về kiểm thử hiệu năng, luận văn đã đưa ra mục đích của việc kiểm thử hiệu năng và
đề xuất các yếu tố về hiệu năng cần kiểm thử cho các ứng dụng phần mềm như: Số giao
dịch đồng thời, thời gian đáp ứng cho mỗi giao dịch dựa trên các thông số về server CPU,
RAM và có thể để đánh giá được hiệu suất sử dụng CPU, hiệu suất sử dụng RAM.
Từ cơ sở lý thuyết về kiểm thử hiệu năng, luận văn đã tìm hiểu chi tiết công cụ kiểm
thử hiệu năng Load Runner, gồm: Đặc điểm, các thành phần và các bước thực hiện của
LoadRunner.
Chương 3 sẽ dựa vào các khái niệm, quy trình kiểm thử chung trong chương 1 và quy
trình kiểm thử tự động được mô tả trong chương 2 để áp dụng một ứng dụng cụ thể, đồng
thời phân tích và đánh giá các kết quả mô phỏng cho ứng dụng này.
15

CHƯƠNG 3
ỨNG DỤNG
3.1. Đặt vấn đề bài toán ứng dụng công cụ kiểm thử
Kiểm thử phần mềm là một trong những hoạt động quan trọng trong quy trình phát
triển phần mềm. Nó góp một phần rất lớn trong việc đánh giá chất lượng một phần mềm và
là quy trình bắt buộc trong các dự án phần mềm trên thế giới cũng như trong nước. Tuy
nhiên, hoạt động kiểm thử thường gặp nhiều khó khăn. Thứ nhất, kiểm thử các hệ thống
phức tạp đòi hỏi rất nhiều nguồn tài nguyên và chi phí cao. Thứ hai, quy trình phát triển
phần mềm luôn trải qua nhiều hoạt động biến đổi thông tin, sự mất mát thông tin trong quá
trình biến đổi là yếu tố chính làm cho hoạt động kiểm thử khó khăn. Thứ ba, kiểm thử chưa
được chú trọng trong đào tạo con người. Cuối cùng, không tồn tại kỹ thuật kiểm thử cho
phép khẳng định một phần mềm hoàn toàn đúng đắn hay không còn lỗi.
Chính vì thế, luận văn này tập trung nghiên cứu các công cụ kiểm thử tự động để áp
dụng vào giai đoạn kiểm thử cho các ứng dụng. Chương 3 đi vào tìm hiểu một ứng dụng cụ
thể và nghiên cứu xây dựng các bộ dữ liệu kiểm thử cho một số chức năng cần kiểm thử tự
động.
3.2. Đề xuất áp dụng các công cụ kiểm thử chức năng QuickTest Professional và
kiểm thử hiệu năng Load Runner tại Trung tâm phần mềm Viettel (TTPM

Viettel)
3.2.1. Hi
ện trạng kiểm thử phần mềm
t
ại
TTPM Viettel
Trung tâm phần mềm Viettel đã và đang phát triển các ứng dụng quản lý cho các
mảng như hỗ trợ văn phòng, các dịch vụ viễn thông, các dịch vụ VAS,…vv… Ban đầu,
triển khai tại các đơn vị thuộc Tập đoàn viễn thông quân đội tại Việt Nam, sau đó triển khai
các ứng dụng này ở một số quốc gia khác. Ở các nước mà Viettel triển khai mạng, các ứng
dụng chỉ tập trung vào nâng cấp một số chức năng cho phù hợp với nghiệp vụ ở các nước sở
tại. Việc thay đổi một số chức năng có thể ảnh hưởng đến các chức năng khác của cả hệ
thống hoặc chỉ thay đổi ở tầng kiến trúc, không thay đổi trên giao diện màn hình, dẫn đến
phải kiểm thử lại toàn bộ ứng dụng. Tuy nhiên, việc kiểm thử các ứng dụng nâng cấp này
vẫn chủ yếu làm theo cách thủ công (manual) – kiểm thử bằng mắt, điều này làm tăng chi
16

phí cho dự án, dễ bị trễ tiến độ hoặc dễ bị lọt lỗi phần mềm khi triển khai cho khách hàng sử
dụng.
Ngoài ra, việc đánh giá hiệu năng cũng mới chỉ thực hiện bằng cách ghi lại lịch sử
(log) hoặc giám sát các hệ thống đang chạy ở thời điểm thường và thời điểm cao tải, sau đó
phân tích và đánh giá hiệu năng. Các công việc này thường được kiểm tra khi đã triển khai ở
môi trường thật (khi khách hàng đã sử dụng phần mềm) nên tìm các lỗi hiệu năng thường
được phát hiện muộn, làm mất uy tín của khách hàng.
3.2.2. Đề xuất quy tr
ình ki
ểm thử tự động tại TTPM Viettel

Từ các khái niệm cơ bản, quy trình kiểm thử chung được mô tả trong chương 1 và
quy trình kiểm thử tự động được mô tả trong chương 2, luận văn đề xuất áp dụng quy trình

kiểm thử kiểm thử tự động sử dụng các công cụ QuickTest Professional và LoadRunner tại
TTPM Viettel như sau:
3.2.2.1. Quy trình kiểm thử chức năng tự động
Các bước thực hiện:
Bước 1: Sau khi tìm hiểu nghiệp vụ từ các tài liệu phân tích, thiết kế, nhóm kiểm thử
Lập kế hoạch kiểm thử xác định các chức năng cần kiểm tra tự động.
Bước 2: Nhóm kiểm thử Thiết kế kịch bản kiểm thử các chức năng, mô tả các
luồng nghiệp vụ chính, phụ cần kiểm tra.
Bước 3: Nhóm kiểm thử Thiết kế các trường hợp kiểm thử. Các trường hợp kiểm
thử đủ các thông tin: Mục đích, điều kiện kiểm thử, các bước thực hiện và kết quả mong
muốn.

17

Các bước thực hiện
Bước 1
Bước 2
Bước 3
Bước 4
Bước 5
Quy trình thực hiện
Tài liệu phân tích, thiết kế
Lập kế hoạch kiểm thử
Thiết kế kịch bản kiểm
thử
Thiết kế các trường
hợp kiểm thử
(TestCase)
Thực hiện kiểm thử tự

động
Phân tích, đánh giá kết
quả và tạo báo cáo
kiểm thử
Kết thúc

Hình 3.1 – Quy trình kiểm thử chức năng tự động
Bước 4: Từ các trường hợp kiểm thử được thiết kế trong bước 3, nhóm kiểm thử phát
triển các Test Script bằng công cụ Quick Test Professional, cấu hình các dữ liệu đầu vào
cho từng trường hợp và thực hiện kiểm thử tự động các Test Script đã tạo.
Bước 5: Kết quả thực hiện các test script ở Bước 4, đánh giá và tạo báo cáo kiểm thử.
3.2.2.2. Quy trình kiểm thử hiệu năng

18

Hình 3.2 – Quy trình kiểm thử hiệu năng
Các bước thực hiện:
Bước 1: Xác định các thông số về môi trường, mục tiêu và các chức năng kiểm thử
để chuẩn bị cho hoạt động kiểm thử hiệu năng:
– Môi trường kiểm thử: phần cứng, phần mềm, cơ sở dữ liệu, công cụ sử dụng
để đo hiệu năng
– Các mục tiêu kiểm thử hiệu năng: Thời gian xử lý trung bình (Response time),
Thông lượng hệ thống (Throughput), Số người dùng đồng thời.
19

Bước 2: Chuẩn bị môi trường kiểm thử hiệu năng, từ các thông số hiệu năng được
khảo sát, phân tích ở môi trường thật, ta xác định tỷ lệ tương ứng trên môi trường test.
Bước 3: Tạo kịch bản kiểm thử hiệu năng gồm các thông tin: Chức năng, thông số
người dùng, mục tiêu kiểm thử, tiêu chuẩn thành công.

Bước 4: Thực hiện kiểm thử hiệu năng:
– Phát triển các Test Script trên công cụ Load Runner
– Cấu hình, cài đặt các tham số cần đo hiệu năng và chạy các script
Bước 5: Từ kết quả thực hiện ở bước 4, ta phân tích và đánh giá để xác định các
ngưỡng cho các thông số cần đo.
3.3. Ứng dụng quy trình kiểm thử tự động cho một Dự án cụ thể
Để triển khai thử nghiệm kiểm thử tự động các chức năng bằng công cụ QuickTest
Professional và kiểm thử hiệu năng bằng công cụ LoadRunner, ta thực hiện trên phần mềm
Hệ thống thanh toán cước phí được viết bằng ngôn ngữ Java, sử dụng hệ quản trị cơ sở dữ
liệu SQL Navigator.
20

Billing thực hiện
chốt sổ
Thông tin công nợ
của KH (Payment)
KH thực hiện gạch
nợ
NV/CTV gạch nợ
Pay 199
Sim Đa năng (CTV đa
dịch vụ)
Kênh
TMĐT
Core gạch nợ 1
(Payment)
Core gạch nợ 2
(Payment)
Gạch nợ trên web
(Payment)

Core gạch nợ 3
(Payment)
Điều
chỉnh
ngoài
tháng
Điều
chỉnh
trong
tháng
Điều chỉnh
(Payment)

Hình 3.3 – Luồng thanh toán cước phí dịch vụ trả sau
3.3.1. Th
ử nghiệm kiểm thử
t
ự động các
ch
ức năng

Các bước kiểm thử tự động các chức năng hệ thống Thanh toán cước phí dịch vụ
viễn thông trả sau như sau:
3.3.1.1. Lập kế hoạch kiểm thử

3.3.1.2. Thiết kế kịch bản kiểm thử
Hệ thống Thanh toán cước phí của dịch vụ viễn thông trả sau hỗ trợ những hoạt động
sau đây:
– Tra cứu công nợ thuê bao
– Thực hiện gạch nợ

– Điều chỉnh công nợ thuê bao
21

3.3.1.3. Thiết kế các trường hợp kiểm thử
3.3.1.4. Thực hiện kiểm thử tự động
Tạo các Test Script cho mỗi trường hợp kiểm thử được mô tả ở mục 3.3.1.3 trên công
cụ QuickTest Professional:

Hình 3.9 – Tạo Test Script trong QuickTest Professional
3.2.1.5. Phân tích, đánh giá và tạo báo cáo kiểm thử
Sau khi chạy Test Script, ta có thể xem kết quả của quá trình test thông qua một cửa
sổ Test Result. Test Result bao gồm các mô tả từng bước thực hiện của quá trình. Đối với
các test không chứa các bảng tham số thì Test Result chỉ thể hiện một quá trình test duy
nhất. Ngược lại, với các test bao gồm các bảng tham số, test sẽ được cấu hình để lặp lại
nhiều bước và Test Result sẽ hiển thị rõ từng bước lặp của quá trình Test. Các kết quả là
một nhóm các hành động trong quá trình test.
Nội dung của cửa số Test Result sẽ được thể hiện như sau :
 Một báo cáo tổng quan về Test bào gồm các trạng thái pass, fail, done.
 Dữ liệu được sử dụng trong quá trình chạy test.
 Một cây mở rộng các bước trong quá trình test, chỉ rõ chính xác nới nào ứng dụng
22

hay thao tác xuất hiện lỗi cùng với các diễn tả về lỗi đó.
 Các hình ảnh minh họa bất cứ sai xót nào trong mọi trạng thái test.
+ Từ việc kết quả chạy được ở trên ta tạo báo cáo tổng hợp kết quả kiểm thử như sau:
Bảng 3.4 – Báo cáo kết quả kiểm thử các chức năng
STT

Chức năng Số trường
hợp kiểm

thử (Done)
Số trường
hợp kiểm thử
thành công
(Pass)
Số trường
hợp kiểm thử
thất bại (Fail)

1

Tra cứu công nợ
thuê bao
7 5 2
2

Thanh toán cước
cho thuê bao trả
sau
13 12 1
3

Điều chỉnh công
nợ thuê bao
8 8 0

3.3.2. Th
ử nghiệm kiểm thử hiệu năng

Các bước kiểm thử hiệu năng cho ứng dụng “Thanh toán cươc phí dịch vụ viễn thông

trả sau” như sau:
3.3.2.1. Xác định các mục tiêu kiểm thử
Để đáp ứng nhu cầu nhiều người dùng thực hiện chức năng gạch nợ cho các thuê bao
thành công trong khoảng thời gian chấp nhận được, ta tiến hành xác định các tham số sau
cần đo hiệu năng:
– Tổng số người dùng đồng thời tại thời điểm cao tải
– Thời gian đáp ứng cho mỗi yêu cầu
23

3.3.2.2. Chuẩn bị môi trường kiểm thử hiệu năng
3.3.2.3. Tạo kịch bản kiểm thử hiệu năng
3.3.2.4. Thực hiện kiểm thử hiệu năng
3.3.2.5. Phân tích và đánh giá kết quả
3.4. Kết luận chương
Trên cơ sở lý thuyết về kiểm thử đã nghiên cứu và trình bày ở các chương trên, luận
văn đã phân tích cụ thể nhu cầu của việc kiểm thử tự động, sử dụng công cụ kiểm thử tự
động đem lại lợi ích cả về mặt thời gian và chi phí cho việc phát triển phần mềm. Từ đó,
luận văn đã đề xuất đưa ra quy trình kiểm thử chức năng tự động, quy trình kiểm thử hiệu
năng và áp dụng thử nghiệm tại đơn vị đang công tác – Trung tâm phần mềm Viettel, đồng
thời áp dụng cho một ứng dụng cụ thể, dự án Thanh toán cước phí dịch vụ viễn thông trả
sau với các luồng nghiệp vụ chính: Tra cứu công nợ, thanh toán cước, điều chỉnh giao dịch
thanh toán. Trong đó:
Việc áp dụng kiểm thử chức năng tự động bằng công cụ QuickTest Professional đã
được mô phỏng bằng các thuật toán sắp xếp chọn.
Việc kiểm thử hiệu năng tập trung vào 2 thông số sau:
– Số người dùng truy cập đồng thời
– Thời giao đáp ứng cho mỗi giao dịch
Trên cơ sở đó ta sử dụng công cụ LoadRunner thực hiện kiểm thử lại ứng dụng với
các thông số thu được. Trong LoadRunner ta có thể kết hợp nhiều kịch bản tải, mô phỏng
trạng thái, hành vi người dùng tạo nên kịch bản tải gần giống với thực tế giúp ta đánh giá hệ

thống một cách đúng đắn, đây chính là điểm nổi bật của Load Runner. Bên cạnh đó, Load
Runner còn có chức năng Analysis thực hiện phân tích kết quả kiểm thử hiệu năng giúp cho
ta có cái nhìn tổng quát và chi tiết về kết quả kiểm thử hiệu năng một cách nhanh chóng.
Nếu kết quả cho thấy hệ thống đã quá tải thì cần phải có các điều chỉnh như: mở rộng băng
thông, tối ưu code, áp dụng cơ chế load balancing (phân tải),
24

KẾT LUẬN VÀ KIẾN NGHỊ
1. Kết luận
Qua thời gian làm việc, với sự nỗ lực của bản thân và được sự hướng dẫn tận tình của
PGS.TS Huỳnh Quyết Thắng, tôi đã hoàn thành Luận văn của mình.
Những nội dung chính đã được giải quyết trong luận văn:
– Nêu rõ kiểm thử phần mềm là một hoạt động quan trọng nhằm đảm bảo chất
lượng phần mềm. Việc nghiên cứu lựa chọn các kỹ thuật và chiến lược kiểm
thử phần mềm phù hợp giúp cho việc kiểm thử có hiệu quả, giảm chi phí và
thời gian. Việc xây dựng tài liệu kiểm thử phần mềm hợp lý sẽ giúp cho việc
tổ chức, quản lý và thực hiện kiểm thử có hiệu quả.
– Đề xuất quy trình kiểm thử chức năng tự động sử dụng công cụ QuickTest
Professional, quy trình kiểm thử hiệu năng sử dụng công cụ Load Runner.
– Ứng dụng quy trình đề xuất trên với một số dự án cụ thể.
– Kết quả nghiên cứu được áp dụng thực tế cho các dự án phát triển phần mềm
tại đơn vị công tác cho các dự án nâng cấp, có thể tái sử dụng để triển khai tại
các nước khác
Hiện nay, vấn đề kiểm thử phần mềm hầu như vẫn chưa được đầu tư và quan tâm
đúng mức. Và Việt Nam đang trong quá trình xây dựng một ngành công nghiệp phần mềm
thì không thể xem nhẹ việc kiểm thử phần mềm vì xác suất thất bại sẽ rất cao, hơn nữa, hầu
hết các công ty phần mềm có uy tín đều đặt ra yêu cầu nghiêm ngặt là nếu một phần mềm
không có tài liệu kiểm thử đi kèm thì sẽ không được chấp nhận.
2. Kiến nghị
Việc ứng dụng công cụ phần mềm tự động chắc chắn sẽ giúp giảm công sức của cán

bộ kiểm thử đồng thời làm tăng chất lượng phần mềm. Trong điều kiện Việt Nam hiện nay,
với tỷ trọng gia công phần mềm ngày càng lớn tại các công ty phần mềm, tôi cho rằng kiểm
tra phần mềm tự động với những công cụ như LoadRunner, QuickTest Professional rất đáng
để các doanh nghiệp phần mềm quan tâm nghiên cứu, đầu tư và ứng dụng.

HÀ NỘI – 2012L uận văn được hoàn thành xong tại : HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNGNgười hướng dẫn khoa học : PGS.TS. HUỲNH QUYẾT THẮNG ( Ghi rõ học hàm, học vị ) Phản biện 1 : … … … … … … … … … … … … … … … … … … … … … … … … … … … … … Phản biện 2 : … … … … … … … … … … … … … … … … … … … … … … … … … … … … Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Côngnghệ Bưu chính Viễn thôngVào lúc : giờ ngày tháng nămCó thể khám phá luận văn tại : – Thư viện của Học viện Công nghệ Bưu chính Viễn thôngMỞ ĐẦULý do chọn đề tài : Ngày nay, tự động hóa được ứng dụng ở rất nhiều nghành nghề dịch vụ, mục tiêu thường rất đadạng và tùy theo nhu yếu đặc trưng của từng nghành, tuy nhiên điểm chung nhất vẫn là giảmnhân lực, thời hạn và sai sót. Ngành công nghệ thông tin mà đơn cử là tăng trưởng phần mềmcũng không ngoại lệ. Như tất cả chúng ta biết, để tạo ra loại sản phẩm công nghệ thông tin hay phầnmềm có chất lượng thì hoạt động giải trí kiểm thử phần mềm đóng vai trò rất quan trọng, trong khiđó hoạt động giải trí này lại tiêu tốn và chiếm tỷ trọng khá lớn sức lực lao động và thời hạn trong một dựán. Do vậy, nhu yếu tự động hoá quá trình kiểm thử phần mềm cũng được đặt ra. Qua trong thực tiễn cho thấy, việc vận dụng kiểm thử tự động hóa hài hòa và hợp lý sẽ mang lại thành công xuất sắc chohoạt động kiểm thử phần mềm. Kiểm thử tự động hóa giúp giảm bớt sức lực lao động triển khai, tăng độtin cậy, giảm sự nhàm chán và rèn luyện kỹ năng và kiến thức lập trình cho cán bộ kiểm thử. Đó là lý em chọn đề tài “ Nghiên cứu và ứng dụng công cụ kiểm thử tự động hóa trongKiểm thử phần mềm ” làm luận văn tốt nghiệp. Mục đích của luận văn : Đề tài khám phá cơ sở triết lý về kiểm thử cũng như cáchtriển khai công cụ kiểm thử phần mềm tự động hóa để giảm nhân lực kiểm thử và bảo vệ chấtlượng phần mềm hơn với việc làm kiểm thử bằng tay. Mục tiêu chính của đề tài là nghiên cứu và điều tra tiến trình nào cần vận dụng công cụ kiểm thửtự động, những yếu tố nào cần kiểm thử hiệu năng. Đối tượng và khoanh vùng phạm vi điều tra và nghiên cứu : Luận văn điều tra và nghiên cứu triết lý kiểm thử phần mềm ; cạnh bên đó nghiên cứu và điều tra công cụ kiểm thử tự động hóa và vận dụng những dự án Bất Động Sản tại Trung tâm phầnmềm Viettel. Phương pháp điều tra và nghiên cứu : Nghiên cứu tổng quan về kiểm thử phần mềm, những kỹ thuậtkiểm thử, điều tra và nghiên cứu công cụ kiểm thử phần mềm tự động hóa QuickTest Professional, LoadRunner và ứng dụng vào một dự án Bất Động Sản tăng trưởng tại Trung tâm phần mềm viễn thôngViettel – Tập đoàn viễn thông quân đội. Với tiềm năng đặt ra như vậy, những nội dung và tác dụng nghiên cứu và điều tra chính của luậnvăn được trình diễn trong ba chương như sau : Chương 1 : Tổng quan về kiểm thử. Chương 2 : Nghiên cứu những công cụ kiểm thử phần mềm tự động hóa. Chương 3 : Ứng dụng. Phần Kết luận đưa ra những nhìn nhận về những tác dụng đạt được và bàn luận vềhuớng nghiên cứu và điều tra tiếp của luận văn. Trong quy trình thực thi Luận văn, do thời hạn cũng như trình độ của tác giả còncó những hạn chế nhất định nên không hề tránh khỏi những sai sót. Rất mong nhận được sựgóp ý của những thầy, cô giáo và những bạn để Luận văn triển khai xong hơn. Tôi xin chân thành cảmơn sự hướng dẫn, và giúp sức tận tình của PGS.TS. Huỳnh Quyết Thắng, những thầy trongkhoa Quốc tế và Đào tạo sau đại học – Học viện Công nghệ BC-VT đã trợ giúp tôi trong quátrình học tập cũng như trong quy trình làm Luận văn. CHƯƠNG 1T ỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM1. 1. Kiểm thử phần mềmKiểm thử phần mềm là quy trình tiến độ được sử dụng để nhìn nhận, kiểm tra chất lượng phầnmềm ở nhiều góc nhìn khác nhau dựa trên những nhu yếu của người sử dụng so với sản phẩmphần mềm, nhằm mục đích bảo vệ phần mềm hoạt động giải trí tốt trong những thiên nhiên và môi trường, những trường hợpkhác nhau. 1.2. Phân loại và những kỹ thuật kiểm thửTa phân loại kiểm thử dựa vào những yếu tố : Chiến lược kiểm thử, chiêu thức kiểmthử và kỹ thuật kiểm thử. Dựa vào kế hoạch kiểm thử ta hoàn toàn có thể phân loại kiểm thử thành hai loại : kiểm thửthủ công và kiểm thử tự động hóa. Theo giải pháp thực thi kiểm thử ta chia kiểm thử làm hai loại : kiểm thử tĩnh vàkiểm thử động. Dựa vào kỹ thuật kiểm thử ta hoàn toàn có thể phân loại kiểm thử thành ba loại : kiểm thử hộpđen, kiểm thử hộp trắng và kiểm thử hộp xám. 1.3. Kiểm thử tĩnh và kiểm thử động1. 3.1. Kiểm thử tĩn1. 3.2. Kiểm thử động1. 4. Kiểm thử hộp trắng, kiểm thử hộp đen và kiểm thử hộp xám1. 4.1. Kiểm thử hộp trắng – White box testingTrong giải pháp kiểm thử hộp trắng, ta đi vào tìm hiểu và khám phá những kỹ thuật kiểm thử hộptrắng đó là : – Kiểm thử bao trùm quy trình cơ sở – Kiểm thử cấu trúc điều khiển1. 4.1.1. Kiểm thử đường dẫn cơ sở ( Basic Path Testing ) 1.4.1. 1.1. Đồ thị quy trình ( Flow Graph ) 1.4.1. 1.2. Độ phức tạp cyclomat1. 4.1.1. 3. Phát sinh những trường hợp kiểm thử theo đường dẫn cơ sở1. 4.1.2. Kiểm thử cấu trúc điều khiển1. 4.1.2. 1. Kiểm thử điều kiện1. 4.1.2. 2. Kiểm thử luồng dữ liệu1. 4.1.2. 3. Kiểm thử vòng lặp1. 4.1.3. Kiểm thử hộp đen – Black box testing1. 4.1.4. Phân lớp tương đương1. 4.1.5. Phân tích giá trị biên ( BVA – Boundary Value Analysis ) 1.4.1. 6. Kiểm thử so sánh1. 4.1.7. Đoán lỗi1. 4.2. Kiểm thử hộp xám – Gray box testing1. 5. Quy trình kiểm thử phần mềm1. 5.1. Cácgiai đoạnkiểm thử phần mềmTrong một dự án Bất Động Sản, kiểm thử thường trải qua những quá trình : Kiểm thử đơn vị chức năng, kiểm thửtích hợp, kiểm thử mạng lưới hệ thống và kiểm thử đồng ý. Hình 1.12 – Các quy trình tiến độ kiểm thử1. 5.1.1. Kiểm thử đơn vị chức năng ( Unit Testing ) 1.5.1. 2. Kiểm thử tích hợp ( Intergration testing ) 1.5.1. 3. Kiểm thử mạng lưới hệ thống ( System Test ) 1.5.1. 4. Kiểm thử đồng ý mẫu sản phẩm ( Acceptance Test ) 1.5.1. 5. Một số Lever kiểm thử khác1. 6. Kết luận chươngTrong chương này, ta đi vào tìm hiểu và khám phá để có cái nhìn tổng quan về kiểm thử phầnmềm, phân loại kiểm thử dựa vào những yếu tố : Chiến lược kiểm thử, chiêu thức kiểm thửvà kỹ thuật kiểm thử. – Dựa vào kế hoạch kiểm thử ta hoàn toàn có thể phân loại kiểm thử thành hai loại : kiểmthử bằng tay thủ công và kiểm thử tự động hóa. – Theo chiêu thức thực thi kiểm thử ta chia kiểm thử làm hai loại : kiểm thử tĩnhvà kiểm thử động. – Theo chiêu thức thực thi kiểm thử ta chia kiểm thử làm hai loại : kiểm thử tĩnhvà kiểm thử động. – Dựa vào kỹ thuật kiểm thử ta hoàn toàn có thể phân loại kiểm thử thành ba loại : kiểm thửhộp đen, kiểm thử hộp trắng và kiểm thử hộp xám. Luận văn cũng khám phá về quá trình phân phần mềm, những khái niệm về trường hợpkiểm thử ( testcase ), ngữ cảnh kiểm thử ( testscript ). Quy trình phần mềm gồm những giai đoạnkiểm thử : kiểm thử đơn vị chức năng, kiểm thử tích hợp, kiểm thử mạng lưới hệ thống, kiểm thử đồng ý sảnphẩm và những chiêu thức kiểm thử con người. Chương 2 sẽ đi tìm hiểu và khám phá khái quát về kiểmthử tự động hóa, quá trình kiểm thử tự động hóa, mục tiêu của việc kiểm thử tự động hóa và những công cụ ( tool ) kiểm thử tự động hóa công dụng, công cụ kiểm thử hiệu năng cho những ứng dụng phầnmềm. CHƯƠNG 2NGHI ÊN CỨU CÔNG CỤ KIỂM THỬ PHẦN MỀM TỰ ĐỘNG2. 1. Khái quát về kiểm thử phần mềm tự độngKiểm thử phần mềm tốn nhiều ngân sách nhân công, thời hạn. Trong một số ít dự án Bất Động Sản, chiphí kiểm thử phần mềm chiếm 50 % tổng giá trị của dự án Bất Động Sản. Nếu cần ứng dụng bảo đảm an toàn hơn, ngân sách kiểm thử còn cao hơn nữa. Do đó một trong những tiềm năng của kiểm thử là tự động hóa nhiều, nhờ đó mà giảmthiểu ngân sách, giảm lỗi, đặc biệt quan trọng giúp việc kiểm thử hồi qui thuận tiện và nhanh gọn hơn. Tự động hóa việc kiểm thử là dùng phần mềm tinh chỉnh và điều khiển việc thi hành kiểm thử, sosánh tác dụng có được với hiệu quả mong ước, thiết lập những điều kiện kèm theo nguồn vào, những kiểm soátkiểm thử và những công dụng báo cáo giải trình kết quả2. 1.1. Kiểm thử tự động hóa là gì ? Kiểm thử tự động hóa là quy trình triển khai một cách tự động hóa những bước trong một kịchbản kiểm thử. Kiểm thử tự động hóa bằng một công cụ nhằm mục đích rút ngắn thời hạn kiểm thử. 2.1.2. Tại sao phải kiểm thử tự động hóa ? Kiểm thử phần mềm tự động hóa với mục tiêu : – Giảm bớt sức lực lao động và thời hạn thực thi quy trình kiểm thử – Tăng độ an toàn và đáng tin cậy. – Giảm sự nhàm chán cho con người – Rèn luyện kiến thức và kỹ năng lập trình cho kiểm thử viên – Giảm ngân sách cho tổng quy trình kiểm thử. Khi nào cần kiểm thử tự động hóa ? – Không đủ tài nguyên : Khi số lượng TestCase quá nhiều mà kiểm thử viênkhông thể hoàn tất trong thời hạn đơn cử – Kiểm tra hồi quy : Nâng cấp phần mềm, kiểm tra lại những tính năng đã chạy tốtvà những tính năng đã sửa. Tuy nhiên, việc này khó bảo vệ về mặt thời hạn – Kiểm tra năng lực quản lý và vận hành phần mềm trong thiên nhiên và môi trường đặc biệt quan trọng : 10  Đo vận tốc trung bình giải quyết và xử lý một nhu yếu của Web server  Xác định số nhu yếu tối đa được giải quyết và xử lý bởi Web Server  Xác định thông số kỹ thuật máy thấp nhất mà PM vẫn hoàn toàn có thể hoạt động giải trí tốt2. 1.3. Quy trình kiểm thử tự độngBảng sau diễn đạt rõ hơn những bước thực thi kiểm thử tự động hóa : Bảng 2.1 – Các bước triển khai kiểm thử tự độngSTT Bước triển khai Mô tảTạo ngữ cảnh kiểm thửGiai đoạn này dùng công cụ kiểm thử để ghi lại cácthao tác lên phần mềm cần kiểm tra và tự độngsinh ra ngữ cảnh kiểm thử. Chỉnh sửa kịch bảnkiểm thửChỉnh sửa để ngữ cảnh kiểm thử triển khai kiểm tratheo đúng nhu yếu đặt ra. Cụ thể, làm theo trườnghợp kiểm thử cần triển khai. Chạy ngữ cảnh kiểm thửChạy ngữ cảnh kiểm thử để kiểm tra phần mềm cóđưa ra đúng như tác dụng mong ước khôngĐánh giá hiệu quả Đánh giá hiệu quả sau khi chạy ngữ cảnh kiểm thử2. 1.4. Công cụ kiểm thử tự động2. 2. Nghiên cứu công cụ kiểm thử tự động hóa công dụng bằng QuickTestProfessionalPhần mềm HP Quick Test Professional là phần mềm trấn áp việc test tự độngnhững công dụng của một loại sản phẩm phần mềm khác. Phần mềm QTP là một bộ phận củahệ thống Mercury Quality Center gồm có nhiều module phần mềm phối hợp với nhau đểquản lý hàng loạt tiến trình bảo vệ chất lượng mẫu sản phẩm phần mềm. Trước đây, do hãngMercury phát hành. Sau này, tập đoàn lớn HP đã mua lại hàng loạt hãng Mercury, nên tên gọi củanó là : HP QuickTest Professional. 11Q uick Test Professional là công cụ kiểm thử dùng để kiểm tra công dụng ( functionaltest ) và được cho phép triển khai kiểm tra hồi qui ( regression test ) một cách tự động hóa. 2.2.1. Loại phần mềm hỗ trợ2. 2.2. Đặc điểm2. 2.3. Các thành phần quan trọng của QuickTest Professionala. ActionGiống như hàm hoặc thủ tục trong những ngôn từ lập trình khác, kích hoạt ghi lại cácbước thực thi kiểm thử tự động hóa và nó hoàn toàn có thể được sử dụng lại nhiều lần. Trong một testscript hoàn toàn có thể có nhiều kích hoạt. b. Data TableNơi lưu dữ liệu Giao hàng cho kiểm thử tự động hóa. Một test script sẽ có một Data Tableđược dùng chung cho tổng thể những kích hoạt. Bên cạnh đó, mỗi kích hoạt cũng có một Data Tablecho riêng mình. c. Object Repository ( OR ) Cấu trúc theo dạng cây, miêu tả những đối tượng người tiêu dùng trong phần mềm được kiểm tra. Đâyđược xem là cầu nối để test script tương tác với phần mềm được kiểm tra. Khi ra lệnh cho QTP ghi lại những thao tác người dùng lên phần mềm thì trong OR sẽ tựđộng phát sinh thành phần đại diện thay mặt cho những đối tượng người tiêu dùng trên phần mềm vừa được thao tác. OR hoàn toàn có thể tổ chức triển khai thành 2 loại, một loại dùng chung cho nhiều test script, loại khácdùng theo từng kích hoạt. Để xem OR, chọn menu Tools > Object Repository. d. CheckpointCó thể hiểu là nơi kiểm tra trong test script, khi chạy nó sẽ triển khai so sánh kết quảthực tế khi kiểm tra phần mềm với tác dụng mong đợi. Sau khi thực thi so sánh QTP sẽ tựđộng ghi lại hiệu quả vào Test Results ( nơi lưu tác dụng khi chạy test script ). 2.2.4. Ngôn ngữ sử dụng viết script2. 3. Nghiên cứu công cụ kiểm thử hiệu năng2. 3.1. Khái quát về kiểm thử hiệu năngCác tiềm năng cần kiểm tra hiệu năng : 12  Thời gian phản hồi ( Response time ), là thời hạn từ lúc client gửi request tớiserver cho đến khi client nhận được response từ server trả về.  Throughput : Thông lượng mạng lưới hệ thống, tính bằng số thanh toán giao dịch ( transaction ) hệthống cung ứng được trong một khoảng chừng thời hạn. Đơn vị tổng quát làtransaction per time_period vd : transactions per second, calls per day  Concurrency : Số thanh toán giao dịch đồng thời được triển khai, tính bằng số giao dịchđồng thời mạng lưới hệ thống phân phối được. Đơn vị là transaction, vd : 200 transactionsđồng thời, 300 transactions đồng thời  CPU usage : Hiệu suất sử dụng CPU. Đơn vị là %.  RAM usage : Hiệu suất sử dụng RAM. Đơn vị là %.  Fail rate : Tỉ lệ lỗi, tính bằng số thanh toán giao dịch không thực thi thành công xuất sắc trêntổng số thanh toán giao dịch đã thực thi. Giá trị này dùng để làm điều kiện kèm theo cần cho cácmục tiêu trên. Đơn vị là %. – Tiêu chuẩn thành công xuất sắc : Response time, Throughput, Concurrency, CPU usage, RAM usage, Fail rate hoàn toàn có thể đồng ý được2. 3.2. Quy trình kiểm thử hiệu năng2. 3.3. Giới thiệu về công cụ Load Runner2. 3.3.1. Đặc điểmLoadRunner giả lập nhiều người dùng ảo triển khai những thanh toán giao dịch cùng một lúc. Sauđó LoadRunner giám sát những thông số kỹ thuật giải quyết và xử lý của phần mềm được kiểm tra. Kết quả thống kêsẽ được lưu lại và được cho phép kiểm thử viên triển khai nghiên cứu và phân tích. Bảng 2.5 – Các thành phần của LoadRunnerThành phần Chức năngVirtual UserGeneratorTự động tạo ra VuGen script để lưu lại những thao tác người dùngtươ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. ControllerTổ chức, kiểm soát và điều chỉnh, quản trị và giám sát hoạt động giải trí kiểm tra tải. Thành phần này có tính năng tạo ra những trường hợp ( scenario ) kiểm tra. 13L oad GeneratorCho phép giả lập hàng ngày người dùng, hoạt động giải trí của từng ngườisẽ được triển khai theo VuGen script. Kết quả triển khai sẽ đượcthông báo cho Controller. Analysis Cung cấp việc xem, nghiên cứu và phân tích và so sánh những hiệu quả PT.Launcher Nơi tập trung chuyên sâu tổng thể những thành phần của LoadRunner cho người dùng. 2.3.3. 2. Các bước thực hiện1. Recording ( Ghi nhận ) : Cho phép tự động hóa phát sinh script ghi lại thao tác người dùng lên ứng dụng cần kiểmtra. Cách tổ chức triển khai script của LoadRunner được chia ra thành 3 thành phần chính. – vuser_init : mỗi người dùng ảo sẽ thực thi một lần trước khi chạy PT. – Run : gồm có một hoặc nhiều hàm ( action ), và được cho phép người dùng ảo chạy lặp lạinhiều lần. Dựa trên action tất cả chúng ta hoàn toàn có thể tổ chức triển khai những nhóm chứa những action khác nhau vàtheo thứ tự tùy ý. – vuser_end : mỗi người dùng ảo thực thi một lần ở đầu cuối khi chạy PT. 2. Replay ( Phát lại ) : Đây là bước được cho phép chạy thử để kiểm tra script đã chạy đúng nhu yếu của mộtngười dùng ảo hay chưa, qua đó có sự sửa đổi nếu cần. Bên cạnh đó LoadRunner còn chophép tổ chức triển khai thứ tự, số lần lặp lại những action hiện đang có bằng cách chọn Open Run-TimeSettings, và thiết lập thời hạn tương tác giữa người dùng ảo và web server3. Enhancements ( Nâng cao ) : – Tạo transaction : transaction là 1 số ít hành vi do tất cả chúng ta chọn từ quy trình tựđộng phát sinh script. Mục tiêu là giám sát thông số kỹ thuật hoạt động giải trí của một số ít hành vi trongtransaction đó. Thông số giám sát sẽ được biểu lộ sau khi tất cả chúng ta thực thi kiểm thử hiệunăng – Tham biến hóa : thay thế sửa chữa những giá trị cố định và thắt chặt trong script bằng những biến. – Kiểm tra nội dung : được cho phép thêm những điểm kiểm tra nội dung, trong LoadRunnergọi là content check, hoàn toàn có thể hiểu giống như một thuật ngữ khác đã được đề cập trong bàiviết trước là checkpoint. 4. Prepare For Load ( Chuẩn bị thực thi ) : – Thiết lập sự tái diễn của những action, ở quá trình Replay tất cả chúng ta cũng hoàn toàn có thể làm điềunày. 14 – Thiết kế trường hợp : thiết lập số người dùng ảo tối đa triển khai cùng một lúc, thờigian chạy bao lâu, số lượng người dùng ảo tăng như thế nào ( Ramp Up ) hoặc giảm như thếnào ( Ramp Down ). – Thực hiện trường hợp : thực thi những trường hợp kiểm tra, nghiên cứu và phân tích hiệu quả dựa trêncác thông số kỹ thuật của môi trường tự nhiên kiểm tra, ví dụ : số nhu yếu gửi tới web server giải quyết và xử lý trong 1 giây, số hồi đáp từ server trong 1 giây, số trang mà người dùng hoàn toàn có thể mở trong 1 giây, 5. Finish ( Kết thúc ) : – Upload script lên Performance Center server, đây là một phần trong việc thực hiệngiải pháp san sẻ tài nguyên PT qua Internet. 2.4. Kết luận chươngTrong chương này ta tập trung chuyên sâu vào tìm hiểu và khám phá khái quát về kiểm thử tự động hóa là gì ? Tạisao phải kiểm thử tự động hóa ? Quy trình kiểm thử tự động hóa ? Các kỹ thuật và chiêu thức kiểmthử tự động hóa cũng được trình diễn một cách cơ bản nhất. Về kiểm thử tự động hóa công dụng, luận văn cũng nhìn nhận khi nào cần kiểm thử tựđộng có hiệu suất cao nhất cả về ngân sách và thời hạn, đồng thời yêu cầu ra tiến trình kiểm thử tựđộng tự công dụng. Từ cơ sở triết lý trên, luận văn đã tìm hiểu và khám phá chi tiết cụ thể công cụ kiểm thửchức năng QuickTest Professional, gồm : Loại phần mềm tương hỗ, đặc thù về công cụ vàngôn ngữ sử dụng để viết script. Về kiểm thử hiệu năng, luận văn đã đưa ra mục tiêu của việc kiểm thử hiệu năng vàđề xuất những yếu tố về hiệu năng cần kiểm thử cho những ứng dụng phần mềm như : Số giaodịch đồng thời, thời hạn cung ứng cho mỗi thanh toán giao dịch dựa trên những thông số kỹ thuật về server CPU, RAM và hoàn toàn có thể để nhìn nhận được hiệu suất sử dụng CPU, hiệu suất sử dụng RAM.Từ cơ sở triết lý về kiểm thử hiệu năng, luận văn đã tìm hiểu và khám phá chi tiết cụ thể công cụ kiểmthử hiệu năng Load Runner, gồm : Đặc điểm, những thành phần và những bước thực thi củaLoadRunner. Chương 3 sẽ dựa vào những khái niệm, quá trình kiểm thử chung trong chương 1 và quytrình kiểm thử tự động hóa được diễn đạt trong chương 2 để vận dụng một ứng dụng đơn cử, đồngthời nghiên cứu và phân tích và nhìn nhận những tác dụng mô phỏng cho ứng dụng này. 15CH ƯƠNG 3 ỨNG DỤNG3. 1. Đặt yếu tố bài toán ứng dụng công cụ kiểm thửKiểm thử phần mềm là một trong những hoạt động giải trí quan trọng trong tiến trình pháttriển phần mềm. Nó góp một phần rất lớn trong việc nhìn nhận chất lượng một phần mềm vàlà quá trình bắt buộc trong những dự án Bất Động Sản phần mềm trên quốc tế cũng như trong nước. Tuynhiên, hoạt động giải trí kiểm thử thường gặp nhiều khó khăn vất vả. Thứ nhất, kiểm thử những hệ thốngphức tạp yên cầu rất nhiều nguồn tài nguyên và ngân sách cao. Thứ hai, quy trình tiến độ phát triểnphần mềm luôn trải qua nhiều hoạt động giải trí đổi khác thông tin, sự mất mát thông tin trong quátrình biến hóa là yếu tố chính làm cho hoạt động giải trí kiểm thử khó khăn vất vả. Thứ ba, kiểm thử chưađược chú trọng trong huấn luyện và đào tạo con người. Cuối cùng, không sống sót kỹ thuật kiểm thử chophép khẳng định chắc chắn một phần mềm trọn vẹn đúng đắn hay không còn lỗi. Chính cho nên vì thế, luận văn này tập trung chuyên sâu điều tra và nghiên cứu những công cụ kiểm thử tự động hóa để ápdụng vào quy trình tiến độ kiểm thử cho những ứng dụng. Chương 3 đi vào khám phá một ứng dụng cụthể và điều tra và nghiên cứu thiết kế xây dựng những bộ tài liệu kiểm thử cho 1 số ít công dụng cần kiểm thử tựđộng. 3.2. Đề xuất vận dụng những công cụ kiểm thử công dụng QuickTest Professional vàkiểm thử hiệu năng Load Runner tại Trung tâm phần mềm Viettel ( TTPMViettel ) 3.2.1. Hiện trạng kiểm thử phần mềmạiTTPM ViettelTrung tâm phần mềm Viettel đã và đang tăng trưởng những ứng dụng quản trị cho cácmảng như tương hỗ văn phòng, những dịch vụ viễn thông, những dịch vụ VAS, … vv … Ban đầu, tiến hành tại những đơn vị chức năng thuộc Tập đoàn viễn thông quân đội tại Nước Ta, sau đó triển khaicác ứng dụng này ở một số ít vương quốc khác. Ở những nước mà Viettel tiến hành mạng, những ứngdụng chỉ tập trung chuyên sâu vào tăng cấp 1 số ít tính năng cho tương thích với nhiệm vụ ở những nước sởtại. Việc đổi khác 1 số ít công dụng hoàn toàn có thể tác động ảnh hưởng đến những công dụng khác của cả hệthống hoặc chỉ biến hóa ở tầng kiến trúc, không biến hóa trên giao diện màn hình hiển thị, dẫn đếnphải kiểm thử lại hàng loạt ứng dụng. Tuy nhiên, việc kiểm thử những ứng dụng tăng cấp nàyvẫn hầu hết làm theo cách thủ công bằng tay ( manual ) – kiểm thử bằng mắt, điều này làm tăng chi16phí cho dự án Bất Động Sản, dễ bị trễ quy trình tiến độ hoặc dễ bị lọt lỗi phần mềm khi tiến hành cho người mua sửdụng. Ngoài ra, việc nhìn nhận hiệu năng cũng mới chỉ thực thi bằng cách ghi lại lịch sử vẻ vang ( log ) hoặc giám sát những mạng lưới hệ thống đang chạy ở thời gian thường và thời gian cao tải, sau đóphân tích và nhìn nhận hiệu năng. Các việc làm này thường được kiểm tra khi đã tiến hành ởmôi trường thật ( khi người mua đã sử dụng phần mềm ) nên tìm những lỗi hiệu năng thườngđược phát hiện muộn, làm mất uy tín của người mua. 3.2.2. Đề xuất quá trình kiểm thử tự động hóa tại TTPM ViettelTừ những khái niệm cơ bản, quy trình tiến độ kiểm thử chung được miêu tả trong chương 1 vàquy trình kiểm thử tự động hóa được miêu tả trong chương 2, luận văn đề xuất kiến nghị vận dụng quy trìnhkiểm thử kiểm thử tự động hóa sử dụng những công cụ QuickTest Professional và LoadRunner tạiTTPM Viettel như sau : 3.2.2. 1. Quy trình kiểm thử công dụng tự độngCác bước thực thi : Bước 1 : Sau khi khám phá nhiệm vụ từ những tài liệu nghiên cứu và phân tích, phong cách thiết kế, nhóm kiểm thửLập kế hoạch kiểm thử xác lập những công dụng cần kiểm tra tự động hóa. Bước 2 : Nhóm kiểm thử Thiết kế ngữ cảnh kiểm thử những tính năng, miêu tả cácluồng nhiệm vụ chính, phụ cần kiểm tra. Bước 3 : Nhóm kiểm thử Thiết kế những trường hợp kiểm thử. Các trường hợp kiểmthử đủ những thông tin : Mục đích, điều kiện kèm theo kiểm thử, những bước triển khai và tác dụng mongmuốn. 17C ác bước thực hiệnBước 1B ước 2B ước 3B ước 4B ước 5Q uy trình thực hiệnTài liệu nghiên cứu và phân tích, thiết kếLập kế hoạch kiểm thửThiết kế ngữ cảnh kiểmthửThiết kế những trườnghợp kiểm thử ( TestCase ) Thực hiện kiểm thử tựđộngPhân tích, nhìn nhận kếtquả và tạo báo cáokiểm thửKết thúcHình 3.1 – Quy trình kiểm thử công dụng tự độngBước 4 : Từ những trường hợp kiểm thử được phong cách thiết kế trong bước 3, nhóm kiểm thử pháttriển những Test Script bằng công cụ Quick Test Professional, thông số kỹ thuật những tài liệu đầu vàocho từng trường hợp và thực thi kiểm thử tự động hóa những Test Script đã tạo. Bước 5 : Kết quả triển khai những test script ở Bước 4, nhìn nhận và tạo báo cáo giải trình kiểm thử. 3.2.2. 2. Quy trình kiểm thử hiệu năng18Hình 3.2 – Quy trình kiểm thử hiệu năngCác bước thực thi : Bước 1 : Xác định những thông số kỹ thuật về thiên nhiên và môi trường, tiềm năng và những tính năng kiểm thửđể chuẩn bị sẵn sàng cho hoạt động giải trí kiểm thử hiệu năng : – Môi trường kiểm thử : phần cứng, phần mềm, cơ sở tài liệu, công cụ sử dụngđể đo hiệu năng – Các tiềm năng kiểm thử hiệu năng : Thời gian giải quyết và xử lý trung bình ( Response time ), Thông lượng mạng lưới hệ thống ( Throughput ), Số người dùng đồng thời. 19B ước 2 : Chuẩn bị thiên nhiên và môi trường kiểm thử hiệu năng, từ những thông số kỹ thuật hiệu năng đượckhảo sát, nghiên cứu và phân tích ở môi trường tự nhiên thật, ta xác lập tỷ suất tương ứng trên môi trường tự nhiên test. Bước 3 : Tạo ngữ cảnh kiểm thử hiệu năng gồm những thông tin : Chức năng, thông sốngười dùng, tiềm năng kiểm thử, tiêu chuẩn thành công xuất sắc. Bước 4 : Thực hiện kiểm thử hiệu năng : – Phát triển những Test Script trên công cụ Load Runner – Cấu hình, thiết lập những tham số cần đo hiệu năng và chạy những scriptBước 5 : Từ hiệu quả triển khai ở bước 4, ta nghiên cứu và phân tích và nhìn nhận để xác lập cácngưỡng cho những thông số kỹ thuật cần đo. 3.3. Ứng dụng tiến trình kiểm thử tự động hóa cho một Dự án cụ thểĐể tiến hành thử nghiệm kiểm thử tự động hóa những công dụng bằng công cụ QuickTestProfessional và kiểm thử hiệu năng bằng công cụ LoadRunner, ta triển khai trên phần mềmHệ thống thanh toán giao dịch cước phí được viết bằng ngôn từ Java, sử dụng hệ quản trị cơ sở dữliệu SQL Navigator. 20B illing thực hiệnchốt sổThông tin công nợcủa KH ( Payment ) KH triển khai gạchnợNV / CTV gạch nợPay 199S im Đa năng ( CTV đadịch vụ ) KênhTMĐTCore gạch nợ 1 ( Payment ) Core gạch nợ 2 ( Payment ) Gạch nợ trên web ( Payment ) Core gạch nợ 3 ( Payment ) ĐiềuchỉnhngoàithángĐiềuchỉnhtrongthángĐiều chỉnh ( Payment ) Hình 3.3 – Luồng thanh toán giao dịch cước phí dịch vụ trả sau3. 3.1. Thử nghiệm kiểm thửự động cácchức năngCác bước kiểm thử tự động hóa những công dụng mạng lưới hệ thống Thanh toán cước phí dịch vụviễn thông trả sau như sau : 3.3.1. 1. Lập kế hoạch kiểm thử3. 3.1.2. Thiết kế ngữ cảnh kiểm thửHệ thống Thanh toán cước phí của dịch vụ viễn thông trả sau tương hỗ những hoạt độngsau đây : – Tra cứu nợ công thuê bao – Thực hiện gạch nợ – Điều chỉnh nợ công thuê bao213. 3.1.3. Thiết kế những trường hợp kiểm thử3. 3.1.4. Thực hiện kiểm thử tự độngTạo những Test Script cho mỗi trường hợp kiểm thử được miêu tả ở mục 3.3.1. 3 trên côngcụ QuickTest Professional : Hình 3.9 – Tạo Test Script trong QuickTest Professional3. 2.1.5. Phân tích, nhìn nhận và tạo báo cáo giải trình kiểm thửSau khi chạy Test Script, ta hoàn toàn có thể xem tác dụng của quy trình test trải qua một cửasổ Test Result. Test Result gồm có những diễn đạt từng bước triển khai của quy trình. Đối vớicác test không chứa những bảng tham số thì Test Result chỉ biểu lộ một quy trình test duynhất. Ngược lại, với những test gồm có những bảng tham số, test sẽ được thông số kỹ thuật để lặp lạinhiều bước và Test Result sẽ hiển thị rõ từng bước lặp của quy trình Test. Các tác dụng làmột nhóm những hành vi trong quy trình test. Nội dung của cửa số Test Result sẽ được bộc lộ như sau :  Một báo cáo giải trình tổng quan về Test bào gồm những trạng thái pass, fail, done.  Dữ liệu được sử dụng trong quy trình chạy test.  Một cây lan rộng ra những bước trong quy trình test, chỉ rõ đúng chuẩn nới nào ứng dụng22hay thao tác Open lỗi cùng với những diễn đạt về lỗi đó.  Các hình ảnh minh họa bất kể sai xót nào trong mọi trạng thái test. + Từ việc hiệu quả chạy được ở trên ta tạo báo cáo giải trình tổng hợp tác dụng kiểm thử như sau : Bảng 3.4 – Báo cáo tác dụng kiểm thử những chức năngSTTChức năng Số trườnghợp kiểmthử ( Done ) Số trườnghợp kiểm thửthành công ( Pass ) Số trườnghợp kiểm thửthất bại ( Fail ) Tra cứu công nợthuê bao7 5 2T hanh hao toán cướccho thuê bao trảsau13 12 1 Điều chỉnh côngnợ thuê bao8 8 03.3.2. Thử nghiệm kiểm thử hiệu năngCác bước kiểm thử hiệu năng cho ứng dụng “ Thanh toán cươc phí dịch vụ viễn thôngtrả sau ” như sau : 3.3.2. 1. Xác định những tiềm năng kiểm thửĐể cung ứng nhu yếu nhiều người dùng thực thi công dụng gạch nợ cho những thuê baothành công trong khoảng chừng thời hạn đồng ý được, ta triển khai xác lập những tham số saucần đo hiệu năng : – Tổng số người dùng đồng thời tại thời gian cao tải – Thời gian phân phối cho mỗi yêu cầu233. 3.2.2. Chuẩn bị thiên nhiên và môi trường kiểm thử hiệu năng3. 3.2.3. Tạo ngữ cảnh kiểm thử hiệu năng3. 3.2.4. Thực hiện kiểm thử hiệu năng3. 3.2.5. Phân tích và nhìn nhận kết quả3. 4. Kết luận chươngTrên cơ sở kim chỉ nan về kiểm thử đã điều tra và nghiên cứu và trình diễn ở những chương trên, luậnvăn đã nghiên cứu và phân tích đơn cử nhu yếu của việc kiểm thử tự động hóa, sử dụng công cụ kiểm thử tựđộng đem lại quyền lợi cả về mặt thời hạn và ngân sách cho việc tăng trưởng phần mềm. Từ đó, luận văn đã đề xuất kiến nghị đưa ra quá trình kiểm thử công dụng tự động hóa, quy trình tiến độ kiểm thử hiệunăng và vận dụng thử nghiệm tại đơn vị chức năng đang công tác làm việc – Trung tâm phần mềm Viettel, đồngthời vận dụng cho một ứng dụng đơn cử, dự án Bất Động Sản Thanh toán cước phí dịch vụ viễn thông trảsau với những luồng nhiệm vụ chính : Tra cứu nợ công, thanh toán giao dịch cước, kiểm soát và điều chỉnh giao dịchthanh toán. Trong đó : Việc vận dụng kiểm thử công dụng tự động hóa bằng công cụ QuickTest Professional đãđược mô phỏng bằng những thuật toán sắp xếp chọn. Việc kiểm thử hiệu năng tập trung chuyên sâu vào 2 thông số kỹ thuật sau : – Số người dùng truy vấn đồng thời – Thời giao cung ứng cho mỗi giao dịchTrên cơ sở đó ta sử dụng công cụ LoadRunner triển khai kiểm thử lại ứng dụng vớicác thông số kỹ thuật thu được. Trong LoadRunner ta hoàn toàn có thể tích hợp nhiều ngữ cảnh tải, mô phỏngtrạng thái, hành vi người dùng tạo nên ngữ cảnh tải gần giống với thực tiễn giúp ta nhìn nhận hệthống một cách đúng đắn, đây chính là điểm điển hình nổi bật của Load Runner. Bên cạnh đó, LoadRunner còn có tính năng Analysis triển khai nghiên cứu và phân tích tác dụng kiểm thử hiệu năng giúp chota có cái nhìn tổng quát và chi tiết cụ thể về hiệu quả kiểm thử hiệu năng một cách nhanh gọn. Nếu hiệu quả cho thấy mạng lưới hệ thống đã quá tải thì cần phải có những kiểm soát và điều chỉnh như : lan rộng ra băngthông, tối ưu code, vận dụng chính sách load balancing ( phân tải ), 24K ẾT LUẬN VÀ KIẾN NGHỊ1. Kết luậnQua thời hạn thao tác, với sự nỗ lực của bản thân và được sự hướng dẫn tận tình củaPGS. TS Huỳnh Quyết Thắng, tôi đã hoàn thành xong Luận văn của mình. Những nội dung chính đã được xử lý trong luận văn : – Nêu rõ kiểm thử phần mềm là một hoạt động giải trí quan trọng nhằm mục đích bảo vệ chấtlượng phần mềm. Việc điều tra và nghiên cứu lựa chọn những kỹ thuật và kế hoạch kiểmthử phần mềm tương thích giúp cho việc kiểm thử có hiệu suất cao, giảm ngân sách vàthời gian. Việc kiến thiết xây dựng tài liệu kiểm thử phần mềm hài hòa và hợp lý sẽ giúp cho việctổ chức, quản trị và triển khai kiểm thử có hiệu suất cao. – Đề xuất quy trình tiến độ kiểm thử tính năng tự động hóa sử dụng công cụ QuickTestProfessional, quá trình kiểm thử hiệu năng sử dụng công cụ Load Runner. – Ứng dụng quy trình tiến độ yêu cầu trên với 1 số ít dự án Bất Động Sản đơn cử. – Kết quả điều tra và nghiên cứu được vận dụng trong thực tiễn cho những dự án Bất Động Sản tăng trưởng phần mềmtại đơn vị chức năng công tác làm việc cho những dự án Bất Động Sản tăng cấp, hoàn toàn có thể tái sử dụng để tiến hành tạicác nước khácHiện nay, yếu tố kiểm thử phần mềm phần nhiều vẫn chưa được góp vốn đầu tư và quan tâmđúng mức. Và Nước Ta đang trong quy trình kiến thiết xây dựng một ngành công nghiệp phần mềmthì không hề xem nhẹ việc kiểm thử phần mềm vì Tỷ Lệ thất bại sẽ rất cao, hơn thế nữa, hầuhết những công ty phần mềm có uy tín đều đặt ra nhu yếu khắt khe là nếu một phần mềmkhông có tài liệu kiểm thử đi kèm thì sẽ không được gật đầu. 2. Kiến nghịViệc ứng dụng công cụ phần mềm tự động hóa chắc như đinh sẽ giúp giảm sức lực lao động của cánbộ kiểm thử đồng thời làm tăng chất lượng phần mềm. Trong điều kiện kèm theo Nước Ta lúc bấy giờ, với tỷ trọng gia công phần mềm ngày càng lớn tại những công ty phần mềm, tôi cho rằng kiểmtra phần mềm tự động hóa với những công cụ như LoadRunner, QuickTest Professional rất đángđể những doanh nghiệp phần mềm chăm sóc điều tra và nghiên cứu, góp vốn đầu tư và ứng dụng .

Source: https://evbn.org
Category: Bài Tập