TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN MÔN KIỂM THỬ VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM ĐỀ TÀI: KIỂM THỬ PHẦN MỀM QUẢN LÝ SINH VIÊN Sinh viên thực hiện
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN
MÔN KIỂM THỬ VÀ ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
ĐỀ TÀI: KIỂM THỬ PHẦN MỀM QUẢN LÝ SINH VIÊN
Sinh viên thực hiện: LÊ HUY NAM
Giảng viên hướng dẫn: LÊ THỊ TRANG LINH
Ngành: CÔNG NGHỆ THÔNG TIN Chuyên ngành: CÔNG NGHỆ PHẦN MỀM
Khóa: 2018 – 2023
Hà Nội, tháng 1 năm 2022
Trang 3LỜI NÓI ĐẦU 5
CHƯƠNG 1: TỔNG QUAN VỀ CÔNG CỤ KIỂM THỬ TỰ ĐỘNG TESTCOMPLETE 6
1.1.Giới thiệu về công cụ 6
1.1.1.Đặc điểm 6
1.1.2.Thành phần 6
1.1.3.Ngôn ngữ viết 6
1.2.Cách tổ chức chương trình chạy với công cụ 6
1.3.Áp dụng kiểm thử tự động với chức năng đăng nhập 9
CHƯƠNG 2: ĐẶC TẢ PHẦN MỀM 12
2.1.Giới thiệu về phần mềm 12
2.2.Đặc tả yêu cầu của phần mềm 12
2.2.1.Đặc tả chức năng đăng nhập 12
2.2.2.Đặc tả chức năng đăng kí 16
2.2.3.Đặc tả cho chức năng quản lý sinh viên 18
2.2.4.Đặc tả chức năng chi tiết sinh viên 22
CHƯƠNG 3: KẾ HOẠCH TEST 25
3.1.Mục đích lập kế hoạch test 25
3.2.Test scope 25
3.3.Feature / Non Feature to be test 25
3.3.1.Chức năng test 25
3.3.2.Chức năng không test 26
3.4.Test tool 27
3.5.Test Enviroment 27
3.6.Test Resources Man-power 27
3.7.Features 28
3.8.Test milestones 29
3.9.Test products 29
CHƯƠNG 4: XÂY DỰNG VÀ THỰC HIỆN CÁC TEST CASE 30
Trang 44.1.Test case màn hình đăng kí 30
4.1.1 Test function 31
4.1.2 Test case GUI đăng kí 39
4.2.Test màn hình quản lý sinh viên 40
4.2.1.Test function 40
4.2.2.Test case GUI quản lý sinh viên 62
KẾT LUẬN 63
TÀI LIỆU THAM KHẢO 64
LỜI NÓI ĐẦU
Trang 5Trong những năm gần đây, công nghệ thông tin phát triển nhanh chóng,mạnh mẽ và được ứng dụng ở hầu hết các mặt của đời sống, kinh tế, xã hội Côngnghệ thông tin phát triển đồng nghĩa với nó là ngành công nghệ phần mềm cũngphát triển Việc xây dựng các ứng dụng web hay các phần mềm ngày càng phổbiến và nó ngày càng trở nên thân thiết với con người qua các hoạt động giới thiệu,quảng cáo, mua bán, quản lý trên mạng Cuộc sống càng lên cao nhu cầu về chấtlượng của một sản phẩn cũng tăng lên
Một sản phẩm không chỉ dừng lại ở việc thân thiện, dễ sử dụng mà nó cònphải luôn chính xác, kịp thời và đảm bảo tính bảo mật tốt Lỗi của một phần mềmnói chung hay một ứng dụng web nói riêng có thể gây ra những hậu quả nghiêmtrọng Do đó, hoạt động đảm bảo chất lượng phần mềm là rất quan trọng Trongkhi đó 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 giantrong một dự án Chính vì lý do đó, việc đưa vào quy trình kiểm thử là vô cùng cầnthiết Vì vậy nên em chọn đề tài “Kiểm thử phần mềm quản lý sinh viên” cho mônhọc này
Em đã hoàn thành đề tài này với sự giúp đỡ và hướng dẫn nhiệt tình của cô
Lê Thị Trang Linh Nhưng do thời gian còn hạn chế và sự tìm hiểu chưa được sâunên còn nhiều thiếu sót Em rất mong được sự đóng góp nhiệt tình của các thầy cô
và bạn bè để đề tài của em có thể hoàn thiện hơn
Trang 6CHƯƠNG 1: TỔNG QUAN VỀ CÔNG CỤ KIỂM THỬ TỰ ĐỘNG
TESTCOMPLETE 1.1.Giới thiệu về công cụ
1.1.1.Đặc điểm
TestComplete là môi trường kiểm thử tự động cho một loạt các ứng dụng vàcông nghệ, bao gồm NET, Visual Basic, Java và các ứng dụng web
TestComplete được định hướng như nhau đối với chức năng kiểm thử, đơn
vị Nó cung cấp hỗ trợ cho các thử nghiệm hồi quy hàng ngày và hỗ trợ nhiều loạithử nghiệm khác nhau
TestComplete còn là công cụ Capture and Replay với yêu cầu kiểm thử trênchương trình đã hoạt động Công cụ này được sử dụng ở giai đoạn Program beingtested trong mô hình kiến trúc chung của tự động hóa kiểm thử
1.2.Cách tổ chức chương trình chạy với công cụ
Ở màn hình chính của công cụ, chọn Record test -> Đặt tên project -> Chọnnơi lưu -> Chọn kiểu test và chọn Next
Trang 7Tiếp theo chọn môi trường test, ở đây chọn môi trường là web, điền URLtrang web cần test rồi bấm Record
Sau khi bấm record, công cụ tự điều hướng đến trang web đã điền ở mụcURL để tiến hành test
Trang 8Một bảng ghi được hiển thị như ảnh dưới đây, điều này chứng tỏ quá trìnhtest đã bắt đầu
Sau khi test xong, chọn stop để kết thúc quá trình test và TestComplete sẽhiển thị quá trình chỉnh sửa từ khóa trong đó tất cả các từ khóa được ghi lại sẽ đcđược hiển thị
Như trong hình có thể thấy quá trình test điền thông tin vào 2 ô input đãđược ghi lại, ô tài khoản đã được nhập “lehuynam123” và mật khẩu đã được công
cụ mã hóa Để xem lại quá trình vừa test chỉ cần chọn nút Run như hình bên dưới
Trang 91.3.Áp dụng kiểm thử tự động với chức năng đăng nhập.
Ở màn hình chính của công cụ, chọn Record test -> Đặt tên project -> Chọnnơi lưu -> Chọn kiểu test và chọn Next
Trang 10Tiếp theo chọn môi trường test, sau đó bấm Record
Sau đó công cụ sẽ điều hướng đến phần mềm cần test và chúng ta sẽ tạo 4test case cho 4 trường hợp sau: Không nhập gì cả, chỉ nhập username, chỉ nhậppassword, nhập đúng cả username và password
Sau khi tạo xong test case đầu tiên, muốn tạo thêm test case chỉ cần chọnbiểu tượng “+” như hình bên dưới và chọn record để thực hiện tiếp
Trang 11Để test tất cả trường hợp trên chúng ta chọn Execution Plan -> Kéo tất cảcác test case vào trong rồi bấm Run Project như hình dưới
Sau khi test xong công cụ sẽ cho ra kết quả Pass, Failed hoặc warning
Trang 12CHƯƠNG 2: ĐẶC TẢ PHẦN MỀM 2.1.Giới thiệu về phần mềm
Hiện nay, với sự phát triển không ngừng của chuyên ngành công nghệ thôngtin, mỗi ngôi trường đều phải có một chiến lược đúng đắn để có thế phát triển.Mộtgiải pháp được đặt ra là ứng dụng tiến bộ của công nghệ thông tin vào công việcquản lý Những công việc hàng ngày không còn là thao tác thủ công với một đốnghỗn độn tài liệu nữa mà được thay bằng những chương trình hỗ trợ cho mọi côngviệc Nó sẽ giảm thiểu được những khó khăn trong công việc quản lý như: nhânlực, thời gian, độ chính xác của thông tin… giúp cho các trường học có thể đưa ranhững quyết định chính xác, đúng thời điểm
Với xu thế thông tin toàn cầu, phần mềm quản lý sinh viên đang là mô hìnhphát triển chung cho các hệ thống trường học hiện nay Dự án xây dựng phần mềmquản lý được xây dựng và phát triển nhằm mục đích giới quản lý sinh viên mộtcách chính xác và nhanh nhất
2.2.Đặc tả yêu cầu của phần mềm
2.2.1.Đặc tả chức năng đăng nhập
2.2.1.1.Usecase chức năng đăng nhập
Hình 2.1: Usecase chức năng đăng nhập
Trang 13Mô tả:
Tác nhân: Admin
Mô tả: Tác nhân sử dụng use case để thực hiện chức năng đăng nhập
Sự kiện chính:
1 Tác nhân yêu cầu giao diện đăng nhập tới hệ thống
2 Hệ thống sẽ hiện thị giao diện đăng nhập cho tác nhân
3 Tác nhân sẽ nhập thông tin đăng nhập:
• Nhập thông tin username
• Nhập thông tin password
4 Hệ thống sẽ kiểm tra dữ liệu và xác nhận thông tin được nhập vào
5 Khi thành công, hệ thống sẽ hiển thị giao diện chính của phần mềm
6 Kết thúc use case
Sự kiện phụ:
+ Dòng sự kiện phụ thứ 1:
1 Người dùng yêu cầu huỷ đăng nhập
2 Hệ thống sẽ đóng lại hoặc rời khỏi đăng nhập
3 Kết thúc use case
+ Sự kiện phụ thứ 2:
1 Người dùng nhập sai thông tin
2 Hệ thống sẽ hiển thị dòng chữ báo lỗi
3 Kết thúc use case
Trang 14 Trạng thái hệ thống trước khi use case sử dụng: không đòi hỏi yêu cầu gìtrước đó.
Trạng thái hệ thống sau khi use case được sử dụng:
+ Nếu thành công: Hệ thống sẽ hiển thị giao diện chính Người dùng có thể thựchiện các chức năng, quyền hạn của mình
+ Nếu thất bại: Hệ thống sẽ đưa ra thông báo “Tài Khoản hoặc mật khẩu khôngchính xác”
Trang 152.2.1.2.Biểu đồ hoạt động chức năng đăng nhập
Hình 2.2: Biểu đồ hoạt động chức năng đăng nhập
Trang 162.2.2.Đặc tả chức năng đăng kí.
2.2.2.1.Biểu đồ usecase cho chức năng đăng kí
Hình 2.3: Usecase cho chức năng đăng kí
Mô tả:
Tác nhân: Admin
Mô tả: Tác nhân sử dụng use case để thực hiện chức năng đăng kí
Sự kiện chính:
1 Tác nhân yêu cầu giao diện đăng kí tới hệ thống
2 Hệ thống sẽ hiện thị giao diện đăng kí cho tác nhân
3 Tác nhân sẽ nhập thông tin đăng kí
4 Hệ thống sẽ kiểm tra dữ liệu và xác nhận thông tin được nhập vào
5 Khi thành công, hệ thống sẽ hiển thị thông báo đã đăng kí thành công
6 Kết thúc use case
Sự kiện phụ:
+ Dòng sự kiện phụ thứ 1:
4 Người dùng yêu cầu huỷ đăng kí
5 Hệ thống sẽ đóng lại hoặc rời khỏi đăng kí
Trang 176 Kết thúc use case.
+ Sự kiện phụ thứ 2:
4 Người dùng nhập thiếu 1 hoặc nhiều trường thông tin
5 Hệ thống sẽ hiển thị thông báo yêu cầu nhập đầy đủ thông tin
6 Kết thúc use case
Trạng thái hệ thống trước khi use case sử dụng: không đòi hỏi yêu cầu gìtrước đó
Trạng thái hệ thống sau khi use case được sử dụng:
+ Nếu thành công: Hệ thống sẽ hiển thị thông báo thành công
+ Nếu thất bại: Hệ thống sẽ đưa ra thông báo “Vui lòng nhập đầy đủ thông tin”hoặc “Xác nhận mật khẩu chưa chính xác” nếu phần password và confirmpassword không giống nhau
Trang 182.2.2.2.Biểu đồ hoạt động cho chức năng đăng kí
Hình 2.4:Biểu đồ hoạt động cho chức năng đăng kí
2.2.3.Đặc tả cho chức năng quản lý sinh viên
2.2.3.1.Biểu đồ usecase cho chức năng quản lý sinh viên
Trang 19Hình 2.5:Usecase cho chức năng quản lý sinh viên
Mô tả:
Tác nhân: Admin
Mô tả: Tác nhân thực hiện chức năng thêm- sửa- xoá thông tin sinh viên
Sự kiện chính:
1 Tác nhân sẽ cập nhật thông tin sinh viên
2 Hệ thống sẽ kiểm tra dữ liệu và xác nhận thông tin được nhập vào.Nếu thoả mãn thì cho phép thực hiện cập nhật thông tin sinh viên
3 Kết thúc use case
Sự kiện phụ:
- Sự kiện phụ thứ nhất:
+ Tác nhân huỷ bỏ việc cập nhật thông tin sinh viên
+ Hệ thống không thực hiện việc cập nhật thông tin sinh viên
- Sự kiện phụ thứ 2:
+ Tác nhân đưa vào thông tin sinh viên không hợp lệ
+ Hệ thống sẽ hiển thị lời thông báo tới tác nhân
+ Kết thúc use case
Trạng thái hệ thống trước khi use case sử dụng: Không đòi hỏi yêu cầu gìtrước đó
Trang 20 Trạng thái hệ thống sau khi use case được sử dụng:
+ Nếu thành công: Hệ thống sẽ hiển thị thông tin mà tác nhân đã cập nhập.+ Nếu thất bại: Hệ thống sẽ đưa ra thông báo lỗi và phải nhập lại thông tin
2.2.3.2.Biểu đồ hoạt động cho chức năng quản lý sinh viên.
2.2.3.2.1.Biểu đồ hoạt động chức năng thêm sinh viên
Hình 2.6: Biểu đồ hoạt động cho chức năng quản lý sinh viên
2.2.3.2.2.Biểu đồ hoạt động chức năng sửa sinh viên
Trang 21Hình 2.7.Biểu đồ hoạt động chức năng sửa sinh viên
2.2.3.2.3.Biểu đồ hoạt động chức năng xóa sinh viên
Trang 22Hình 2.8.Biểu đồ hoạt động chức năng xóa sinh viên
2.2.4.Đặc tả chức năng chi tiết sinh viên
2.2.4.1.Usecase cho chức năng chi tiết sinh viên
Hình 2.9: Usecase chức năng chi tiết sinh viên
Mô tả:
Trang 23 Tác nhân: Admin
Mô tả: Tác nhân thực hiện chức năng xem-sửa thông tin chi tiết sinh viên
Sự kiện chính:
1 Tác nhân yêu cầu xem-sửa thông tin sinh viên lên hệ thống
2 Hệ thống sẽ hiện thị giao diện chi tiết thông tin sinh viên
3 Tác nhân sẽ chọn mã sinh viên cần xem đồng thời có thể cập nhậtthông tin chi tiết sinh viên
4 Hệ thống sẽ kiểm tra dữ liệu và xác nhận thông tin được nhập vào.Nếu thoả mãn thì cho phép thực hiện cập nhật thông tin sinh viên
5 Kết thúc use case
Sự kiện phụ:
- Sự kiện phụ thứ nhất:
+ Tác nhân huỷ bỏ việc cập nhật sinh viên
+ Hệ thống đóng lại và không thực hiện việc cập nhật
- Sự kiện phụ thứ 2:
+ Tác nhân đưa vào thông tin sinh viên không hợp lệ
+ Hệ thống sẽ hiển thị lời thông báo tới tác nhân
+ Kết thúc use case
Trạng thái hệ thống trước khi use case sử dụng: Không đòi hỏi yêu cầu gìtrước đó
Trạng thái hệ thống sau khi use case được sử dụng:
+ Nếu thành công: Hệ thống sẽ hiển thị lại giao diện chính Tác nhân có thể sửa lạithông tin nếu muốn
+ Nếu thất bại: Hệ thống sẽ đưa ra thông báo lỗi và phải nhập lại thông tin
Trang 242.2.4.2.Biểu đồ hoạt động cho chức năng chi tiết sinh viên
Hình 2.9: Biểu đồ hoạt động chi tiết sinh viên
Trang 25CHƯƠNG 3: KẾ HOẠCH TEST 3.1.Mục đích lập kế hoạch test
- Xác định những thông tin dự án và các thành phần dự án cần được kiểm thử
- Liệt kê những yêu cầu kiểm thử (Test Requirements)
- Nêu ra những phương pháp, chiến lược kiểm thử nên sử dụng
Security & Access Control Testing
1 Đăng nhập 1 man days 0.5 man days 0.5 man days
2 Đăng kí 6 man days 1 man days 2 man days
3 Quản lý sinh viên 6 man days 1 man days 2 man days
4 Quản lý chi tiết sinh
+ Nhập tài khoản nhưng không nhập mật khẩu
+ Nhập mật khẩu nhưng không nhập tài khoản
Trang 26+ Nhập đúng tài khoản nhưng nhập sai mật khẩu.
+ Nhập sai tài khoản nhưng nhập đúng mật khẩu
+ Không nhập gì cả
- Đăng kí
+Nhập thiếu trường username.
+Nhập thiếu trường số điện thoại
+Nhập thiếu trường email
+Nhập thiếu trường tài khoản
+Nhập thiếu trường mật khẩu
+Nhập thiếu trường nhập lại mật khẩu
+Trường mật khẩu và trường nhập lại mật khẩu không khớp nhau
- Quản lý sinh viên
Chức năng thêm:
+Người dùng nhập đầy đủ thông tin rồi nhấn nút “thêm sinh viên” nhưng chưa có sinh viên đã thêm trong danh sách
+Kiểm tra lưu vào cơ sơ dữ liệu
+Kiểm tra trùng dữ liệu
3.3.2.Chức năng không test
+ Quản lý chi tiết sinh viên
+ Các tiêu chuẩn đánh giá chất lượng phần mềm:
- Hệ thống vận hành tốt, không gặp phải các lỗi như trên
Trang 27- Ổn định, hạn chế tối đa thời gian ngắt quãng.
- Tốc độ tải trang nhanh
- Trải nghiệm người dùng tốt, thao tác lưu loát, mượt mà
+ Việc test chỉ dừng lại khi:
- Hết thời gian triển khi dự án
- Hết kinh phí
- Bị delay quá lâu, sản phẩm không có giá trị nhiều so với kinh phí bỏ ra
- Sản phẩm đã hoàn thành, đạt đúng yêu cầu và chất lượng đã thỏa thuận
Test Security & Access Control Testing
System Test
Bảng 3.3 Bảng test Enviroment
Trang 283.6.Test Resources Man-power
Bảng sau đây mô tả nguồn lực test cho dự án:
1 Lê Huy Nam Test manager: quản lý hoạt động kiểm
thử-Hướng dẫn kỹ thuật-Sử dụng nguồn lực-Báo cáo quản lý-Báo cáo sản phẩm
2 Lê Huy Nam Test designer: thiết kế testcase
-Định nghĩa cách tiếp cận test-Viết các testcase
3 Lê Huy Nam Tester: hiện thực và chạy test case
-Hiện thực test và test suites-Chạy test suil
-Ghi kết quả
Bảng 3.4 Bảng test Resources Man-power
3.7.Features
Testing features:
+ Quản lý module đăng nhập
+ Quản lý module đăng kí
+ Quản lý module quản lý sinh viên
+ Quản lý module quản lý chi tiết sinh viên
Trang 29Non-testing features:
+ Quản lý module đăng nhập
+ Quản lý module quản lý sinh viên
+ Quản lý module đăng kí
3.8.Test milestones
Mỗi Milestione cho 1 module bao gồm cả việc design testcase và chạy testcase
day
1 Đăng nhập Lê Huy Nam 10-11-2021 25-11-2021 15 days
2 Đăng kí Lê Huy Nam 26-11-2021 15-12-2021 19 days
3 Quản lý sinh viên Lê Huy Nam 16-12-2021 22-12-2021 6 days
4 Quản lý chi tiết
1 Test plan 10-01-2022 Lê Huy Nam Lê Huy Nam
Bảng 3.6 Bảng test products
Trang 30CHƯƠNG 4: XÂY DỰNG VÀ THỰC HIỆN CÁC TEST CASE 4.1.Test case màn hình đăng kí.
Trang 31Thông báo
“Vui lòng điền đầy đủthông tin”
Pass
LêHuyNam
Thông báo
“Vui lòng điền đầy đủthông tin”
Pass
Trang 322 Click button
“submit” khiđang nhập liệu
Hệ thống hiển thị thông báo
“Vui lòng điền đầy đủthông tin”
Hệ thống hiển thị thông báo
“Tài khoản
đã được đăng kí thành công”
Hệ thống hiển thị thông báo
“Tài khoản
đã được đăng kí thành công”
Pass
Trang 33Hệ thống hiển thị thông báo
“Vui lòng điền đầy đủthông tin”
Hệ thống hiển thị thông báo
“Số điện thoại bạn nhập chưa chính xác”
2.Nhập các trường khác hợp lệ3.Click button submit
Hệ thống hiển thị thông báo
“Số điện thoại không hợp lệ”
Fail
Hệ thống hiển thị thông báo “Tài khoản đã được đăng kí thành công”
Hệ thống hiển thị thông báo
“Số điện thoại bạn
Pass
Trang 34number chữ,…)
2.Nhập các trường khác hợp lệ3.Click button submit
nhập chưa chính xác”
Hệ thống hiển thị thông báo
“Vui lòng điền đầy đủthông tin”
Hệ thống hiển thị thông báo
“Email không hợp lệ”
Fail
Hệ thống hiển thị thông báo “Tài khoản đã được đăng kí thành công”
Hệ thống hiển thị thông báo
“Email không hợp lệ”
Fail
Hệ thống hiển thị thông báo “Tài khoản đã