Áp dụng RFT IBM dé kiểm thử một số chức năng của phần mềm đã xây dung và đưa ra báo cáo, phân tích báo cáo chứng minh hiệu quả kiểm thử tự động, giảm chi phí và thời gian thực hiện.. Tro
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
a
MAI THỊ LÀ
DỤNG KIEM THU TỰ ĐỘNG DỰ ÁN QUAN LÝ VÀ DIEU HANH
Trang 2Luậ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: TS Đỗ Thị Bích Ngọc
Phản biện Ï: - C00020 022 020105 n eee nn ng k ng vn na
Phản biện 2: - 000002002200 2g 2 ng ng ng nh nen
nghệ Bưu chính Viễn thông
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
Trang 3MỞ ĐẦU
Lý do chọn đề tài:
Với sự phát triển như vũ bão của công nghệ thông tin nói chung và công
nghệ phần mềm riêng, việc phát triển phần mềm ngày càng được hỗ trợ bởi nhiềucông cụ tiên tiến, giúp cho việc xây dựng phần mềm bớt khó khăn và hiệu quả hơn.Tuy nhiên, vì độ phức tạp của phần mềm và những giới hạn về thời gian, chi phí và
để tạo ra sản phẩm phầm 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 tiêu tốn và chiếm nhiều
công sức (30% nỗ lực với dự án mới, 50% nỗ lực dự án nâng cấp và bảo trì) mà vẫn
không đảm bảo được rằng các sản phẩm phần mềm không có lỗi Hơn nữa, lỗi luôntiềm ân trong sản phẩm phần mềm Do vậy, nhu cầu tự động hóa kiểm thử phanmềm được đặt ra Việc thay đổi một số chức năng có thể ảnh hưởng đến các chứcnă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êngiao điệ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 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 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
Qua thực tế cho thấy, việc áp dụng kiểm thử tự động hợp lý sẽ mang lại hiệu
quả cao cho hoạt động kiểm thử phần mềm Nó 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ểmthử Vì vậy áp dụng công vụ kiểm thử tự động RFT là cần thiết trong các trường
hợp này.
Do là lý do học viên chọn dé tài “Nghiên cứu IBM Rational Funtional
tester và ứng dụng kiểm thử tự động dự án Quản lý và điều hành văn bản điệntử” làm luận văn tốt nghiệp
Mục dich của luân văn
Trang 4Đề 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ụ
tự động dé giảm nhân lực kiểm thử và dam bao chất lượng phần mềm hơn với công
việc kiểm thử thủ công.
Mục đích 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 Áp dụng RFT IBM dé kiểm thử một số chức năng của phần mềm
đã xây dung và đưa ra báo cáo, phân tích báo cáo chứng minh hiệu quả kiểm thử tự
động, giảm chi phí và thời gian thực hiện.
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ínhcủa luận văn được trình bày gồm 3 chương như sau:
- Chương 1: Cơ sở lý thuyết
- _ Chương 2: Ứng dung RFT vào dự án “Quản lý và điều hành văn bản điện tử”
- _ Chương 3: Cai đặt và thử nghiệm
Trong quá trình thực hiện Luận văn, do thời gian cũng như trình độ của học viên
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 Học viên
rat mong nhận được sự góp ý của quý Thay, Cô giáo và các bạn dé Luận văn hoàn
thiện hơn.
Trang 5quốc phòng, văn hoá, giáo dục, giải tri
1.1.2 Thế nào là lỗi phần mêm
Có rất nhiều định nghĩa khác nhau về lỗi phần mềm, nhưng tựu chung có thểphát biểu một cách tổng quát: “Lỗi phần mềm là sự không khớp giữa chương trình
và đặc tả của nó.”[Š]
1.1.3 Tại sao lỗi phần mêm xuất hiện và chỉ phí cho việc sửa lỗi
¢ Tại sao lỗi phan phần mềm xuất hiện
e_ Chỉ phí cho việc sửa lỗi
e Kiểm thử phần mềm là gi?
e Chat luong phan mém
1.2 Khái quát về kiểm thử phan mềm tự động
e Kiểm thử tự động là gì?
e Tại sao phải kiểm thir tự động
1.2.1 Quy trình kiểm thử tự động
1.2.2 Khi nào nên kiểm thử tự động
e Không đủ tài nguyên
e Kiểm thử hồi qui
Trang 61.3 Tổng quan về Rational Funtional Tester
Trọng lĩnh vực kiểm thử tự động, hiện có khá nhiều công cụ kiểm thử thương
mại nồi tiếng, phổ biến như HP QuickTest Professinal, WinRunner, Rational Robot,
SilkTest, JTest Trong số đó, IBM Rational Funtional Tester (RFT bao gom nhiéu
chức năng điển hình của một công cụ kiêm tra tự động
Phần mềm IBM Rational Funtional Tester (RFT) là phần mềm kiểm soát
việc kiểm thử tự động những chức năng của một sản phan mềm khác RFT là một
bộ phận của hệ thống Rational 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
e_ Các loại phần mềm hỗ trợ
e Đặc điểm
e Loi ích khi sử dụng công cụ RFT
e Những phan chính của RFT bao gồm những chức năng sau
e _ Những tiêu chuẩn thiết kế và quy tắc nghiệp vụ dé kiểm thir tự động
e Kiếm thử các ứng dụng web
e Các loại kiểm thử thường được sử dung web
1.4 Thử nghiệm RFT với thuật toán sắp xếp chọn
e Mô tả thuật toán:
Chọn phần tử nhỏ nhất trong n phần tử ban đầu, đưa phần tử này về vị trí
đúng là đầu tiên của dãy hiện hành Sau đó không quan tâm đến nó nữa, xem dãy
hiện hành chỉ còn n-1 phan tử của dãy ban đầu, bắt dau từ vị trí thứ 2 Lap lại quátrình trên cho dãy hiện hành đến khi dãy hiện hành chỉ còn 1 phần tử Dãy ban đầucón phần tử, vậy tóm tắt ý tưởng thuật toán là thực hiện n-1 lượt việc đưa phần tửnhỏ nhất trong dãy hiện hành về vị trí đúng ở đầu dãy
e_ Thiết kế các trường hợp kiểm thir cho mỗi chu trình cơ sở
- Truong hợp kiểm thử cho chu trình 1: Mang chỉ chứa 1 phần tử
v Dữ liệu thử: {5}
w_ Kết quả mong muốn: {5}
Trang 7- _ Trường hợp kiểm thử cho chu trình 2: Không có dtr liệu thử phù hợp
- _ Trường hợp kiêm thử cho chu trình 3: Mang có giá trị tang dan
Y Dữ Du liệu thử: {1, 3, 5, 7, 8}
* Kết qua mong muốn: {1, 3, 5, 7, 8}
- Truong hợp kiểm thử cho chu trình 4: Mang không thứ tự
v Dữ liệu thử: {1, 3, 5, 7, 6, 4, 2}
*_ Kết quả mong muốn: {1, 2, 3, 4, 5, 6, 7}
e Thực hiện kiểm thử cho thuật toán sắp xếp chọn
e Phân tích, đánh giá và tao báo cáo kiểm thir
1.5 Kết luận chương
Trong chương này 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
Từ cơ sở lý thuyết về kiểm thử tự động, luận văn đã tìm hiểu chỉ tiết công cụkiểm thử tự động RFT gồm: Đặc điểm, các thành phan, lợi ích khi sử dung RFT
Chương 2 sẽ dựa vào các khái niệm, quy trình kiểm thử trong chương | vàquy trình kiểm thử tự động được mô tả chương 2 áp dụng một ứng dung cụ thé,
đồng thời phân tích và đánh giá các kết quả mô phỏng cho hệ thống Quản lý và điều
hành văn bản điện tử.
Trang 8CHƯƠNG 2
UNG DUNG RFT VÀO DỰ ÁN “QUAN LÝ VÀ DIEU HANH
VAN BAN DIEN TU”
Chương 2 đi vào tìm hiểu ứng dung RFT và nghiên cứu xây dựng bộ dit liệukiểm thử một số chức năng cần kiểm thử tự động trong ứng dụng “Quản lý và điềuhành văn bản điện tử” và đồng thời thiết kế quy trình kiểm thử tự động
2.1 Bài toán Quản lý và điều hành văn bản điện tử
Hiện nay việc quản lý văn bản hàng ngày của cán bộ công nhân viên tại Bộ
Y Tế đang gặp nhiều khó khăn phải thực hiện thủ công và không có công cụ quản
lý, theo dõi thời gian làm việc của từng Cán bộ công nhân viên theo kế hoạch cũngnhư thời gian làm việc thực tế của từng CBCNV Căn cứ trên thực tế thực hiện côngviệc, bài toán đặt ra hướng tới tin học hoá các nghiệp vụ đang thực hiện thủ công dégiải quyết những khó khăn trong công các quản lý văn bản là tin hoc hoá quy trình
xử lý văn bản đến và đi
2.2 Đề xuất áp dụng các công cụ kiểm thử RFT tại Trung tâm Giải
pháp CNTT và Viễn thông Viettel (VTICT)
2.2.1, Hiện trang kiém thir tại VTICT
Trung tâm Giải pháp CNTT và Viễn thông Viettel đã và dang phát triển các
ứng dụng quản lý cho các mảng như hỗ trợ văn phòng, chính phủ, các dịch vụ viễn
thông, các dịch vụ gia tăng VAS Các ứng dụng sẽ triển khai tại các đơn vị trựcthuộ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ụngnày ở một số Bộ, Ban ngành chính phủ và 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 hệ thống hoặc chỉ thay đổi ở tần kiến trúc,
Trang 9khô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
2.2.2 Dé xuất quy trình kiểm thử tự động tại VTICT
e_ Quy trình kiểm thử chức năng tự động như sau:
Các bước thực hiện Quy trình thực hiện
Tài liệu phân tích, thiết kế
Trang 10Thực tế cho thấy việc áp dụng kiểm thử tự động hợp lý sẽ mang lại thànhcông cho hoạt động kiểm thử phân mềm Kiểm thử tự động giảm bớt công sức thực
hiện, tăng độ tin cậy cho khách hàng.
2.3 Ứng dụng quy trình kiểm thử tự động cho dự án “Quản lý và điều
hành văn bản điện tử”
Dé triển khai kiểm thử tự động các chức năng băng công cu RationalFuntional Tester trên phan mém Quan ly va diéu hanh van ban dién tir duoc viétbang ngôn ngữ Java, sử dụng hệ quan tri cơ sở dữ liệu Orancle SQL Developer
Hệ thống Quản lý và điều hành văn bản điện tử được xây dựng dé đáp ứngnhu cầu quản lý thông tin văn bản đến, văn bản đi và phiếu trình của Bộ Y Tế.Luông nghiệp vụ tông thé:
2.3.1 Quy trình nghiệp vụ văn bản đến
Trang 11Quy trình xử lý văn bản đến tại Bộ
Cho ý kiế ân cô
Thu ký Lãnh dao Bộ than mưa phân y Bước 3
Hoàn thành VB
Trang 122.3.2 Quy trình nghiệp vụ văn bản đi
Quy trình văn bản đi thực hiện trên hệ thống từ bước soạn thảo việc ký
duyệt, cap sô va ban hành của Bộ
Quy trình văn bản đi rút gọn
Người thực hiện Trình tự thực hiện Bước thực hiện
Dự thảo VB
Đã ký
Chuyên cấp Số và
Ban hành Chuyên viên Bước 1
Lãnh đạo: pm
- Người ky ¡ Nhận VB đã ban ; Văn hi cấy bo
- Người ký trình ị hành Ì — VBThialinh
- Người phê duyệt Leeeeeeeeeqpeccccccee!
‘Van ban don vĩ
Van thư Bộ Ce Bi, Bem HỆHI VBnộibộ Bude 2.1, VB
Văn thư don vị Câp sô, Ban hành Bước 2.2
VB
Văn thư Phòng Câp sô, Ban hành Bước 23
VB
Trang 132.4, Lập kế hoạch kiểm thir
2.4.1 Quy trình thực hiện
Trang 14- _ Kịch bản kiểm thử bao gồm day đủ các trường hợp kiểm thử cho các yêu cầu
về chức năng, đồng thời đảm bảo các kịch bản kiểm thử tích hợp giữa cácchức năng theo chiến lược tích hợp của dự án
- Kịch bản kiểm thử tập trung vào các luồng nghiệp vụ và trường hợp kiểm thử
validate, giao diện dựa vào tài liệu phân tích yêu cầu, đặc tả yêu cầu và
prototype
- Cac trường hợp kiểm thử phải có đủ thông tin: Mục dich, điều kiện kiểm thử,
các bước thực hiện, kết quả mong đợi
- _ Các trường hợp kiểm thử phải bao phủ được toàn bộ luồng xử lý chức năng
mô tả trong tài liệu phân tích và thiết kế, đảm bảo kiểm tra đầy đủ các tiêuchí chất lương phần mềm
Trong đó:
e Chức năng Vào số văn bản đến
- _ Mở trang web, đăng nhập vào hệ thống bang tài khoản cá nhân và có vai trò
là Văn thư Bộ
- Vao menu Văn bản đến > Văn bản đến chờ xử lý
Trang 15@ Trang chủ > Văn thư Bộ-test Văn thư Bộ=> Đối mật khẩu~Ý Đăng xuấ
BO Y TE
HE THONG QUAN LY Va DIEU HANH VAN BAN ĐIỆN TC,
?) Câu hỏi thường gặp Wj Hướng dẫn sử dung
song k Ngày đến từ ngây : 13/10/2015 _ ] Đến ngày : 13/11/2015
Văn Số văn bản '——Tấtcã— = Độ ưu tiên:
'Văn bản bình thường (43) = —_
(S Văn bản đến đang xử lý (2242) Wiest Excel)
_— Văn lên | ———
Vin ban hỗa tốc (178) | Danh sách van bản den
Sédong 43 Trang 1/1 | ¥) DòngTrang 59 Ela
đến NG€VñÊD | sgýhjệu | Cơquanbanhành Trích yêu
®: văn ban đền nội bộ (20) = [css — ee cưng
Rồ Bincioimnhinh x Văn bản 2.86) 2 | @ 193 ieee 4465/BHXH Bảo Hiểm Xã Hội Việt Nam _ Góp ÿ dự thảo quy trình giám định BHYT Mới đến
3a.Ø.#/# | #@ | 14592 1420 1350/0Đ-BHXH_ Bảo Hiểm Xã hội VietNam Quyếtđịnh thành lập BCB và tổ giúp việc BCB tổ Mới đến
13/11/2015 chức tiên khai lập DS hộ gia đình tham gia BHYT.
B Tra cứu văn bản đến - 4/8 + 2 14591 14:07 3131/UBND-VX _ UBND Bắc Ninh Thay đổi danh mục mua sắm TTB theo hợp đồng Mới đến
C———— 13/11/2015 dy an ODA mua sắm ,TTB Bệnh viện Đa khoa tỉnh
5 |B + © 14590 14:01 2541/QĐ-UBND UBND An Giang Quyết định ban hành kế hoạch thực hiện Đề án Mới đến
13/14/2015 Đảm bảo tai chính cho các hoạt động phòng, chống
HIV/AIDS tại tnhr An Giang, gỡ 2016-2020.
s|8| /# ˆ 14589 1358 3789/UBND UBND Ha Giang Đồng ý tiếp nhận va thực hiện Dự án cho Bệnh Mới đến |
13/11/2015 viện y học cô truyền tỉnh.
LỆ bà
- _ Thực hiện vào số văn bản, nhắn nút “Thêm mới
- _ Nhập thông tin văn bản gồm: Số văn bản, ngày đến, Loại văn bản, nơi gửi,
Số ký hiệu, Trích yếu, Độ khẩn, phương thức nhận, Han trả 101
- Trinh xử lý gồm: Xử lý chính, phối hợp xử lý, nhận dé biết
- _ Thực hiện “Thêm mới” vào sô văn bản dén
Trang 16Í# Ghi lại (F8) | Z Ghi lại & Thêm mới (F8) | @* Làm lại Quay lạ
+ Thông tin văn bản đến
Thông tin cơ bản
e Tra cứu văn bản đên
- M6 trang web, đăng nhập vào hệ thống bằng tài khoản cá nhân
- Vào menu Văn ban dén > Tra cứu văn bản đên
- _ Nhấn nút “Tìm kiếm” Hệ thống hién thị chỉ tiết thông tin văn bản đến:
Thông tin văn bản, luéng xử lý, file đính kèm
Trang 17+ Thông tin tìm kiêm
Cơ quan ban hành
2377/BC-SYT SYT Long An
KHTH
3042/SYT-539/DHHS
3958/KH-UBND
34/UBND
SYT Ba Rịa Vũng Tau
Trường Đại hoc Hoa Sen UBND Điện Biên
UBND Bình Định
Số văn ban: _— Tt ca ——
Người tạo Loại văn bản: |_ Tật cả —
Báo cáo công tác cấp CCHN đỗi với người
hanh nghề va cấp GPHĐ đổi với cơ sở KB,
CB
Góp ý kién cho dự thảo đề án tăng cương y
†ế cơ sở trong tình hình mới va báo cáo thực trạng nhu cầu đầu tư y tế xã giai đoạn 2016-
2020
Phúc đáp công văn số 2336/BGD ĐT-GD ĐH
của Bộ GD&ĐT
Ké hoạch tô chức tháng hanh động quốc gia
phòng, chong HIV/AIDS trên dia ban tỉnh
expand dữ liệu, menu 3 cấp, double click mà RFT không thé tự động xử lý Do
vậy, ta cân có các xử lý riêng sửa các Script cho các trường hợp này.
Phần tiếp theo sẽ trình bày nguyên nhân và giải pháp xử lý các trường hợp
RFT không tự động được như sau:
e Giao diện có nút expand
e Giao diện có chức năng khi nhắn double click mở màn hình pop up
e Giao diện có danh sách có một số trường thay đỗi
Một kịch bản kiểm thử chức năng bao gồm 2 phần chính: Giao diện, chứcnăng và an toàn thông tin Khi thực hiện viết kịch bản kiểm thử dé tránh thiếu sótcác trường hợp, kiểm thử viên phải thực hiện như sau:
Trang 18e Thiết kế các trường hợp kiểm thir giao diện
e_ Thiết kế các trường hợp kiểm thir chức năng
e_ Thiết kế các trường hợp kiểm thir an toàn thông tin
Từ hướng dẫn viết các trường hợp kiểm thử cho Giao diện, chức năng, an toànthông tin và dựa vào quy trình nghiệp vụ xử lý văn bản đến, quy trình xử lý văn bản
đi tại mục 2.3.1 và 2.3.2 ta có bảng tông hợp testcase sau:
ST | Chức nang Tong số Tổng số Tổng số
testcase testcase testcase An giao dién chức nang toàn thông tin
1| Vào số văn bản đến 133 50 20
2 Dự thảo văn bản đi 120 30 15
3 Tra cứu thông tin văn
79 72 10
bản đên
4 _ | Cấp số và ban hành
; 30 10 8 van ban di
5 Tra cứu thông tin van
; 80 81 12 ban di
2.7 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 ở 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ểnphần mềm Từ đó, ta áp dụng kiểm thử chức năng “Quản lý và điều hành văn bảnđiệm tử” với các luồng nghiệp vụ chính: Vào số văn bản đến, Tra cứu thông tin văn
bản dén, Dự thảo văn bản di, cap sô văn bản di, tra cứu thông tin văn bản di.
Trang 19CHƯƠNG 3
CÀI ĐẶT VA THU NGHIỆM
Chương 3 sẽ đựa vào quy trình kiểm thử tự động, kịch bản kiểm thử trong
chương 2 và áp dụng vào ứng dụng “Quản lý và điều hành văn bản điện tử” đồngthời phân tích và đánh giá các kết quả mô phỏng cho ứng dụng này
3.1 Thue hiện kiểm thử
e Chức năng vào sô văn bản đên:
Kêt quả khi sử dụng công cụ kiêm thử sau khi record thành công chức năng Vào
sô văn bản đên.
# import reiources Veosovedertielper ;
chrome npecywindcsarinde}- click(atPotnt:
sự kiện click va thing
cma ivdoo } doubleclick 4):
* NOFfFIcceooglechr{} inputYeys{ “Veet wieejc han] han{BKSP}(RKSP} {EKSP) (BS) (EK5P"}(SXSP)an
verbinginTVOff{ceSoogLeChr(Ì dnputKeys(" vawn bane q[BKSP|vaŸ quy chees Laef viee]£ trung tane
Hình 3.7: Vào sô văn bản đên
Đôi với chức năng vào sô văn bản đên chương trình đã thực hiện đúng với yêu câu dé ra thêm mới | văn bản thành công và thê hiện kêt quả sau: