Professional Documents
Culture Documents
Trong 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ông
nghệ thông tin phát triển đồng nghĩa với nó là ngành công nghệ phần mềm cũng
phá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ất
lượ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òn
phả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ềm
nói chung hay một ứng dụng web nói riêng có thể gây ra những hậu quả nghiêm
trọng. Do đó, hoạt động đảm bảo chất lượng phần mềm là 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. Chính vì lý do đó, việc đưa vào quy trình kiểm thử là vô cùng cần
thiết. Vì vậy nên em chọn đề tài “Kiểm thử phần mềm” cho môn họ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âu
nê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.
CHƯƠ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ại
thử 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ên
chương trình đã hoạt động. Công cụ này được sử dụng ở giai đoạn Program being
tested trong mô hình kiến trúc chung của tự động hóa kiểm thử.
1.1.2.Thành phần
+ Desktop: Hỗ trợ kiểm tra tự động các ứng dụng Java, C ++, Delphi, Qt, Visual
Basic, .NET, WPF và Windows Store.
+ Web: Hỗ trợ đầy đủ kiểm tra web trong các trình duyệt phổ biến như Google
Chrome, Internet Explorer, Mozilla Firefox, Apple Safari và Opera.
+ Mobile: Hỗ trợ các ứng dụng Android và iOS gốc.
1.1.3.Ngôn ngữ viết
Testcomplete hỗ trợ rất nhiều ngôn ngữ phổ biến hiện tại như: C#, javascript,
python
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ọn
nơi lưu -> Chọn kiểu test và chọn Next
Tiếp theo chọn môi trường test, ở đây chọn môi trường là web, điền
URL trang 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ục URL để tiến hành test.
Một bảng ghi được hiển thị như ảnh dưới đây, điều này chứng tỏ quá
trình test đã 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 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
1.3.Áp dụng kiểm thử tự động với chức năng đăng nhập, đăng xuất
Ở màn hình chính của công cụ, chọn Record test -> Đặt tên project ->
Chọn nơi lưu -> Chọn kiểu test và chọn Next
Tiếp theo chọn môi trường test, ở đây chọn môi trường là web, điền
URL trang web cần test, sau đó bấm Record
Sau đó công cụ sẽ điều hướng đến trang web cần test và chúng ta sẽ
tạo 4 test case cho 4 trường hợp sau: Không nhập gì cả, nhập đúng tài
khoản nhưng sai mật khẩu, nhập trống tài khoản hoặc mật khẩu và
nhập đúng tài khoản, mật khẩu.
Sau khi tạo xong test case đầu tiên, muốn tạo thêm test case chỉ cần
chọn biểu tượng “+” như hình bên dưới và chọn record để thực hiện
tiếp
Để 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
CHƯƠNG 2 : ĐẶC TẢ PHẦN MỀM
2.3. Phân tích chi tiết từng chức năng của phần mềm
2.3.1. Chức năng đăng nhập , đăng xuất
2.3.1.1 . Biểu đồ Actor và usecase chức năng đăng nhập
Đặc tả Use case đăng nhập , đăng xuất
- Tác nhân : người dùng bao gồm người quản lý , nhân viên bán hàng và
người quản trị phần mềm
- Điều kiện : Đăng nhập được vào phần mềm
- Mục đích : Người quản trị và nhân viên bán hàng đăng nhập vào phần mềm
để thực hiện các công việc của mình
- Dòng sự kiện chính :
- Dòng sự kiên phụ :
Hình 2.2: Biểu đồ usecase cho chức năng đăng nhập
Đặc tả use case đăng nhập
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.
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 đó.
+ 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ực
hiệ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ông
chính xác”.
2.2.1.2 Biểu đồ hoạt động cho chức năng đăng nhập
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:
5. Hệ thống sẽ hiển thị thông báo yêu cầu nhập đầy đủ thông tin.
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 đó.
+ 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à confirm
password không giống nhau.
2.3.1.3 Biểu đồ hoạt động cho chức năng đăng ký
2.3.2.1. Actor và usecase chức năng quản lý thông tin khách hàng
Hình 2.6: Biểu đồ Use Case cho chức năng quản lý thông tin khách hàng
Hình 2.7: Biểu đồ hoạt động cho chức năng thêm khách hàng
2.3.2.3.Biểu đồ hoạt động chức năng sửa khách hàng
Mô tả:
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 khách hàng.
Sự kiện chính:
1. Tác nhân yêu cầu xem-sửa thông tin khách hàng lên hệ thống.
2. Hệ thống sẽ hiện thị giao diện chi tiết thông tin khách hàng.
3. Tác nhân sẽ chọn mã khách hàng cần xem đồng thời có thể cập nhật
thông tin chi tiết khách hàng.
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 khách hàng.
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 khách hàng.
+ 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 khách hàng 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ại
thô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.
2.3.3.2.Biểu đồ hoạt động cho chức năng chi tiết khách hàng
2.3.4.1. Actor và usecase chức năng quản lý thông tin hóa đơn
Hình 2.12: Biểu đồ Use Case cho chức năng quản lý thông tin khách hàng
Hình 2.13: Biểu đồ hoạt động cho chức năng thêm hóa đơn
2.3.4.4.Biểu đồ hoạt động chức năng sửa hóa đơn
- Nêu ra những phương pháp, chiến lược kiểm thử nên sử dụng.
1 Đăng nhập 1 man days 0.5 man days 0.5 man days
4 Quản lý chi tiết trang 6 man days 1 man days 2 man days
web
- Đăng nhập
ID Member Position/Responsibility/Comment
Non-testing features:
3.8.Test milestones
Mỗi Milestione cho 1 module bao gồm cả việc design testcase và chạy testcase
4.1.1.Test function
1.Bỏ trống
Button mật khẩu Thông báo
Đăng 2.Nhập các “Vui lòng
3 Nhập trường khác Pass
điền đầy đủ
hợp lệ
3.Nhấn thông tin”
“Đăng nhập”
1.Nhập
thông tin Hệ thống
Dữ liệu hiển thị
input chứa ký tự thông báo
Pass
4 Tên đặc biệt, “Đăng
!@#123
nhập thành
chứa số,... công”
2.Nhấn
“Đăng nhập”
1.Nhập Hệ thống
2.Nhấn công”
“Đăng nhập”
1.Nhập Hệ thống
thông tin hiển thị
Dữ liệu “PhUoNg chứa ký tự thông báo Pass
6 input ”
viết hoa “Đăng
Tên
2.Nhấn nhập thành
“Đăng nhập” công”
1.Nhập sai
Hệ thống
tài khoản
hiển thị
Button 2.Nhập các
thông báo
7 Đăng trường khác Pass
Nhập “Đăng
hợp lệ
nhập thất
3.Nhấn
bại”
“Đăng nhập”
Kiểm Khởi
Hiển thị
tra chạy 1.Ấn nút
8 trang màn hình Pass
“Đăng chương “Start”
đăng nhập
nhập trình
Hệ thống
1.Nhập tất cả
hiển thị
các trường
Button thông báo
9 “Đăng hợp lệ Pass
“Đăng
nhập” 2.Nhấn
nhập thành
“Đăng nhập”
công”
1.Nhập sai
Hệ thống
mật khẩu
Button hiển thị
Đăng 2.Nhập các
Nhập thông báo
10 trường khác Pass
“Đăng
hợp lệ
nhập thất
3.Nhấn
bại”
“Đăng nhập”
Hệ thống
1.Nhập các
hiển thị
trường hợp
Button thông báo
3 Đăng lệ Pass
“Đăng ký
ký 3.Nhấn
thành
“Đăng ký
công”
1.Nhập
Hệ thống
thông tin
hiển thị
chứa ký tự
Dữ liệu thông báo Pass
4 123!@# đặc biệt,
input “Đăng ký
Tên chứa số,...
thành
2.Nhấn
công”
“Đăng ký”
1.Nhập
Hệ thống
thông tin
hiển thị
Dữ liệu chứa khoảng
thông báo Pass
5 input “phuo trắng (đầu,
Tên n g” “Đăng ký
cuối, giữa)
thành
2. Nhấn
công”
“Đăng ký”
1.Nhập đầy
Hệ thống
đủ các
Button đưa về màn Pass
7 Quay trường
hình đăng
lại 3.Nhấn
nhập
“Quay lại”
1.Bỏ trống
một trường Hệ thống
Button 2.Các trường đưa về màn
8 Quay Pass
khác hợp lệ hình đăng
lại
3.Nhấn nhập
“Quay lại”
1.Bỏ trống
input Hệ thống
Username hiển thị
Dữ liệu 2.Nhập các thông báo Pass
9 input
Userna trường khác “Vui lòng
me hợp lệ điền đầy đủ
3.Nhấn thông tin”
“Đăng ký”
1.Nhập Hệ thống
Password có hiển thị
1.Bỏ trống
input Nhập Hệ thống
1.Nhập Hệ thống
Hệ thống
username hiển thị
chưa bắt
Dữ liệu dưới 8 ký tự thông báo
lỗi
input 2.Nhập các “Tài khoản
21 userna Fail trường
me trường khác đã được
hợp tài
hợp lệ đăng ký
khoản
3. Nhấn thành
quá ngắn
“Đăng ký” công”
1.Nhập Hệ thống
Hệ thống
username hiển thị
chưa bắt
Dữ liệu trên 50 ký tự thông báo
lỗi
input 2.Nhập các “Tài khoản
22 userna Fail trường
me trường khác đã được
hợp tài
hợp lệ đăng ký
khoản
3. Nhấn thành
quá dài
“Đăng ký” công”
A
ID Test Steps Expected results result Comment
Giao diện hiển thị vị trí, kích
1 Kiểm tra vị trí, kích cỡ thước các button, input,... cân đối
của các input, label như design thiết kế Pass
Các tab nhảy đúng thứ tự các
2
Click nút tab trên form bước người dùng sẽ nhập Pass
3 Click mở form đăng ký Vào màn hình form đăng ký Pass
Kiểm tra nút “đăng ký”,
4 “quay lại” có đúng font Nút “đăng ký”, “quay lại” đúng
chữ không font chữ Pass
Kiểm tra ô nhập liệu có Các ô nhập liệu hoạt động bình
5
nhập được dữ liệu không thường Pass
Kiểm tra khi responsive Form nhập liệu và các thành
6 màn hình thì form có bị phần bên trong được responsive
vỡ không đúng tỉ lệ, không bị vỡ Pass
4.2.Test màn hình hóa đơn bán hàng
4.3.1.Test function.
4.3.1.1.Test function thêm hóa đơn
results result nt
2.Nhấn đủ thông
“Thêm” tin”
“Thêm” đủ thông
tin”
2.Nhập
các
trường
khác hợp
lệ.
2.Nhấn
“Thêm”
2.Nhập đơn
các bán”
trường
khác hợp
lệ.
2.Nhấn
“Thêm”
các người
trường dùng
khác hợp
lệ.
3.Nhấn
“Thêm”
trường dùng
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập tin”
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập tin”
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
3.Nhấn đúng
“Thêm” với
những
mặt
hàng
khách
đã đặt
mua
2.Nhập
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
3.Nhấn
“Thêm”
2.Nhập
các
trường
khác hợp
lệ
3.Nhấn
“Thêm”
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập tin”
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập không
các đúng
trường định
lệ.
3.Nhấn
“Thêm”
2.Nhập thành
các công”
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập dùng
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập
các
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
2.Nhập người
các dùng
trường
khác hợp
lệ.
3.Nhấn
“Thêm”
results result nt
2.Nhấn chức
“Sửa” năng
trong
form
5.Tổng tiền
2.Nhấn chức
“Sửa” năng
trong
form
2.Nhập năng
các trong
trường form
khác hợp
lệ.
3. Nhấn
“Sửa”
2.Nhập
các
trường
khác hợp
lệ.
3. Nhấn
“Sửa”
2.Nhập năng
các
trường
khác hợp
lệ.
3. Nhấn
“Sửa”
2.Nhập năng
các trong
trường form
khác hợp
lệ.
3. Nhấn
“Sửa”
3. Nhấn
“Sửa”
2.Nhập năng
các
trường
khác hợp
lệ.
3. Nhấn
“Sửa”
2.Nhập
các
trường
khác hợp
lệ.
3.Nhấn
“Sửa”
2.Nhập
các
trường
khác hợp
lệ.
3.Nhấn
“Sửa”
12 Dữ liệu 1.Bỏ Lỗi hệ Fail Hệ
input Mã trống thống thống
khách trường vô hiệu
Mã khách hóa mọi
2.Nhập chức
các năng
trường
khác hợp
lệ.
3. Nhấn
“Sửa”
2.Nhập năng
các
trường
khác hợp
lệ.
3. Nhấn
“Sửa”
14 Dữ liệu 123!@# 1.Nhập Hệ thống Pass
input Mã Mã khách hiển thị
khách không hóa đơn
hợp lệ(có vừa sửa lên
kí tự đặc danh sách
biệt). thế chỗ cho
các
trường
khác hợp
lệ.
3. Nhấn
“Sửa”
2.Nhập
các
trường
khác hợp
lệ.
3.Nhấn
“Sửa”
results result nt
A
ID Test Steps Expected results result Comment
Giao diện hiển thị vị trí, màu
Kiểm tra vị trí, màu sắc, sắc, kích thước các button,
1
kích cỡ của các input, input,... cân đối như design thiết
label, datagridview kế Pass
2 Click nút tab trên form Các tab nhảy đúng thứ tự các Pass
bước người dùng sẽ nhập
Kiểm tra khi responsive Form nhập liệu và các thành
3 màn hình thì form có bị phần bên trong được responsive
vỡ không đúng tỉ lệ, không bị vỡ Pass
Thanh scroll chỉ xuất hiện khi
nội dung vượt ra khỏi độ dài
4
Kiểm tra sự có mặt của màn hình, bị ẩn khi nội dung ít,
thanh scroll ngắn. Fail
KẾT LUẬN
Sau thời gian nghiên cứu và bắt tay vào thực hiện, với mong muốn hiểu
được cách kiểm thử phần mềm, em đã hoàn thành đề tài “Kiểm thử phần mềm bán
đồ lưu niệm”.
Kết quả đạt được:
Hiểu được các xây dựng các test case cho phần mềm
Biết về công cụ TestComplete và áp dụng kiến thức tìm hiểu được để kiểm
thử chức năng cho phần mềm với công cụ TestComplete
Mặc dù đã rất cố gắng hoàn thiện báo cáo với tất cả sự nỗ lực, tuy nhiên do
bước đầu tìm hiểu và xây dựng báo cáo môn học trong thời gian có hạn, với lượng
kiến thức còn hạn chế, em rất mong nhận được sự quan tâm, thông cảm và những
đóng góp quý báu của các thầy cô và các bạn để báo cáo này ngày càng hoàn thiện
hơn.
TÀI LIỆU THAM KHẢO
Slide bài giảng: cô Lê Thị Trang Linh
Tài liệu: The Art of Software Testing, Glenford J. Myers, Second Edition,
John Wiley and Sons, Inc.
Tài liệu: Software Engineering - A Practitioner’s Approach, Roger
S.Pressman, Sixth Edition, Ph.D, McGraw-Hill, Inc.
Trang chủ TestComplete:
https://smartbear.com/product/testcomplete/overview/
Website tài liệu TestComplete: https://viblo.asia/p/huong-dan-cach-
dungtestcomplete-cho-nguoi-moi-bat-dau-part-i-Ljy5VoxjKra