1. Trang chủ
  2. » Luận Văn - Báo Cáo

THỰC TẬP NGHỀ NGHIỆP

45 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Kiểm Thử Tự Động Katalon Studio Và Ứng Dụng Cho Hệ Thống Bán Hàng Trực Tuyến Nopcommerce
Người hướng dẫn TS. Hoàng Thị Thanh Hà, Trần Thị Hoài Phương
Trường học Trường Đại Học Kinh Tế
Chuyên ngành Hệ Thống Thông Tin Quản Lý
Thể loại Báo Cáo Thực Tập
Năm xuất bản 2023
Thành phố Đà Nẵng
Định dạng
Số trang 45
Dung lượng 1,25 MB

Nội dung

KIỂM THỬ TỰ ĐỘNG KATALON STUDIO MỤC LỤC DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU DANH MỤC CÁC TỪ VIẾT TẮT CHƯƠNG 1: TỔNG QUAN VỀ CÔNG TY TMA VÀ VỊ TRÍ TESTER 1.1. Giới thiệu tổng quát về công ty TMA Bình Định 2 1.1.1. Quá trình hình thành và phát triển của công ty 2 1.1.2. Tầm nhìn và sứ mệnh 2 1.1.3. Giá trị cốt lõi 2 1.1.4. Lĩnh vực hoạt động 2 1.2. Tổng quan về vị trí Tester 2 1.2.1. Mô tả về vị trí Tester 2 1.2.2. Các kĩ năng cần có của một Tester 2 1.2.3. Cơ hội nghề nghiệp 2 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 3 2.1. Tổng quan về kiểm thử phần mềm 3 2.1.1. Giới thiệu về kiểm thử phần mềm 3 2.1.2. Mục tiêu của kiểm thử 3 2.1.3. Vòng đời kiểm thử phần mềm 3 2.1.4. Các nguyên tắc của kiểm thử phần mềm 3 2.1.5. Phân biệt Error Fault Failure 3 2.1.6. Phân biệt Verification Validation 3 2.1.7. Phân biệt QA QC 3 2.2. Vòng đời phát triển phần mềm 3 2.2.1. Các giai đoạn của vòng đời phát triển phần mềm 3 2.2.2. Các mô hình của vòng đời phát triển phần mềm 3 2.3. Các loại kiểm thử phần mềm 3 2.3.1. Manual Testing 3 2.3.2. Automation Testing 3 2.4. Các phương pháp kiểm thử phần mềm 4 2.4.1. White Box Testing 4 2.4.2. Black Box Testing 4 2.5. Cấp độ của kiểm thử 4 2.5.1. Unit Testing 4 2.5.2. Integration Testing 4 2.5.3. System Testing 4 2.5.4. Acceptance Testing 4 2.6. Test case và vòng đời Bug 4 2.6.1. Test case là gì? 4 2.6.2. Các thành phần của Test case 4 2.6.3. Các kỹ thuật của Test case 4 2.6.4. Vòng đời Bug 4 2.7. Tổng quan về công cụ kiểm thử Katalon Studio 4 2.7.1. Katalon Studio là gì? 4 2.7.2. Các tính năng chính của Katalon Studio 4 2.7.3. Ưu và nhược điểm 4 2.8. Tổng quan về ngôn ngữ lập trình Java 4 2.8.1. Java là gì? 4 2.8.2. Các tính năng của Java 4 CHƯƠNG 3. TRIỂN KHAI DỰ ÁN 4 3.1. Tổng quan về website nopCommerce 11 3.1.1. Giới thiệu về website nopCommerce 11 3.1.2. Giao diện website nopCommerce 11 3.1.3. Các chức năng chính của hệ thống 11 3.2. Thiết kế Test case 11 3.3. Thực hiện test 11 3.4. Kết quả kiểm thử 11 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 12 TÀI LIỆU THAM KHẢO 23

Trang 1

TRƯỜNG ĐẠI HỌC KINH TẾ

KHOA THỐNG KÊ – TIN HỌC

BÁO CÁO THỰC TẬP NGHỀ NGHIỆP

NGÀNH HỆ THỐNG THÔNG TIN QUẢN LÝ

CHUYÊN NGÀNH QUẢN TRỊ HỆ THỐNG THÔNG TIN

KIỂM THỬ TỰ ĐỘNG KATALON STUDIO VÀ ỨNG DỤNG

Trang 3

LỜI CẢM ƠN

Em xin phép được gửi sự tri ân sâu sắc và lời cảm ơn chân thành nhất đối với các thầy côgiáo Khoa Thống kê- Tin học trường Đại Học Kinh Tế Đà Nẵng đã tạo điều kiện để em cóđiều kiện thực tập Đặc biệt, em xin trân trọng cảm ơn cô TS.Hoàng Thị Thanh Hà đã nhiệttình hướng dẫn để em có thể hoàn thành tốt kì thực tập này

Đặc biệt, em xin chân thành gửi lời cảm ơn đến Mentor Trần Thị Hoài Phương đã hướng dẫntrực tiếp, chỉ đạo và tạo mọi điều kiện giúp đỡ em trong suốt quá trình học cũng như thực tậptại đây

Em cũng xin trân trọng gửi lời cảm ơn đến toàn thể anh chị trong DG4 Sự hỗ trợ, chia sẻkiến thức của các anh chị đã tạo điều kiện thuận lợi cho em hoàn thành nhiệm vụ thực tậpmột cách hiệu quả Những trao đổi, ý kiến đóng góp đã giúp em mở rộng hiểu biết và nângcao kỹ năng của mình Nhờ vậy mà em đã học thêm được nhiều kiến thức mới và có cái nhìntường tận hơn về lý thuyết chuyên ngành cũng như thực tế áp dụng

Trong suốt quá trình thực tập cũng như quá trình tìm hiểu, sẽ không thể tránh khỏi những sựthiếu sót và hạn chế Em rất mong nhận được những ý kiến đóng góp và phản hồi từ quý thầy

cô để em có thể khắc phục được những sai sót cũng như rút ra được những bài học cho mình

và trau dồi thêm những kiến thức mới Em xin chân thành cảm ơn!

Trang 4

LỜI CAM ĐOAN

Em xin cam đoan đề tài “Nghiên cứu về kiểm thử tự động bằng công cụ Katalon Studio vàứng dụng cho hệ thống bán hàng trực tuyến nopCommerce.” là kết quả nghiên cứu của cánhân trên cơ sở nghiên cứu các lý thuyết đã học và dưới sự hướng dẫn của T.S Hoàng ThịThanh Hà và mentor Trần Thị Hoài Phương Các thông tin và kết quả mà em đã cung cấptrong báo cáo thực tập này là chân thực và chính xác dựa trên những quan sát và nghiên cứucủa riêng em Em cam kết đã thực hiện thực tập một cách nghiêm túc, tuân thủ các quy định,

và đưa ra những kết quả phản ánh thực tế nhất

Ngoài ra, trong bài báo cáo có sử dụng một số nguồn tài liệu tham khảo đã được trích dẫnnguồn và chú thích rõ ràng Em xin hoàn toàn chịu trách nhiệm trước bộ môn, khoa và nhàtrường về sự cam đoan này

Đà Nẵng, ngày 25 tháng 8 năm 2023

Trần Thị Tằm

Trang 5

MỤC LỤC

DANH MỤC HÌNH ẢNH

DANH MỤC BẢNG BIỂU

DANH MỤC CÁC TỪ VIẾT TẮT

CHƯƠNG 1: TỔNG QUAN VỀ CÔNG TY TMA VÀ VỊ TRÍ TESTER

1.1 Giới thiệu tổng quát về công ty TMA Bình Định

1.1.1 Quá trình hình thành và phát triển của công ty

1.2.2 Các kĩ năng cần có của một Tester

1.2.3 Cơ hội nghề nghiệp

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1 Tổng quan về kiểm thử phần mềm

2.1.1 Giới thiệu về kiểm thử phần mềm

2.1.2 Mục tiêu của kiểm thử

2.1.3 Vòng đời kiểm thử phần mềm

2.1.4 Các nguyên tắc của kiểm thử phần mềm

2.1.5 Phân biệt Error/ Fault/ Failure

2.1.6 Phân biệt Verification & Validation

2.1.7 Phân biệt QA & QC

2.2 Vòng đời phát triển phần mềm

2.2.1 Các giai đoạn của vòng đời phát triển phần mềm

2.2.2 Các mô hình của vòng đời phát triển phần mềm

Trang 6

2.4.2 Black Box Testing

2.6.2 Các thành phần của Test case

2.6.3 Các kỹ thuật của Test case

2.6.4 Vòng đời Bug

2.7 Tổng quan về công cụ kiểm thử Katalon Studio2.7.1 Katalon Studio là gì?

2.7.2 Các tính năng chính của Katalon Studio

2.7.3 Ưu và nhược điểm

2.8 Tổng quan về ngôn ngữ lập trình Java

2.8.1 Java là gì?

2.8.2 Các tính năng của Java

CHƯƠNG 3 TRIỂN KHAI DỰ ÁN

3.1 Tổng quan về website nopCommerce 3.1.1 Giới thiệu về website nopCommerce3.1.2 Giao diện website nopCommerce3.1.3 Các chức năng chính của hệ thống3.2 Thiết kế Test case

3.3 Thực hiện test

3.4 Kết quả kiểm thử

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

TÀI LIỆU THAM KHẢO

Trang 7

DANH MỤC HÌNH ẢNH

Trang 8

DANH MỤC BẢNG BIỂU

Trang 9

DANH MỤC CÁC TỪ VIẾT TẮT

Trang 10

LỜI MỞ ĐẦU

1 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ầnmềm nói riêng, việc phát triển phần mềm ngày càng được hỗ trợ bởi nhiều công cụ tiêntiến, giúp cho việc xây dựng phần mềm đỡ mệt nhọc và hiệu quả hơn

Các ứng dụng web càng ngày càng trở nên phổ biến và phát triển mạnh mẽ, nhằm đápứng tối đa những đòi hỏi của người dùng khi họ bật trình duyệt web của mình lên Chođến nay, các ứng dụng website đóng vai trò quyết định trong thương mại điện tử và traođổi thông tin Và việc đảm bảo chất lượng website là vô cùng quan trọng để đáp ứng cáctiêu chuẩn và yêu cầu của người dùng Do đó, em đã chọn đề tài “Nghiên cứu về kiểmthử tự động bằng công cụ Katalon Studio và ứng dụng cho hệ thống bán hàng trực tuyếnnopCommerce.”

2 Mục tiêu của đề tài

● Mục tiêu đề tài là xác định các kịch bản kiểm thử quan trọng và các chức năng cầnđược kiểm tra trong hệ thống bán hàng trực tuyến nopCommerce

● Ứng dụng các kiến thức cơ bản về kiểm thử phần mềm, kiểm thử tự động và kiếnthức về công cụ Katalon Studio để viết kịch bản kiểm thử cho hệ thống bán hàng trựctuyến nopCommerce

3 Đối tượng và phạm vi nghiên cứu

● Đối tượng nghiên cứu: Hệ thống bán hàng trực tuyến nopCommerce và công cụ kiểmthử tự động Katalon Studio

● Phạm vi nghiên cứu: Tập trung vào việc xây dựng kịch bản kiểm thử tự động chonopCommerce bằng Katalon Studio, tập trung vào các chức năng quan trọng nhưđăng nhập, thêm sản phẩm vào giỏ hàng, thanh toán, và xử lý đơn hàng Nghiên cứucũng có thể tập trung vào việc tối ưu hóa và cải tiến phương pháp kiểm thử tự động

sử dụng Katalon Studio cho nopCommerce

4 Kết cấu của đề tài

Trang 11

Đề tài được tổ chức gồm phần mở đầu, 3 chương nội dung và phần kết luận.

● Mở đầu

● Chương 1: Tổng quan về công ty TMA và vị trí Tester

● Chương 2: Cơ sở lý thuyết

● Chương 3: Triển khai dự án

● Kết luận và hướng phát triển

Trang 12

CHƯƠNG 1: TỔNG QUAN VỀ CÔNG TY TMA VÀ VỊ TRÍ TESTER 1.1 Giới thiệu tổng quát về công ty TMA Bình Định

1.1.1 Quá trình hình thành và phát triển của công ty

Hình – Logo của công ty TMA

Được thành lập năm 1997, TMA là tập đoàn công nghệ hàng đầu Việt Nam với 4000 kỹ sư

và khách hàng là những tập đoàn công nghệ cao hàng đầu thế giới từ 30 quốc gia TMAhiện có 7 chi nhánh tại Việt Nam (6 tại Tp.HCM và 1 ở Tp Quy Nhơn) cùng 6 chi nhánh ởnước ngoài (Mỹ, Úc, Canada, Đức, Nhật, Singapore)

Năm 2017 TMA quyết định đầu tư xây dựng Công viên sáng tạo TMA Bình Định (TMAInnovation Park) tại Thung Lũng Sáng Tạo Quy Nhơn

Tháng 6 năm 2018, TMA đã mở chi nhánh tại Bình Định Tháng 8 năm 2018, TMA đã khởicông xây dựng Công viên Sáng tạo TMA Bình Định (TMA Innovation Park – TIP) trên 10hecta tại Thung lũng Sáng tạo Quy Nhơn (Quy Nhon Innovation Park – QNIVY) với vốnđầu tư hàng trăm tỷ đồng

Với 25 năm kinh nghiệm cung cấp giải pháp phần mềm cho hàng trăm khách hàng từ 30quốc gia, TMA luôn là đối tác chiến lược đáng tin cậy, mang đến các sản phẩm, dịch vụ,

Trang 13

giải pháp hiệu quả, phục vụ đa dạng các mục tiêu quản trị, sản xuất kinh doanh của doanhnghiệp và tổ chức

1.1.3 Giá trị cốt lõi

Chất lượng: TMA Solutions có thể đặt chất lượng là giá trị cốt lõi để đảm bảo việc cung cấpcác sản phẩm và dịch vụ công nghệ thông tin đáng tin cậy và chất lượng cao

Đổi mới: Đổi mới liên tục là một yếu tố quan trọng trong ngành công nghệ thông tin Công

ty có thể tạo ra giá trị bằng cách áp dụng công nghệ mới, nghiên cứu và phát triển các giảipháp sáng tạo, và cung cấp những ý tưởng mới để đáp ứng nhu cầu của khách hàng

Đào tạo và phát triển nhân viên: Công ty có thể đầu tư vào việc đào tạo và phát triển nhânviên để tạo ra một đội ngũ chất lượng cao, có năng lực và kiến thức để đối phó với các tháchthức trong lĩnh vực công nghệ thông tin

1.1.4 Lĩnh vực hoạt động

- Trí tuệ nhân tạo/ Máy học: Đội ngũ kỹ sư của chúng tôi đã ứng dụng Trí tuệ nhân tạo vào

lĩnh vực tự động hóa máy móc, giáo dục, dược phẩm, xe hơi, quản trị nguồn nhân lực, nôngnghiệp…với các công nghệ và giải pháp:

● Phân tích ngôn ngữ tự nhiên (NLP)

● Nhận dạng hình ảnh và video (Object Detection)

● Nhận dạng tài liệu (Document Parser)

Trang 14

● Nhận dạng quảng cáo (Brand Detection)

● Phân tích năng lực và hành vi học sinh (Student Analytics)

● Tối ưu hoạt động máy móc (Machine Optimization)

- Dữ liệu lớn/ Phân tích dữ liệu: Được thành lập vào năm 2013, đội ngũ phân tích dữ liệu

của chúng tôi đã phát triển nhanh chóng với gần 200 kỹ sư với nhiều dịch vụ:

● Thiết kế hệ thống dữ liệu doanh nghiệp

● Thu thập và phân tích dữ liệu trong thời gian thực

● Tích hợp và tổng hợp dữ liệu

● Chuyển đổi dữ liệu

● Dự báo

- Iot và thiết bị thông minh: Chúng tôi có hơn 150 kỹ sư đang làm việc trong các dự án về

IoT và Thiết bị thông minh áp dụng trong nhiều lĩnh vực:

Trang 15

các phần mềm Hay đơn giản hơn, nhân viên Tester chính là người chịu trách nhiệm ở bướccuối cùng của phần mềm để trong quá trình sử dụng không xảy ra lỗi, sự cố

Một số công việc chính của vị trí Tester:

● Nghiên cứu, phân tích yêu cầu : Tester cần ngân cứu, phân tích, xác định những yêu

cầu liên quan đến kỹ thuật trong quá trình xây dựng, phát triển dự án, phần mềm Họ

sẽ cùng phối hợp với các lập trình viên để thực hiện công việc này Việc phân tíchcần đảm bảo chính xác, nếu phân tích không đúng, sẽ làm xuất hiện sự sai lệch giữacác bên trong dự án Từ đó khiến thời gian hoàn thành phần mềm, dự án lâu hơn

● Đánh giá, phát hiện các vấn đề của phần mềm: Đây là nhiệm vụ quan trọng nhất của

một Tester Họ sẽ thực hiện kiểm thử, phát hiện các lỗi, vấn đề tiềm ẩn có thể ảnhhưởng đến chất lượng phần mềm Tìm lỗi là kỹ năng Tester cần biết và rất quantrọng Tester cần thực hiện kiểm thử, chạy các test case theo kịch bản có sẵn hoặc cácdanh sách kiểm tra được yêu cầu trước đó

● Ngăn ngừa các lỗi có thể phát sinh của phần mềm: Bên cạnh việc đánh giá, phát

hiện các vấn đề, Tester cần thực hiện các nghiệp vụ chuyên môn để ngăn chặn đượcviệc phát sinh lỗi ngay từ đầu Để làm được điều đó, các Tester cần có khả năng quansát cũng như đánh giá, kiểm tra trong mọi quy trình xây dựng, phát triển của phầnmềm

● Tương tác với khách hàng: Một số Tester sẽ cần phải tương tác trực tiếp với khách

hàng để có thể nắm được các yêu cầu, mong muốn của khách hàng về sản phẩm Từnhững yêu cầu đó, Tester có thể lên được các kịch bản hoặc danh mục cần kiểm trakhi chạy thử phần mềm, ứng dụng

● Chuẩn bị các bản báo cáo liên quan đến việc kiểm thử phần mềm Chịu trách nhiệm

hỗ trợ cho các lập trình viên phát triển phần mềm

1.2.2 Các kỹ năng cần có của một Tester

● Kỹ năng chuyên môn về kỹ thuật: Đối với Tester, bạn sẽ cần có các kiến thức, kỹ

năng chuyên sâu về kỹ thuật Các Tester thường được yêu cầu có sự hiểu biết rộng và

Trang 16

thành thạo về các ngôn ngữ lập trình và công cụ có sẵn Ngoài ra, một người testercũng cần có khả năng phân tích, đánh giá tốt

● Kỹ năng sắp xếp, quản lý công việc: Khi thực hiện kiểm thử, Tester sẽ phải thực hiện

nhiều nghiệp vụ, giao tiếp với nhiều nhân sự, bộ phận khác nhau Do đó, tester cần

có được kỹ năng sắp xếp và quản lý công việc khoa học, điều này sẽ giúp bạn không

bị chồng chéo trong công việc, xử lý thông tin

● Kỹ năng viết báo cáo: Kết quả sau quá trình kiểm thử sẽ được trình bày dưới dạng

các báo cáo lỗi Tester sẽ cần có kỹ năng viết báo cáo, trình bày khoa học và chi tiết.Ngoài ra, cần rõ ràng trong các lỗi của phần mềm để giúp cho nhân sự liên quan xử

lý được các lỗi dễ dàng hơn

● Kỹ năng viết testcase: Testcase là phần quan trọng của các quy trình kiểm thử.

Tester cần có khả năng viết testcase phù hợp với những phân đoạn, quy trình, côngviệc khác nhau Công việc của Tester có hiệu quả hay không sẽ phụ thuộc vào độicác bản testcase có phù hợp hay không

● Kỹ năng giao tiếp: Một Tester sẽ cần giao tiếp với nhiều bộ phận khác nhau như

Developer, Leader, Manager, Coder, BA,… để tìm được các lỗi thiếu sót Do đó,tester cần có khả năng giao tiếp, trình bày tốt, rõ ràng để giúp quá trình kiểm thửđược hiệu quả hơn

● Chi tiết và tỉ mỉ: Đây là yêu cầu để kết quả công việc đạt hiệu quả cao nhất Bởi vì

khi testing, chúng ta phải quan tâm đến từng dấu chấm, dấu phẩy của từng thôngđiệp Ngoài ra, ngay cả mức độ logic của thông điệp và các icon nhỏ nhất cũng phảiđược xem xét một cách kỹ càng Nếu thông điệp đưa tới người dùng có bất kỳ lỗinào, nó không chỉ ảnh hưởng đến bạn mà còn ảnh hưởng đến cả sự phát triển củacông ty

1.2.3 Cơ hội nghề nghiệp

Hiện nay ở Việt Nam nghề Tester có cơ hội làm việc rất cao nhất là đối với các bạn trẻ có

sự nhạy bén, đam mê sáng tạo Nếu kiên trì theo nghề tester bạn sẽ luôn cập nhật đượcnhững công nghệ mới, được tiếp xúc với các dự án lớn khác nhau, học hỏi được nhiều thứ.Đối với các Tester dày dạn kinh nghiệm thì cơ hội thăng tiến trong nghề khá cao

Trang 17

Lương của Tester cũng khá đa dạng Tùy thuộc vào năng lực và kinh nghiệm, mức lươngcho Tester sẽ có sự khác nhau Cụ thể:

● Đối với những Tester mới vào nghề, chưa có kinh nghiệm: Mức lương dao động từ500$- 700$ tương đương từ 10 -15 triệu đồng/tháng

● Đối với những Tester giàu kinh nghiệm, kỹ năng giỏi Mức lương dao động từ 700$ –1000$

● Đối với những quản lý Tester: Mức lương dao động từ 1000$ – 2000$

Lộ trình phát triển của nghề Tester cũng rất rõ ràng và đầy tiềm năng, được chia theo cáclevel sau:

● Level 1: Fresher Là những bạn mới tốt nghiệp các khóa đào tạo Tester cơ bản và bắtđầu đi làm Tester Ở level này, các bạn Tester hoàn toàn là các bạn mới học xong cáckhóa học về Kiểm thử phần mềm, mới tiếp xúc môi trường doanh nghiệp, hoặc cóthể là những người đã đi làm trái ngành mới thay đổi công việc sang Tester

● Level 2: Junior Ở level junior, bạn Tester đã hiểu thực thi các test case, thêm vào đó,

có thể báo cáo các bugs nếu có

● Level 3: Senior Đây là những chuyên gia thành thạo về kỹ thuật testing, nắm rõ cácyêu cầu kiểm thử phần mềm cho các doanh nghiệp với các ứng dụng phức tạp như tàichính, sức khỏe, thương mại điện tử…

● Level 4: Test Leader Thông thường, sau khoảng 5 năm kinh nghiệm trở lên, tester cóthể nắm giữ vai trò quản lý Những người này chịu trách nhiệm tổ chức công việccần được thực hiện và phân công nhiệm vụ cụ thể cho các Tester trong team dự án.Tương ứng với số năm kinh nghiệm Test Leader có sẽ là quy mô lớn, nhỏ khác nhau

mà các đội họ sẽ được quản lý

● Level 5: Test Manager Là những người tổ chức và điều phối các nhóm kiểm thử(test team): quản lý metrics, lập kế hoạch chiến lược và đưa ra dự đoán

● Level 6: Senior Test Manager Tùy thuộc vào độ cứng và số năm kinh nghiệm, TestManager có thể đạt được vị trí Senior Test Manager

Bên cạnh việc trở thành chuyên gia trong nghề Tester, Sau khi có đủ kiến thức và kinhnghiệm ở level 4, bạn có thêm các hướng đi mới như: trở thành BA (Business Analyst)

Trang 18

hoặc PM (Project Manager- quản lý dự án) Đây đều là các hướng phát triển rất tiềmnăng nếu muốn làm Tester.

Trang 19

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về kiểm thử phần mềm

2.1.1 Khái niệm kiểm thử phần mềm

Kiểm thử phần mềm là phương pháp kiểm tra xem sản phẩm phần mềm

đó trên thực tế có phù hợp với các yêu cầu đã đặt ra hay không, và đảmbảo rằng không có lỗi hay khiếm khuyết Nó bao gồm việc kiểm tra, phântích, quan sát và đánh giá các khía cạnh khác nhau của sản phẩm

2.1.2 Mục tiêu của kiểm thử

 Xác định chất lượng của sản phẩm

 Ngăn chặn phòng tránh lỗi

 Sẵn sàng tích hợp các thành phần

 Cung cấp thông tin để ra quyết định

 Xác minh và xác thực yêu cầu của người dùng

 Xây dựng sự tự tin trong công việc

 Tìm ra lỗi trước khi khách hàng phát hiện ra chúng

2.1.3 Vòng đời kiểm thử phần mềm

Vòng đời kiểm thử phần mềm (STLC) là quá trình kiểm thử được thực hiệnmột cách có hệ thống và có kế hoạch Trong quá trình STLC, các hoạtđộng khác nhau được thực hiện để cải thiện chất lượng sản phẩm

Trang 20

Hình – Vòng đời kiểm thử phần mềm Requirement analysis - Phân tích yêu cầu

 Đọc hiểu, thực hiện nghiên cứu, phân tích chi tiết các tài liệu vềthiết kế hệ thống, những yêu cầu của khách hàng về tiêu chí, chấtlượng của sản phẩm, các bản mẫu (prototype) mà khách hàng cungcấp

 Yêu cầu được chia làm 2 dạng: Functional (Chức năng) và Functional (Phi chức năng) Yêu cầu về Functional sẽ mô tả tínhnăng còn Non-Functional sẽ mô tả hiệu năng, tính bảo mật, tínhhữu dụng của phần mềm

Non- Đưa ra các câu hỏi còn thắc mắc về yêu cầu phần mềm với BA,team, leader, khách hàng để hiểu rõ hơn về yêu cầu sản phẩm

Test planning - Lập kế hoạch kiểm thử

 Xác định phạm vi kiểm thử: thời gian, lịch trình cho các công việc

 Xác định nguồn lực: con người và thiết bị, cần bao nhiêu ngườitham gia, ai làm công việc gì, cần những thiết bị hỗ trợ nào, sốlượng ra sao

 Lên kế hoạch thiết kế công việc kiểm thử: đưa ra các chức năng cầnkiểm thử những công việc gì cần thực hiện, thời gian bao lâu, xác

Trang 21

định những điều kiện tối thiểu để bắt đầu cũng như khi nào thì kếtthúc hoạt động kiểm thử với từng chức năng.

Test case development - Thiết kế kịch bản kiểm thử

 Review tài liệu: để xác định công việc cần làm, các công việc cókhác gì so với dự án trước khách hàng đưa cho, chức năng nào cầntest, chức năng nào không cần test lại nữa Từ đó, vừa có thể tiếtkiệm thời gian mà vẫn đưa ra được một kịch bản kiểm thử đầy đủ

và hiệu quả

 Viết test case/ check list: viết test case chi tiết dựa vào kế hoạch đãđưa ra và vận dụng các kỹ thuật thiết kế kịch bản kiểm thử Testcase cần bao phủ được tất cả các trường hợp kiểm thử có thể xảy racũng như đáp ứng đầy đủ các tiêu chí của sản phẩm Đồng thờitester cũng cần đánh giá mức độ ưu tiên cho từng test case

 Chuẩn bị dữ liệu kiểm thử: cần chuẩn bị trước các dữ liệu kiểm thửcho các trường hợp cần thiết như test data, test script

 Review test case/ check list: Sau khi hoàn thành, các thành viêntrong đội kiểm thử hoặc test leader cũng cần review lại test case đãtạo để có thể bổ sung, hỗ trợ lẫn nhau nhằm tránh những sai sóttrong thiết kế test case và rủi ro về sau

Test environment set up - Thiết lập môi trường kiểm thử

Việc cài đặt môi trường kiểm thử là giai đoạn cũng rất quan trọng trongvòng đời phát triển phần mềm vì nếu môi trường không phù hợp với sảnphẩm hay mong muốn khách hàng thì kết quả kiểm thử sẽ không chínhxác Môi trường kiểm thử sẽ được thiết lập dựa trên những yêu cầu củakhách hàng, hay đặc điểm của sản phẩm ví dụ như server/ client/network, Các chuyên viên kiểm thử cũng cần chuẩn bị một vài testcase để kiểm tra xem môi trường cài đặt đã sẵn sàng cho việc kiểm thửhay chưa

Trang 22

Test execution - Thực hiện kiểm thử

 Thực hiện test theo kịch bản kiểm thử

 So sánh kết quả kiểm thử với kết quả mong đợi để phát hiện ra cáclỗi sai và tiến hành theo dõi các lỗi đó đến khi chúng được fix hoàntoàn

 Cần theo dõi tiến độ của dự án và điều chỉnh sao cho phù hợp với

kế hoạch đề ra

 Thường xuyên báo cáo về tình hình test cho các bên liên quan nhưteam leader, người quản lý dự án, khách hàng

Test cycle closure - Đóng chu trình kiểm thử

 Tổng hợp và viết báo cáo kết quả cuối cùng của việc kiểm thử

 Team test phần mềm cũng cần xem lại quá trình thực hiện để nhìn

ra những điểm tốt, chưa tốt của team, cũng như rút kinh nghiệmcho những lần kiểm thử sau này

2.1.4 Các nguyên tắc của kiểm thử phần mềm

Kiểm thử cho thấy sự tồn tại của lỗi: Kiểm thử chỉ có thể chứng minh

được rằng sản phẩm có lỗi nhưng không thể chứng minh rằng sản phẩmkhông còn lỗi Điều này có nghĩa là sẽ luôn có lỗi nhưng không được pháthiện trong phần mềm, ngay cả khi không tìm thấy lỗi, cũng không đồngnghĩa rằng phần mềm đúng hoàn toàn Do đó, điều quan trọng là chúng

ta nên tập trung thiết kế các trường hợp kiểm thử sao cho có thể tìmđược càng nhiều lỗi càng tốt

Kiểm thử toàn bộ là không thể: Kiểm thử mọi thứ là không khả thi trừ

trường hợp nhỏ Thay vì kiểm thử toàn bộ, chúng ta có thể dựa vào phântích rủi ro (risk analysis), độ ưu tiên (priorities), sử dụng kỹ thuật test(test techniques) để lựa chọn các ca kiểm thử phù hợp nhất

Ngày đăng: 27/01/2024, 18:14

w