SlideShare a Scribd company logo
1 of 15
Page 1 - Kick-off Project
SAVIS Vietnam Corp
Nguyên tắc cơ bản của kiểm thử phần mềm
Page 2 - Kick-off Project
SAVIS Vietnam Corp
Nội dung
• Managed Firewall
• Managed Remote
Access
• Network Intrusion
Detection/Prevention
• Admission Control
• Proxy/Cache/Filtering
• Vulnerability Service
• Advanced Client Care
• Application Performance Assessment & App. Perf. Mgmt
• IPAM/DNS/DHCP Mgmt• WAN Optimization Services
• IP Telephony
• Unified Messaging
• Presence & Collaboration
• Rich Media Conferencing
• Managed Load Balancer
Tại sao cần phải kiểm thử phần mềm?
Khái niệm kiểm thử phần mềm
7 nguyên tắc kiểm thử phần mềm
1
2
3
Khía cạnh tâm lý học của kiểm thử phần mềm
5 Quy trình kiểm thử phần mềm4
5
Quy tắc đạo đức6
Page 3 - Kick-off Project
SAVIS Vietnam Corp
1.Tại sao kiểm thử phần mềm là cần thiết
 Nếu phần hoạt động không như mong đợi dẫn đến: mất thời gian, tiền
bạc, ảnh hưởng tới uy tín doanh nghiệp….
 Nguyên nhân lỗi phần mềm
- Lỗi trong code chương trình
- Áp lực thời gian, code phức tạp ….
- Điều kiện môi trường
 Vai trò của tester trong phát triển,bảo trì và hoạt động của phần mềm
- Giảm rủi ro trong khi phần mềm hoạt động
- Đảm bảo chất lượng phần mềm
 Testing và Quality
 Bao nhiêu kiểm thử là đủ?
Page 4 - Kick-off Project
SAVIS Vietnam Corp
2.Khái niệm kiểm thử phần mềm
Mục tiêu của kiểm thử phần mềm:
- Tìm lỗi
- Đạt được sự tin cậy về mức độ chất lượng
- Cung cấp các thông tin để đưa ra quyết định
- Ngăn ngừa lỗi
Page 5 - Kick-off Project
SAVIS Vietnam Corp
3. Nguyên tắc kiểm thử phần mềm
 Nguyên tắc 1: Kiểm thử đưa ra lỗi
Kiểm thử có thể cho thấy rằng phần mềm đang có lỗi, nhưng không thể
chứng minh rằng phần mềm không có lỗi. Kiểm thử làm giảm xác suất lỗi
chưa tìm thấy vẫn còn trong phần mềm, thậm chí là không còn lỗi nào, nó
không phải là bằng chứng của sự chính xác.
 Nguyên tắc 2:Kiểm thử đầy đủ là không thể
Kiểm thử mọi thứ là không thể thực hiện được. Thay vì kiểm thử toàn
bộ, việc phân tích rủi ro và dựa trên sự mức độ ưu tiên chúng ta có thể
tập trung việc kiểm thử vào một số điểm cần thiết.
 Nguyên tắc 3: Kiểm thử sớm
Để tìm được bug sớm, các hoạt động kiểm thử nên được bắt đầu càng
sớm càng tốt trong qui trình phát triển phần mềm hoặc hệ thống, và
nên tập trung vào các hoạt động đã định trước.
Page 6 - Kick-off Project
SAVIS Vietnam Corp
3. Nguyên tắc kiểm thử phần mềm
 Nguyên tắc 4 :Sự tập trung của lỗi
Nỗ lực kiểm thử nên tập trung một cách cân đối vào mật độ lỗi dự kiến và
lỗi phát hiện ra sau đó trong các module. Một số ít các module thường
chứa nhiều lỗi không phát hiện ra trong lúc kiểm thử trước khi phát hành,
hoặc chịu trách nhiệm cho hầu hết các lỗi hoạt động của phần mềm.
1. Nguyên tắc tổ gián: chỗ nào có 1 vài con gián thì ở đâu đó xung quanh
nó sẽ có cả tổ gián -> có rất nhiều gián >>> chỗ nào có 1 vài con bug thì
xung quanh, gần gần chỗ đó sẽ có nhiều bug.
2. Nguyên tắc 80/20: thông thường 20% chức năng quan trọng trong một
chương trình có thể gây ra đến 80% tổng số bug phát hiện được trong
chương trình đó.
3. Kiểm thử đầy đủ là không thể: do đó cần phải ananlysis (phân tích) +
priorities (tính toán mức độ ưu tiên) để quyết định tập trung vào test chỗ
nào.
=> Test kỹ chức năng quan trọng => found bug => test những gì liên
quan + những chức năng gần nó để tìm ra bug nhiều hơn.
Page 7 - Kick-off Project
SAVIS Vietnam Corp
3. Nguyên tắc kiểm thử phần mềm
 Nguyên tắc 5 :Nghịch lý thuốc trừ sâu
Nếu việc kiểm thử tương tự nhau được lặp đi lặp lại nhiều lần, thì cuối
cùng sẽ có một số test case sẽ không còn tìm thấy bất kỳ lỗi nào mới. Để
khắc phục "nghịch lý thuốc trừ sâu" này, các trường hợp kiểm thử cần phải
được xem xét và sửa đổi thường xuyên, và cần phải viết các test case mới
và khác nhau để thực hiện nhiều phần khác nhau của phần mềm hoặc hệ
thống để tìm ra lỗi tiềm ẩn nhiều hơn nữa.
Nguyên tắc này giống như việc trừ sâu trong nông nghiệp, nếu chúng ta
cứ phun một loại thuốc với nồng độ giống nhau trong một khoảng thời gian
dài thì có một số con sâu sẽ quen dần và cuối cùng việc phun thuốc giống
như là tắm chúng vậy (bị nhờn thuốc) => lúc đó chúng ta không thể diệt
sạch chúng được. Do vậy, để diệt sạch sâu một cách hiệu quả, người ta
thường thay đổi loại thuốc trừ sâu, mỗi loại chỉ dùng trong khoảng thời
gian ngắn.
Page 8 - Kick-off Project
SAVIS Vietnam Corp
3. Nguyên tắc kiểm thử phần mềm
 Nguyên tắc 6: Kiểm thử theo các ngữ cảnh độc lập
Nguyên tắc này là việc kiểm thử phụ thuộc vào ngữ cảnh, test trong nhiều
ngữ cảnh khác nhau.
Ví dụ : Cùng với một chương trình calculator có rất nhiều chức năng:
- Nếu test chương trình này cho mẫu giáo thì chỉ cần test cộng trừ là OK
- Nếu test chương trình này cho cấp 2 thì cộng trừ nhân chia
- Nếu test chương trình này cho đại học thì tích phân, đạo hàm, .....
Page 9 - Kick-off Project
SAVIS Vietnam Corp
3. Nguyên tắc kiểm thử phần mềm
 Nguyên tắc 7: Sự sai lầm về việc không có lỗi
Việc tìm và sửa chữa lỗi sẽ không giúp được gì nếu hệ thống được xây
dựng xong nhưng không thể dùng được và không đáp ứng được nhu cầu
và sự mong đợi của người dùng. (Nghĩa là nếu sau khi code, test rồi fix
bug, làm đủ tất cả các trường hợp và cuối cùng cho ra một sản phẩm
không như mong đợi hoặc không đáp ứng được nhu cầu của khách hàng
thì dự án phần mềm đó coi như thất bại mặc dù đã được test xong)
Page 10 - Kick-off Project
SAVIS Vietnam Corp
4. Quy trình kiểm thử phần mềm
Quy trình kiểm thử phần mềm cơ bản gồm các hoạt động:
Bước 1: Lập kế hoạch và giám sát hoạt động kiểm thử
Bước 2: Phân tích và thiết kế test case
Bước 3: Chuẩn bị và tiến hành kiểm thử
Bước 4: Đánh kết thúc kiểm thử theo tiêu chí chấp nhận và lập báo cáo
Bước 5: Các hoạt động kết thúc kiểm thử
Page 11 - Kick-off Project
SAVIS Vietnam Corp
4. Quy trình kiểm thử phần mềm
 Lập kế hoạch và theo dõi kiểm thử
Lập kế hoạch kiểm thử là xác định mục tiêu chính của kiểm thử và đặc
tả các hoạt động kiểm thử để đạt được mục tiêu và nhiệm vụ.
Theo dõi kiểm thử là hoạt động liên tục so sánh tiến độ thực tế so
với kế hoạch và báo cáo tình trạng, bao gồm cả độ lệch so với kế hoạch.
Phân tích và thiết kế kiểm thử
Hoạt động phân tích và thiết kế kiểm thử bao gồm các nhiệm vụ chủ yếu:
Review kiểm thử cơ sở
Đánh giá khả năng kiểm thử của kiểm thử cơ sở và kiểm thử đối tượng.
Điều kiện xác định và ưu tiên kiểm thử dựa trên các mục kiểm thử, các đặc tả,
hành vi và cấu trúc của phần mềm.
Thiết kế và ưu tiên các test case quan trọng.
Xác định bộ dữ liệu cần thiết để hỗ trợ kiểm thử điều kiện và test case.
•Thiết kế cài đặt môi trường kiểm thử và bất kỳ cơ sở hạ tầng cần thiết và công
cụ.
•Tạo bi-directional truy xuất nguồn gốc giữa kiểm tra cơ sở và test case.
Page 12 - Kick-off Project
SAVIS Vietnam Corp
4. Quy trình kiểm thử phần mềm
Data Analysis
- Analyze
root
Causes of
defects
- Identify
actions
Test Execution
Perform
testing
Bug
Reporting
Bug Tracking
(Re-test)
Test Preparation
SRS study
Create
Test
Design
Review
&
Approval
- Develop test
cases, test
scripts
- Prepare test
data
Test
Planning
Create
Test Plan
(by
Test leader)
- Bug Fixing
- TC Updating
Test
Report
Page 13 - Kick-off Project
SAVIS Vietnam Corp
5. Khía cạnh tâm lý của kiểm thử phần mềm
 Một mức độ nhất định của tính độc lập thường làm cho tester có nhiều
hiệu quả hơn trong việc tìm kiếm các lỗi.
 Một số cấp độ độc lập:
- Thiết kế các kiểm thử bởi những người viết phần.
- Thết kế các kiểm thử bởi người khác.
- Thiết kế kiểm thử bởi người từ một nhóm tổ chức khác nhau hoặc
chuyên gia kiểm thử.
- Thiết kế kiểm thử bởi người từ tổ chức hoặc công ty khác nhau.
Page 14 - Kick-off Project
SAVIS Vietnam Corp
6. Quy tắc đạo đức
 Một số quy tắc đạo đức:
- PUBLIC
- CLIENT AND EMPLOYER
- PRODUCT
- JUDGMENT
- MANAGEMENT
- PROFESSION
- COLLEAGUES
- SELF
Page 15 - Kick-off Project
Trân trọng cảm ơn!

More Related Content

What's hot

Giáo trình Tester Full
Giáo trình Tester FullGiáo trình Tester Full
Giáo trình Tester Full
Thanh Sơn
 
DEV3_TestTraining.pptx
DEV3_TestTraining.pptxDEV3_TestTraining.pptx
DEV3_TestTraining.pptx
LmDngNgc
 
Bài 1 quy trình xử lý sự cố phần mềm
Bài 1   quy trình xử lý sự cố phần mềmBài 1   quy trình xử lý sự cố phần mềm
Bài 1 quy trình xử lý sự cố phần mềm
MasterCode.vn
 

What's hot (20)

Hướng dẫn sử dụng Selenium ide
Hướng dẫn sử dụng Selenium ideHướng dẫn sử dụng Selenium ide
Hướng dẫn sử dụng Selenium ide
 
Đồ án kiểm thử phần mềm
Đồ án kiểm thử phần mềmĐồ án kiểm thử phần mềm
Đồ án kiểm thử phần mềm
 
Kiểm thử bảo mật web
Kiểm thử bảo mật webKiểm thử bảo mật web
Kiểm thử bảo mật web
 
Thực tập kiểm thử phần mềm
Thực tập kiểm thử phần mềmThực tập kiểm thử phần mềm
Thực tập kiểm thử phần mềm
 
API Testing & SoapUI
API Testing & SoapUIAPI Testing & SoapUI
API Testing & SoapUI
 
[Seminar] Hướng dẫn viết test case
[Seminar] Hướng dẫn viết test case[Seminar] Hướng dẫn viết test case
[Seminar] Hướng dẫn viết test case
 
He thong cong cu kiem thu tu dong va dam bao chat luong phan mem
He thong cong cu kiem thu tu dong va dam bao chat luong phan memHe thong cong cu kiem thu tu dong va dam bao chat luong phan mem
He thong cong cu kiem thu tu dong va dam bao chat luong phan mem
 
Đề tài: Áp dụng Design Pattern trong phát triển phần mềm, 9đ
Đề tài: Áp dụng Design Pattern trong phát triển phần mềm, 9đĐề tài: Áp dụng Design Pattern trong phát triển phần mềm, 9đ
Đề tài: Áp dụng Design Pattern trong phát triển phần mềm, 9đ
 
KIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.doc
KIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.docKIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.doc
KIỂM THỬ WEB BẰNG CÔNG CỤ SELENIUM.doc
 
Giáo trình Tester Full
Giáo trình Tester FullGiáo trình Tester Full
Giáo trình Tester Full
 
Kiểm Thử Junit
Kiểm Thử Junit Kiểm Thử Junit
Kiểm Thử Junit
 
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.Tìm hiểu các kỹ thuật kiểm thử phần mềm  ứng dụng trong lập trình Java.
Tìm hiểu các kỹ thuật kiểm thử phần mềm ứng dụng trong lập trình Java.
 
Bài 4: Triển khai Active Directory: Quản trị nhóm - Giáo trình FPT
Bài 4: Triển khai Active Directory: Quản trị nhóm - Giáo trình FPTBài 4: Triển khai Active Directory: Quản trị nhóm - Giáo trình FPT
Bài 4: Triển khai Active Directory: Quản trị nhóm - Giáo trình FPT
 
Jmeter tool
Jmeter toolJmeter tool
Jmeter tool
 
Đề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đ
Đề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đĐề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đ
Đề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đ
 
DEV3_TestTraining.pptx
DEV3_TestTraining.pptxDEV3_TestTraining.pptx
DEV3_TestTraining.pptx
 
Luận văn: Xác định các ca kiểm thử và dữ liệu kiểm thử, HAY
Luận văn: Xác định các ca kiểm thử và dữ liệu kiểm thử, HAYLuận văn: Xác định các ca kiểm thử và dữ liệu kiểm thử, HAY
Luận văn: Xác định các ca kiểm thử và dữ liệu kiểm thử, HAY
 
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềmTìm hiểu về kỹ thuật Kiểm thử phần mềm
Tìm hiểu về kỹ thuật Kiểm thử phần mềm
 
Bài Giảng IC3 GS4: Phần Mềm
Bài Giảng IC3 GS4: Phần MềmBài Giảng IC3 GS4: Phần Mềm
Bài Giảng IC3 GS4: Phần Mềm
 
Bài 1 quy trình xử lý sự cố phần mềm
Bài 1   quy trình xử lý sự cố phần mềmBài 1   quy trình xử lý sự cố phần mềm
Bài 1 quy trình xử lý sự cố phần mềm
 

Similar to Nguyên tắc cơ bản của kiểm thử phần mềm

Cnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinhCnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinh
Ky Vo
 
ggggggggggggggggggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
ggggggggggggggggggggggggggggggggggggggggggggggggggg
HngPhmTh35
 

Similar to Nguyên tắc cơ bản của kiểm thử phần mềm (20)

kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptxkiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
kiemthuphanmemnhom14 (1)nhomsvk17thuchien.pptx
 
Kiem thu
Kiem thuKiem thu
Kiem thu
 
Chương 1.pdf
Chương 1.pdfChương 1.pdf
Chương 1.pdf
 
đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web siteđề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
đề Tài tìm hiểu phần mềm loadrunner kiểm tra hiệu năng web site
 
Tailieu.vncty.com t ke-testcase
Tailieu.vncty.com   t ke-testcaseTailieu.vncty.com   t ke-testcase
Tailieu.vncty.com t ke-testcase
 
Test Types & Test Levels.pdf
Test Types & Test Levels.pdfTest Types & Test Levels.pdf
Test Types & Test Levels.pdf
 
6 câu hỏi phỏng vấn tester thông dụng năm 2021
6 câu hỏi phỏng vấn tester thông dụng năm 20216 câu hỏi phỏng vấn tester thông dụng năm 2021
6 câu hỏi phỏng vấn tester thông dụng năm 2021
 
CHUONG 2.pdf
CHUONG 2.pdfCHUONG 2.pdf
CHUONG 2.pdf
 
Kiem thu
Kiem thuKiem thu
Kiem thu
 
Cnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinhCnpmnc ch3 kiem thu ql cau hinh
Cnpmnc ch3 kiem thu ql cau hinh
 
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQAGiải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
Giải Ngân Hàng Đảm Bảo Chất Lượng Phần Mềm PTIT - SQA
 
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
Đồ Án Tìm Hiểu Phần Mềm Loadrunner Kiểm Tra Hiệu Năng Website
 
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình JavaĐề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
Đề tài: Công cụ sinh dữ liệu thử tự động cho chương trình Java
 
Test plan
Test planTest plan
Test plan
 
01 tester training - overview
01  tester training - overview01  tester training - overview
01 tester training - overview
 
chuong 5
chuong 5chuong 5
chuong 5
 
Mục tiêu
Mục tiêuMục tiêu
Mục tiêu
 
Effective software testing
Effective software testingEffective software testing
Effective software testing
 
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀMĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
ĐẢM BẢO CHẤT LƯỢNG PHẦN MỀM
 
ggggggggggggggggggggggggggggggggggggggggggggggggggg
gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg
ggggggggggggggggggggggggggggggggggggggggggggggggggg
 

Nguyên tắc cơ bản của kiểm thử phần mềm

  • 1. Page 1 - Kick-off Project SAVIS Vietnam Corp Nguyên tắc cơ bản của kiểm thử phần mềm
  • 2. Page 2 - Kick-off Project SAVIS Vietnam Corp Nội dung • Managed Firewall • Managed Remote Access • Network Intrusion Detection/Prevention • Admission Control • Proxy/Cache/Filtering • Vulnerability Service • Advanced Client Care • Application Performance Assessment & App. Perf. Mgmt • IPAM/DNS/DHCP Mgmt• WAN Optimization Services • IP Telephony • Unified Messaging • Presence & Collaboration • Rich Media Conferencing • Managed Load Balancer Tại sao cần phải kiểm thử phần mềm? Khái niệm kiểm thử phần mềm 7 nguyên tắc kiểm thử phần mềm 1 2 3 Khía cạnh tâm lý học của kiểm thử phần mềm 5 Quy trình kiểm thử phần mềm4 5 Quy tắc đạo đức6
  • 3. Page 3 - Kick-off Project SAVIS Vietnam Corp 1.Tại sao kiểm thử phần mềm là cần thiết  Nếu phần hoạt động không như mong đợi dẫn đến: mất thời gian, tiền bạc, ảnh hưởng tới uy tín doanh nghiệp….  Nguyên nhân lỗi phần mềm - Lỗi trong code chương trình - Áp lực thời gian, code phức tạp …. - Điều kiện môi trường  Vai trò của tester trong phát triển,bảo trì và hoạt động của phần mềm - Giảm rủi ro trong khi phần mềm hoạt động - Đảm bảo chất lượng phần mềm  Testing và Quality  Bao nhiêu kiểm thử là đủ?
  • 4. Page 4 - Kick-off Project SAVIS Vietnam Corp 2.Khái niệm kiểm thử phần mềm Mục tiêu của kiểm thử phần mềm: - Tìm lỗi - Đạt được sự tin cậy về mức độ chất lượng - Cung cấp các thông tin để đưa ra quyết định - Ngăn ngừa lỗi
  • 5. Page 5 - Kick-off Project SAVIS Vietnam Corp 3. Nguyên tắc kiểm thử phần mềm  Nguyên tắc 1: Kiểm thử đưa ra lỗi Kiểm thử có thể cho thấy rằng phần mềm đang có lỗi, nhưng không thể chứng minh rằng phần mềm không có lỗi. Kiểm thử làm giảm xác suất lỗi chưa tìm thấy vẫn còn trong phần mềm, thậm chí là không còn lỗi nào, nó không phải là bằng chứng của sự chính xác.  Nguyên tắc 2:Kiểm thử đầy đủ là không thể Kiểm thử mọi thứ là không thể thực hiện được. Thay vì kiểm thử toàn bộ, việc phân tích rủi ro và dựa trên sự mức độ ưu tiên chúng ta có thể tập trung việc kiểm thử vào một số điểm cần thiết.  Nguyên tắc 3: Kiểm thử sớm Để tìm được bug sớm, các hoạt động kiểm thử nên được bắt đầu càng sớm càng tốt trong qui trình phát triển phần mềm hoặc hệ thống, và nên tập trung vào các hoạt động đã định trước.
  • 6. Page 6 - Kick-off Project SAVIS Vietnam Corp 3. Nguyên tắc kiểm thử phần mềm  Nguyên tắc 4 :Sự tập trung của lỗi Nỗ lực kiểm thử nên tập trung một cách cân đối vào mật độ lỗi dự kiến và lỗi phát hiện ra sau đó trong các module. Một số ít các module thường chứa nhiều lỗi không phát hiện ra trong lúc kiểm thử trước khi phát hành, hoặc chịu trách nhiệm cho hầu hết các lỗi hoạt động của phần mềm. 1. Nguyên tắc tổ gián: chỗ nào có 1 vài con gián thì ở đâu đó xung quanh nó sẽ có cả tổ gián -> có rất nhiều gián >>> chỗ nào có 1 vài con bug thì xung quanh, gần gần chỗ đó sẽ có nhiều bug. 2. Nguyên tắc 80/20: thông thường 20% chức năng quan trọng trong một chương trình có thể gây ra đến 80% tổng số bug phát hiện được trong chương trình đó. 3. Kiểm thử đầy đủ là không thể: do đó cần phải ananlysis (phân tích) + priorities (tính toán mức độ ưu tiên) để quyết định tập trung vào test chỗ nào. => Test kỹ chức năng quan trọng => found bug => test những gì liên quan + những chức năng gần nó để tìm ra bug nhiều hơn.
  • 7. Page 7 - Kick-off Project SAVIS Vietnam Corp 3. Nguyên tắc kiểm thử phần mềm  Nguyên tắc 5 :Nghịch lý thuốc trừ sâu Nếu việc kiểm thử tương tự nhau được lặp đi lặp lại nhiều lần, thì cuối cùng sẽ có một số test case sẽ không còn tìm thấy bất kỳ lỗi nào mới. Để khắc phục "nghịch lý thuốc trừ sâu" này, các trường hợp kiểm thử cần phải được xem xét và sửa đổi thường xuyên, và cần phải viết các test case mới và khác nhau để thực hiện nhiều phần khác nhau của phần mềm hoặc hệ thống để tìm ra lỗi tiềm ẩn nhiều hơn nữa. Nguyên tắc này giống như việc trừ sâu trong nông nghiệp, nếu chúng ta cứ phun một loại thuốc với nồng độ giống nhau trong một khoảng thời gian dài thì có một số con sâu sẽ quen dần và cuối cùng việc phun thuốc giống như là tắm chúng vậy (bị nhờn thuốc) => lúc đó chúng ta không thể diệt sạch chúng được. Do vậy, để diệt sạch sâu một cách hiệu quả, người ta thường thay đổi loại thuốc trừ sâu, mỗi loại chỉ dùng trong khoảng thời gian ngắn.
  • 8. Page 8 - Kick-off Project SAVIS Vietnam Corp 3. Nguyên tắc kiểm thử phần mềm  Nguyên tắc 6: Kiểm thử theo các ngữ cảnh độc lập Nguyên tắc này là việc kiểm thử phụ thuộc vào ngữ cảnh, test trong nhiều ngữ cảnh khác nhau. Ví dụ : Cùng với một chương trình calculator có rất nhiều chức năng: - Nếu test chương trình này cho mẫu giáo thì chỉ cần test cộng trừ là OK - Nếu test chương trình này cho cấp 2 thì cộng trừ nhân chia - Nếu test chương trình này cho đại học thì tích phân, đạo hàm, .....
  • 9. Page 9 - Kick-off Project SAVIS Vietnam Corp 3. Nguyên tắc kiểm thử phần mềm  Nguyên tắc 7: Sự sai lầm về việc không có lỗi Việc tìm và sửa chữa lỗi sẽ không giúp được gì nếu hệ thống được xây dựng xong nhưng không thể dùng được và không đáp ứng được nhu cầu và sự mong đợi của người dùng. (Nghĩa là nếu sau khi code, test rồi fix bug, làm đủ tất cả các trường hợp và cuối cùng cho ra một sản phẩm không như mong đợi hoặc không đáp ứng được nhu cầu của khách hàng thì dự án phần mềm đó coi như thất bại mặc dù đã được test xong)
  • 10. Page 10 - Kick-off Project SAVIS Vietnam Corp 4. Quy trình kiểm thử phần mềm Quy trình kiểm thử phần mềm cơ bản gồm các hoạt động: Bước 1: Lập kế hoạch và giám sát hoạt động kiểm thử Bước 2: Phân tích và thiết kế test case Bước 3: Chuẩn bị và tiến hành kiểm thử Bước 4: Đánh kết thúc kiểm thử theo tiêu chí chấp nhận và lập báo cáo Bước 5: Các hoạt động kết thúc kiểm thử
  • 11. Page 11 - Kick-off Project SAVIS Vietnam Corp 4. Quy trình kiểm thử phần mềm  Lập kế hoạch và theo dõi kiểm thử Lập kế hoạch kiểm thử là xác định mục tiêu chính của kiểm thử và đặc tả các hoạt động kiểm thử để đạt được mục tiêu và nhiệm vụ. Theo dõi kiểm thử là hoạt động liên tục so sánh tiến độ thực tế so với kế hoạch và báo cáo tình trạng, bao gồm cả độ lệch so với kế hoạch. Phân tích và thiết kế kiểm thử Hoạt động phân tích và thiết kế kiểm thử bao gồm các nhiệm vụ chủ yếu: Review kiểm thử cơ sở Đánh giá khả năng kiểm thử của kiểm thử cơ sở và kiểm thử đối tượng. Điều kiện xác định và ưu tiên kiểm thử dựa trên các mục kiểm thử, các đặc tả, hành vi và cấu trúc của phần mềm. Thiết kế và ưu tiên các test case quan trọng. Xác định bộ dữ liệu cần thiết để hỗ trợ kiểm thử điều kiện và test case. •Thiết kế cài đặt môi trường kiểm thử và bất kỳ cơ sở hạ tầng cần thiết và công cụ. •Tạo bi-directional truy xuất nguồn gốc giữa kiểm tra cơ sở và test case.
  • 12. Page 12 - Kick-off Project SAVIS Vietnam Corp 4. Quy trình kiểm thử phần mềm Data Analysis - Analyze root Causes of defects - Identify actions Test Execution Perform testing Bug Reporting Bug Tracking (Re-test) Test Preparation SRS study Create Test Design Review & Approval - Develop test cases, test scripts - Prepare test data Test Planning Create Test Plan (by Test leader) - Bug Fixing - TC Updating Test Report
  • 13. Page 13 - Kick-off Project SAVIS Vietnam Corp 5. Khía cạnh tâm lý của kiểm thử phần mềm  Một mức độ nhất định của tính độc lập thường làm cho tester có nhiều hiệu quả hơn trong việc tìm kiếm các lỗi.  Một số cấp độ độc lập: - Thiết kế các kiểm thử bởi những người viết phần. - Thết kế các kiểm thử bởi người khác. - Thiết kế kiểm thử bởi người từ một nhóm tổ chức khác nhau hoặc chuyên gia kiểm thử. - Thiết kế kiểm thử bởi người từ tổ chức hoặc công ty khác nhau.
  • 14. Page 14 - Kick-off Project SAVIS Vietnam Corp 6. Quy tắc đạo đức  Một số quy tắc đạo đức: - PUBLIC - CLIENT AND EMPLOYER - PRODUCT - JUDGMENT - MANAGEMENT - PROFESSION - COLLEAGUES - SELF
  • 15. Page 15 - Kick-off Project Trân trọng cảm ơn!