Kiểm thử chức năng New/Edit Customer trên Website Guru99 Bank

Kiểm thử New/Edit Customer Guru99 Bank: Hướng dẫn chi tiết quy trình kiểm thử chức năng thêm/sửa thông tin khách hàng trong ứng dụng Guru99 Bank.

Người đăng

Ẩn danh

Thể loại

Báo Cáo Thực Tập Nghề Nghiệp
46
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

LỜI CAM ĐOAN

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

LỜI MỞ ĐẦU

1. TỔNG QUAN VỀ DOANH NGHIỆP VÀ LÝ THUYẾT VỀ KIỂM THỬ PHẦN MỀM

1.1. Giới thiệu tổng quát về doanh nghiệp thực tập

1.2. Tổng quan về TMA Solutions Bình Định

1.3. Cơ hội việc làm đối với ngành

1.3.1. Mô tả công việc

1.3.2. Các kỹ năng cần có của một tester

1.3.3. Mức lương dành cho Fresher Tester

1.3.4. Cơ hội thăng tiến

1.4. Cơ sở lý thuyết về kiểm thử phần mềm

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

1.4.2. Vòng đời phát triển phần mềm (SDLC)

1.4.3. Các loại kiểm thử

1.4.4. Các cấp độ kiểm thử

1.4.5. Tool automation testing – Selenium – Python

2. CHƯƠNG 2. TỔNG QUAN VỀ WEBSITE GURU99 BANK

2.1. Giới thiệu Website Guru99 Bank

2.2. Mô tả các chức năng

2.3. Đặc tả chức năng

2.3.1. Chức năng New Customer

2.3.2. Chức năng Edit Customer

2.4. Workflow chức năng New Customer

2.5. Workflow chức năng Edit Customer

3. TRIỂN KHAI THỰC HIỆN

3.1. Thiết kế Test Case cho chức năng New customer

3.2. Thiết kế Test case cho chức năng Edit customer

3.3. Thiết lập các điều kiện và môi trường cần thiết trước khi thực hiện kiểm thử

3.4. Thực hiện kiểm thử

3.5. So sánh kết quả kiểm thử của Manual và Automation

3.5.1. Kết quả khi thực hiện Manual và Automation Tetsting

3.5.2. Thời gian thực hiện kiểm thử

3.5.3. Số lượng Test Case thực hiện

3.5.4. Tính nhất quán

3.5.5. Tính linh hoạt

3.6. Tổng kết

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

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Guru99 Bank Tổng Quan và Vai Trò Kiểm Thử New Edit Customer

Dự án Guru99 Bank được thiết kế để cung cấp các dịch vụ ngân hàng trực tuyến cho khách hàng. Website này cho phép người dùng thực hiện nhiều chức năng như đăng nhập, đăng xuất, thay đổi mật khẩu, quản lý thông tin khách hàng (thêm, sửa, xóa), và quản lý tài khoản (thêm, sửa, xóa). Phiên bản hiện tại có một số tính năng hạn chế, và các chức năng mới sẽ được bổ sung theo thời gian. Các chức năng hiện có bao gồm: Đăng nhập, đăng xuất, đổi password, New customer, edit customer, delete customer, New account, edit account, delete account, Deposit, withdrawal, fund transfer, Balance enquiry, mini statement, customised statement. Kiểm thử phần mềm, đặc biệt là kiểm thử chức năng New/Edit Customer, đóng vai trò quan trọng trong việc đảm bảo chất lượng và độ tin cậy của hệ thống. Kiểm thử phần mềm ngân hàng giúp phát hiện và khắc phục các lỗi (bug) trước khi chúng ảnh hưởng đến người dùng thực tế. Việc này không chỉ cải thiện trải nghiệm người dùng mà còn bảo vệ dữ liệu và tài sản của ngân hàng và khách hàng. Từ tài liệu gốc, mục tiêu của đề tài là “Nghiên cứu về đề tài 'Thực hiện kiểm thử cho Website Guru99 Bank: Chức năng New/ Edit Customer' bằng cả phương pháp thủ công và tự động, giúp hiểu sâu hơn về kiến thức kiểm thử phần mềm. Đề xuất ra một bộ Test Case cũng như quy trình kiểm thử tự động và cách thức lựa chọn Test Case hiệu quả cho hai chức năng New CustomerEdit Customer.”

1.1. Giới Thiệu Chi Tiết Về Chức Năng New Customer Guru99 Bank

Chức năng New Customer cho phép người dùng thêm thông tin khách hàng mới vào cơ sở dữ liệu của hệ thống. Các thông tin cần nhập bao gồm: Tên đầy đủ, giới tính (Nam/Nữ), ngày sinh, địa chỉ, thành phố, tỉnh/thành phố, mã bưu chính, số điện thoại liên hệ, địa chỉ email và mật khẩu cho tài khoản. Quy trình thực hiện như sau: người dùng điều hướng đến phần “New Customer”, điền thông tin, nhấn nút “Submit”. Hệ thống sẽ xác minh dữ liệu; nếu thành công, thông tin khách hàng sẽ được lưu và hiển thị thông báo thành công. Nếu thất bại, thông báo lỗi sẽ hiển thị bên cạnh các trường có dữ liệu không hợp lệ. Đầu ra của chức năng này là thông báo thành công hoặc thông báo lỗi tương ứng. Bảng 2.2 trong tài liệu gốc mô tả chi tiết các trường đầu vào của chức năng New Customer.

1.2. Mô Tả Chức Năng Edit Customer Guru99 Bank Thay Đổi Thông Tin

Chức năng Edit Customer cho phép người dùng chỉnh sửa thông tin khách hàng hiện có trong cơ sở dữ liệu. Người dùng cần nhập Customer ID để hệ thống truy xuất thông tin. Các thông tin có thể chỉnh sửa bao gồm: Địa chỉ, thành phố, tỉnh/thành phố, mã bưu chính, số điện thoại liên hệ và địa chỉ email. Quy trình thực hiện tương tự như chức năng New Customer, nhưng có thêm bước nhập Customer ID. Sau khi nhập ID, hệ thống sẽ hiển thị thông tin hiện tại, người dùng chỉnh sửa, nhấn “Submit”, và hệ thống xác minh dữ liệu. Nếu thành công, thông tin sẽ được cập nhật và hiển thị thông báo thành công; nếu thất bại, thông báo lỗi sẽ xuất hiện. Bảng 2.3 trong tài liệu gốc giải nghĩa chi tiết các trường đầu vào của chức năng Edit Customer. Điều quan trọng cần lưu ý là một số trường như Tên khách hàng, giới tính, ngày sinh không được phép chỉnh sửa.

1.3. Tầm Quan Trọng Của Kiểm Thử Chức Năng Trong Guru99 Bank Demo

Kiểm thử chức năng trong một ứng dụng ngân hàng như Guru99 Bank demo là vô cùng quan trọng. Nó đảm bảo rằng tất cả các tính năng hoạt động đúng như mong đợi và đáp ứng các yêu cầu nghiệp vụ. Đặc biệt, việc kiểm tra kỹ lưỡng các chức năng liên quan đến thông tin khách hàng như New CustomerEdit Customer là cần thiết để tránh sai sót trong quá trình nhập liệu, lưu trữ và xử lý dữ liệu. Kiểm thử thủ côngkiểm thử tự động đều có vai trò quan trọng trong việc đảm bảo chất lượng phần mềm. Việc kết hợp cả hai phương pháp giúp phát hiện ra nhiều loại lỗi khác nhau và đảm bảo rằng ứng dụng hoạt động ổn định trong nhiều điều kiện khác nhau.

II. Thách Thức Kiểm Thử New Edit Customer Guru99 Bank Vấn Đề

Quá trình kiểm thử phần mềm nói chung và kiểm thử Guru99 Bank nói riêng, đặc biệt với các chức năng quan trọng như New/Edit Customer, đối mặt với nhiều thách thức. Một trong số đó là đảm bảo phạm vi kiểm thử đầy đủ (Test Coverage), bao gồm tất cả các trường hợp có thể xảy ra, từ dữ liệu hợp lệ đến dữ liệu không hợp lệ, các trường hợp biên (Boundary Values) và các tình huống đặc biệt. Việc thiết kế Test case Guru99 Bank hiệu quả đòi hỏi sự hiểu biết sâu sắc về yêu cầu nghiệp vụ và kỹ năng phân tích rủi ro. Một thách thức khác là duy trì tính nhất quán và hiệu quả của quá trình kiểm thử khi ứng dụng thay đổi và phát triển. Các chức năng mới được thêm vào, các lỗi được sửa, và các yêu cầu được cập nhật đòi hỏi các Test case phải được cập nhật thường xuyên. Việc này đòi hỏi sự linh hoạt và khả năng thích ứng cao từ đội ngũ kiểm thử. Ngoài ra, việc lựa chọn phương pháp kiểm thử phù hợp (thủ công, tự động, hoặc kết hợp cả hai) cũng là một thách thức quan trọng.

2.1. Các Loại Lỗi Bug Thường Gặp Trong Guru99 Bank New Customer

Trong chức năng New Customer, các loại lỗi thường gặp bao gồm: Lỗi liên quan đến xác thực dữ liệu đầu vào (ví dụ: kiểm tra định dạng email, số điện thoại, mã bưu chính), lỗi liên quan đến xử lý ngày tháng (ví dụ: ngày không hợp lệ, năm không hợp lệ), lỗi liên quan đến lưu trữ dữ liệu (ví dụ: dữ liệu không được lưu đúng định dạng, dữ liệu bị mất), và lỗi liên quan đến giao diện người dùng (ví dụ: thông báo lỗi không rõ ràng, lỗi hiển thị). Việc phát hiện và sửa chữa các lỗi này đòi hỏi sự cẩn trọng và kỹ năng phân tích tốt từ người kiểm thử. Testcase ID NewCustomer_TC-009NewCustomer_TC-011 trong tài liệu gốc minh họa các trường hợp kiểm thử liên quan đến xác thực dữ liệu và xử lý ngày tháng. Các kết quả kiểm thử thủ công và tự động cho thấy sự cần thiết của việc kiểm tra kỹ lưỡng các trường hợp này.

2.2. Các Vấn Đề Phát Sinh Trong Quá Trình Kiểm Thử Edit Customer Guru99 Bank

Trong chức năng Edit Customer, các vấn đề phát sinh thường liên quan đến việc cập nhật dữ liệu không chính xác (ví dụ: dữ liệu bị ghi đè, dữ liệu không được lưu đúng cách), lỗi liên quan đến quyền truy cập (ví dụ: người dùng không có quyền sửa thông tin của khách hàng khác), lỗi liên quan đến tính toàn vẹn dữ liệu (ví dụ: dữ liệu bị mất hoặc bị hỏng trong quá trình cập nhật), và lỗi liên quan đến giao diện người dùng (ví dụ: các trường không được hiển thị đúng cách, các nút không hoạt động). Testcase ID EditCustomer_TC-01EditCustomer_TC-11 trong tài liệu gốc cho thấy các trường hợp kiểm thử liên quan đến việc cập nhật thông tin khách hàng. Kết quả cho thấy sự cần thiết của việc kiểm tra kỹ lưỡng các trường hợp này để đảm bảo tính toàn vẹn của dữ liệu.

2.3. Tầm Quan Trọng Của Báo Cáo Lỗi Bug Report Trong Dự Án Guru99 Bank

Báo cáo lỗi (Bug report) đóng vai trò quan trọng trong quá trình kiểm thử phần mềm. Một báo cáo lỗi tốt cần mô tả rõ ràng và chi tiết về lỗi, bao gồm các bước để tái hiện lỗi, môi trường kiểm thử, kết quả mong đợi và kết quả thực tế. Báo cáo lỗi cần được gửi đến đội ngũ phát triển để họ có thể sửa chữa lỗi một cách nhanh chóng và hiệu quả. Trong dự án Guru99 Bank, việc báo cáo lỗi một cách chính xác và kịp thời là cần thiết để đảm bảo chất lượng và độ tin cậy của ứng dụng. Việc sử dụng các công cụ quản lý lỗi (Bug tracking system) giúp theo dõi và quản lý các lỗi một cách hiệu quả.

III. Phương Pháp Kiểm Thử Thủ Công New Edit Customer Guru99 Bank

Kiểm thử thủ công là một phương pháp kiểm thử phần mềm truyền thống, trong đó người kiểm thử thực hiện các Test case một cách thủ công, mà không sử dụng bất kỳ công cụ tự động nào. Trong kiểm thử thủ công, người kiểm thử đóng vai trò là người dùng cuối, tương tác với ứng dụng, nhập dữ liệu, và kiểm tra kết quả. Phương pháp này đặc biệt hữu ích trong việc phát hiện các lỗi liên quan đến giao diện người dùng (UI), trải nghiệm người dùng (UX), và các lỗi không thể dự đoán trước. Việc kiểm thử thủ công đòi hỏi người kiểm thử phải có kiến thức về nghiệp vụ, kỹ năng phân tích, và sự cẩn trọng. Họ cần phải tuân thủ các quy trình và tiêu chuẩn kiểm thử, và ghi lại kết quả một cách chính xác và đầy đủ. Dù tốn nhiều thời gian và công sức, kiểm thử thủ công vẫn đóng vai trò quan trọng trong việc đảm bảo chất lượng phần mềm, đặc biệt trong các ứng dụng phức tạp như Guru99 Bank.

3.1. Quy Trình Thiết Kế Test Case Thủ Công Cho New Customer Guru99 Bank

Để thiết kế Test case thủ công cho chức năng New Customer, cần xác định các trường hợp kiểm thử khác nhau, bao gồm: Các trường hợp kiểm thử dữ liệu hợp lệ (ví dụ: nhập tên, địa chỉ, email đúng định dạng), các trường hợp kiểm thử dữ liệu không hợp lệ (ví dụ: nhập tên có ký tự đặc biệt, email sai định dạng), các trường hợp kiểm thử giá trị biên (ví dụ: nhập số lượng ký tự tối đa cho tên, địa chỉ), và các trường hợp kiểm thử đặc biệt (ví dụ: bỏ trống các trường bắt buộc). Mỗi Test case cần mô tả rõ ràng các bước thực hiện, dữ liệu đầu vào, và kết quả mong đợi. Bảng mô tả các chức năng trong tài liệu gốc (Bảng 2.1) cung cấp thông tin hữu ích để thiết kế các Test case này. Hình 3.1 trong tài liệu gốc minh họa một số Test case cho chức năng New Customer.

3.2. Cách Xây Dựng Test Scenario Thủ Công Cho Edit Customer Guru99 Bank

Tương tự, để xây dựng Test scenario thủ công cho chức năng Edit Customer, cần xác định các trường hợp kiểm thử khác nhau, bao gồm: Các trường hợp kiểm thử cập nhật thông tin thành công, các trường hợp kiểm thử cập nhật thông tin không thành công (ví dụ: nhập dữ liệu không hợp lệ, không có quyền truy cập), các trường hợp kiểm thử liên quan đến việc bảo toàn dữ liệu (ví dụ: kiểm tra xem dữ liệu có bị mất hoặc bị hỏng sau khi cập nhật không), và các trường hợp kiểm thử liên quan đến giao diện người dùng. Mỗi Test scenario cần mô tả rõ ràng các bước thực hiện, dữ liệu đầu vào, và kết quả mong đợi. Hình 3.2 trong tài liệu gốc minh họa một số Test case cho chức năng Edit Customer.

3.3. Ưu Nhược Điểm Của Kiểm Thử Thủ Công Trong Dự Án Guru99 Bank

Kiểm thử thủ công có ưu điểm là linh hoạt, dễ dàng thích ứng với các thay đổi, và có thể phát hiện các lỗi liên quan đến giao diện người dùng và trải nghiệm người dùng một cách hiệu quả. Tuy nhiên, nó cũng có nhược điểm là tốn nhiều thời gian và công sức, dễ bị sai sót do yếu tố con người, và khó mở rộng để kiểm thử một lượng lớn các Test case. Trong dự án Guru99 Bank, việc kết hợp kiểm thử thủ công với kiểm thử tự động giúp tận dụng ưu điểm của cả hai phương pháp và giảm thiểu nhược điểm.

IV. Tự Động Hóa Kiểm Thử New Edit Customer Guru99 Bank Với Selenium

Tự động hóa kiểm thử là quá trình sử dụng các công cụ và script để tự động thực hiện các Test case, thay vì thực hiện thủ công. Trong dự án Guru99 Bank, SeleniumPython là hai công cụ được sử dụng để tự động hóa kiểm thử. Selenium là một framework mã nguồn mở được sử dụng để tự động hóa trình duyệt web, cho phép tương tác với các phần tử trên trang web, nhập dữ liệu, và kiểm tra kết quả. Python là một ngôn ngữ lập trình phổ biến, dễ học, và có nhiều thư viện hỗ trợ kiểm thử tự động. Việc tự động hóa kiểm thử giúp tiết kiệm thời gian và công sức, giảm thiểu sai sót do yếu tố con người, và tăng cường khả năng mở rộng và tái sử dụng của các Test case. Tuy nhiên, tự động hóa kiểm thử cũng đòi hỏi kỹ năng lập trình và kiến thức về các công cụ kiểm thử.

4.1. Thiết Lập Môi Trường Kiểm Thử Tự Động Cho Guru99 Bank Với Selenium

Để thiết lập môi trường kiểm thử tự động cho Guru99 Bank với Selenium, cần cài đặt Python, Selenium WebDriver, và trình duyệt web (ví dụ: Chrome, Firefox). Cần cấu hình Selenium WebDriver để tương tác với trình duyệt web. Cần cài đặt các thư viện Python cần thiết, ví dụ: unittest, time, tracemalloc, HtmlTestRunner. Mã nguồn trong tài liệu gốc cung cấp ví dụ về cách khai báo các thư viện này và thiết lập môi trường kiểm thử. Biến driver được sử dụng để tương tác với trình duyệt web, và các hàm như find_element, send_keys, click được sử dụng để thực hiện các thao tác trên trang web.

4.2. Viết Script Kiểm Thử Selenium Cho Chức Năng New Customer Guru99 Bank

Để viết script kiểm thử Selenium cho chức năng New Customer, cần xác định các phần tử trên trang web cần tương tác (ví dụ: các trường nhập liệu, nút “Submit”), và sử dụng các hàm của Selenium để tìm và thao tác với các phần tử này. Ví dụ, hàm find_element(By.NAME, "name") được sử dụng để tìm phần tử có thuộc tính name là "name", và hàm send_keys("Tran Thi D") được sử dụng để nhập dữ liệu vào phần tử này. Mã nguồn trong tài liệu gốc cung cấp ví dụ về cách viết script kiểm thử Selenium cho các Test case khác nhau, ví dụ: NewCustomer_TC-002, NewCustomer_TC-009, NewCustomer_TC-011.

4.3. Thực Thi Và Đánh Giá Kết Quả Kiểm Thử Tự Động Trong Guru99 Bank

Sau khi viết script kiểm thử Selenium, cần thực thi script và đánh giá kết quả. Các kết quả được ghi lại và so sánh với kết quả mong đợi. Nếu có sự khác biệt, cần điều tra nguyên nhân và sửa chữa script hoặc ứng dụng. Kết quả kiểm thử được sử dụng để đánh giá chất lượng của ứng dụng và xác định các khu vực cần cải thiện. Hình 3.4, 3.5, 3.6 trong tài liệu gốc minh họa kết quả kiểm thử cho các Test case khác nhau của chức năng New Customer.

V. So Sánh Kiểm Thử Thủ Công và Tự Động New Edit Customer Guru99

Việc so sánh kết quả kiểm thử thủ côngkiểm thử tự động cho thấy cả hai phương pháp đều có ưu điểm và nhược điểm riêng. Bảng so sánh kết quả Test Case trong tài liệu gốc (Bảng 3.1) cho thấy cả hai phương pháp đều cho ra kết quả tương đồng trong các trường hợp kiểm thử được thực hiện. Tuy nhiên, việc sử dụng kiểm thử tự động giúp tiết kiệm thời gian và công sức, đặc biệt khi cần thực hiện một lượng lớn các Test case hoặc khi cần thực hiện kiểm thử thường xuyên. Việc sử dụng kiểm thử thủ công giúp phát hiện các lỗi liên quan đến giao diện người dùng và trải nghiệm người dùng một cách hiệu quả hơn. Việc kết hợp cả hai phương pháp giúp tận dụng ưu điểm của cả hai và giảm thiểu nhược điểm.

5.1. Ưu Điểm Của Việc Kết Hợp Hai Phương Pháp Kiểm Thử Trong Guru99 Bank

Việc kết hợp kiểm thử thủ côngkiểm thử tự động giúp đảm bảo phạm vi kiểm thử đầy đủ, giảm thiểu sai sót, và tăng cường khả năng phát hiện lỗi. Kiểm thử tự động được sử dụng để thực hiện các Test case lặp đi lặp lại và tốn thời gian, trong khi kiểm thử thủ công được sử dụng để khám phá các khu vực mới, kiểm tra giao diện người dùng, và đánh giá trải nghiệm người dùng. Sự kết hợp này giúp tạo ra một quy trình kiểm thử hiệu quả và toàn diện.

5.2. Bài Học Kinh Nghiệm Từ Việc Kiểm Thử New Edit Customer Guru99 Bank

Quá trình kiểm thử New/Edit Customer Guru99 Bank mang lại nhiều bài học kinh nghiệm quý báu. Một trong số đó là tầm quan trọng của việc thiết kế Test case chi tiết và đầy đủ. Việc xác định các trường hợp kiểm thử khác nhau, bao gồm các trường hợp dữ liệu hợp lệ, dữ liệu không hợp lệ, giá trị biên, và các trường hợp đặc biệt, giúp đảm bảo phạm vi kiểm thử đầy đủ và giảm thiểu rủi ro bỏ sót lỗi. Một bài học khác là tầm quan trọng của việc sử dụng các công cụ kiểm thử phù hợp. SeleniumPython là hai công cụ mạnh mẽ giúp tự động hóa kiểm thử và tiết kiệm thời gian và công sức.

5.3. Đề Xuất Cải Tiến Quy Trình Kiểm Thử Guru99 Bank Trong Tương Lai

Để cải thiện quy trình kiểm thử Guru99 Bank trong tương lai, có thể xem xét việc áp dụng các phương pháp kiểm thử tiên tiến hơn, ví dụ: Data Driven Testing (sử dụng dữ liệu từ file để thực hiện các Test case), Keyword Driven Testing (sử dụng các keyword để mô tả các thao tác kiểm thử), và Behavior Driven Development (sử dụng ngôn ngữ tự nhiên để mô tả hành vi của ứng dụng). Cũng cần đầu tư vào việc đào tạo và phát triển kỹ năng cho đội ngũ kiểm thử, để họ có thể sử dụng các công cụ và phương pháp kiểm thử một cách hiệu quả hơn. Cần tăng cường sự hợp tác giữa đội ngũ kiểm thử và đội ngũ phát triển, để các lỗi được sửa chữa một cách nhanh chóng và hiệu quả.

VI. Kết Luận và Hướng Phát Triển Kiểm Thử Guru99 Bank New Edit

Việc kiểm thử chức năng New/Edit Customer trong Guru99 Bank là một quá trình quan trọng để đảm bảo chất lượng và độ tin cậy của ứng dụng. Việc sử dụng cả kiểm thử thủ côngkiểm thử tự động giúp tận dụng ưu điểm của cả hai phương pháp và giảm thiểu nhược điểm. Các bài học kinh nghiệm từ quá trình kiểm thử giúp cải thiện quy trình kiểm thử trong tương lai. Trong tương lai, cần tiếp tục áp dụng các phương pháp kiểm thử tiên tiến hơn và đầu tư vào việc đào tạo và phát triển kỹ năng cho đội ngũ kiểm thử. Cần tiếp tục theo dõi và đánh giá chất lượng của ứng dụng, và thực hiện các biện pháp cần thiết để cải thiện chất lượng một cách liên tục.

6.1. Tóm Tắt Các Kết Quả Đạt Được Trong Quá Trình Kiểm Thử

Trong quá trình thực tập và kiểm thử, nhóm đã nắm vững lý thuyết về kiểm thử, hiểu được tầm quan trọng của kiểm thử, áp dụng lý thuyết để thực hiện kiểm thử thủ côngkiểm thử tự động cho các chức năng của Website Guru99 Bank, nâng cao tinh thần tự học, tìm hiểu kiến thức mới, cải thiện kỹ năng thuyết trình, cải thiện kỹ năng tiếng anh, và nâng cao các kỹ năng mềm. Tuy nhiên, vẫn còn một số hạn chế, ví dụ: các trường hợp kiểm thử chưa đầy đủ, và còn nhiều chức năng chưa được kiểm thử.

6.2. Hướng Phát Triển Kỹ Năng Kiểm Thử Cho Cá Nhân Và Nhóm

Để phát triển kỹ năng kiểm thử cho cá nhân và nhóm, cần tiếp tục rèn luyện để củng cố kiến thức, tìm hiểu sâu hơn về Automation Testing, tham gia các khóa đào tạo chuyên sâu, và tích cực tham gia vào các dự án thực tế. Cần trau dồi các kỹ năng về giao tiếp, làm việc nhóm, và giải quyết vấn đề. Cần tìm hiểu thêm về các ngôn ngữ và framework kiểm thử phổ biến, và xây dựng những kịch bản kiểm thử phức tạp và hiệu quả hơn.

6.3. Đề Xuất Hướng Nghiên Cứu Mới Trong Lĩnh Vực Kiểm Thử Phần Mềm Ngân Hàng

Trong lĩnh vực kiểm thử phần mềm ngân hàng, có thể đề xuất các hướng nghiên cứu mới, ví dụ: Nghiên cứu về kiểm thử bảo mật (Security Testing) để đảm bảo an toàn cho dữ liệu và tài sản của ngân hàng và khách hàng, nghiên cứu về kiểm thử hiệu năng (Performance Testing) để đảm bảo ứng dụng có thể đáp ứng được số lượng lớn người dùng, nghiên cứu về kiểm thử di động (Mobile Testing) để đảm bảo ứng dụng hoạt động tốt trên các thiết bị di động, và nghiên cứu về kiểm thử trí tuệ nhân tạo (AI Testing) để tự động hóa các công việc kiểm thử phức tạp và nâng cao hiệu quả kiểm thử.

20/09/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1. TỔNG QUAN VỀ DOANH NGHIỆP VÀ LÝ THUYẾT VỀ KIỂM THỬ PHẦN MỀM 1. Giới thiệu tổng quát về doanh nghiệp thực tập 1. Tổng quan về TMA Solutions Bình Định Đượ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.

TMA hiệ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). Logo CôngTMA ty TMA Tháng 6 năm 2018, TMA đã mở chi nhánh tại Bình Định. Sau 5 năm, TMA Bình Định đã phát triển nhanh chóng với hơn 600 kỹ sư, trong đó có nhiều kỹ sư đang làm việc tại TP.HCM đã trở về làm việc tại quê hương.

Tháng 8 năm 2018, TMA đã khởi công xây dựng Công viên Sáng tạo TMA Bình Định (TMA Innovation Park – TIP) trên 10 hecta 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. Cơ hội việc làm đối với ngành 1. Mô tả công việc Có nhu cầu tuyển dụng cao: Nghề nghiệp ổn định, khi theo nghề tester sẽ thường xuyên được cập nhật những công việc mới và được tiếp xúc với các dự án khác nhau. 2 Nghề Tester không có tuổi: Có thể thấy rằng đối với nghề lập trình sự nhạy bén của tuổi trẻ rất quan trọng, tuy nhiên đối với nghề Tester thì kinh nghiệm đã được tích lũy nhiều năm mới là điều quan trọng nhất.

Nếu như một người Tester giỏi tiếng anh thì lại càng có nhiều cơ hội để làm ở các công ty phần mềm lớn với các dự án outsourcing của nước ngoài với mức lương rất cao. Mô tả vị trí việc làm: - Chuyên viên Tester phần mềm: ● Phân tích yêu cầu dự án phần mềm, lập kế hoạch test và thiết kế kịch bản test, chuẩn bị, dữ liệu test. ● Test các dự án phần mềm, phối hợp với các bộ phận liên quan để đảm bảo chất lượng dự án/sản phẩm. ● Quản lý, phân tích, theo dõi và báo cáo kết quả test.

- Manual Test: ● Xây dựng các Test Case và kịch bản Test phù hợp. ● Lưu trữ tài liệu Test theo từng dự án. ● Xây dựng tài liệu và đào tạo người dùng cuối. ● Tham gia vào việc hỗ trợ người dùng trong quá trình sử dụng phần mềm.

● Kiểm tra, giám sát kết quả các tiến trình thực hiện dự án được phân công hỗ trợ. - Nhân viên kiểm thử phần mềm QC: ● Viết Test Case và Test Plan, tạo môi trường kiểm thử. ● Thực hiện Test Case theo đúng yêu cầu thiết kế. ● Thực hiện kiểm thử thủ công và tự động.

● Viết báo cáo kết quả kiểm thử và báo cáo hằng ngày. ● Chịu trách nhiệm theo dõi lỗi. - Nhân viên kiểm thử phần mềm QA: 3 ● Lập kế hoạch kiểm thử ứng dụng web, app dựa trên kế hoạch phát triển của dự án. ● Viết kịch bản kiểm thử theo tài liệu phân tích yêu cầu và tài liệu thiết kế.

● Thực hiện kiểm thử theo tính năng, hiệu năng của sản phẩm. ● Tái tạo lỗi, kiểm soát lỗi, theo dõi kết quả kiểm thử để đảm bảo chất lượng của dự án. ● Viết tài liệu hướng dẫn sử dụng phần mềm. Các kỹ năng cần có của một tester - Kỹ năng phân tích - Kỹ năng học hỏi nhanh - Chi tiết, tỉ mỉ, cẩn thận, kiên trì - Kỹ năng giao tiếp - Tiếng Anh, ngoại ngữ tốt là một ưu thế - Nên có tính “support” 1.

Mức lương dành cho Fresher Tester Fresher Tester là những nhân viên mới, chưa có kinh nghiệm và kiến thức chuyên môn sâu rộng. Họ cần được đào tạo, training trong quá trình làm việc. Lương Fresher Tester non trẻ này dao động từ 4.000 đồng, với Tester cứng kinh nghiệm từ 4-6 năm mức lương có thể lên đến 12-15tr. Cơ hội thăng tiến 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ác level 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.

4 • Level 2: Junior - Ở level junior, là những người đã có nhiều kiến thức, kinh nghiệm và trình độ chuyên môn tốt. Họ có thể giải quyết các Test Case phức tạo, có sự chủ động và sáng tạo trong công việc. • Level 3: Senior - Đây là những chuyên gia thành thạo về kỹ thuật testing, nắm rõ các yê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ài chính, sức khỏe, thương mại điện tử, …. • Level 4: Test Leader - 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ệc cần được thực hiện và phân công nhiệm vụ cụ thể cho các Tester trong team dự án. • 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, Test Manager 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à kinh nghiệm ở level 4, bạn có thêm các hướng đi mới như: trở thành BA (Business Analyst) hoặc PM (Project Manager).

Đây đều là các hướng phát triển rất tiềm năng cho các bạn Tester. Cơ sở lý thuyết về kiểm thử phần mềm 1. Tổng quan về kiểm thử phần mềm 1. Khái niệm Kiểm thử phần mềm là quá trình thực thi một chương trình với mục đích tìm ra lỗi, để xem chương trình có khớp với yêu cầu của khách hàng nhằm đánh giá được chất lượng sản phẩm.

Bảy nguyên tắc của kiểm thử • Kiểm thử chứng minh sự hiện diện của lỗi • Kiểm thử toàn bộ là không thể • Kiểm thử càng sớm càng tốt 5 • Sự phân bố tập trung của lỗi • Nguyên lý thuốc trừ sâu • Kiểm thử phụ thuộc vào ngữ cảnh • Sự vắng mặt của lỗi 1. 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ện theo cách có hệ thống và có kế hoạch. STLC bao gồm 6 giai đoạn: • Requirement Analysis – Phân tích yêu cầu • Test Planning – Lên kế hoạch kiểm thử • Test Case Development – Phát triển các Test Case • Environment Setup – Tiến hành cài đặt môi trường để thử nghiệm • Test Execution – Thực thi các Test Case • Test Cycle Closure – Kết thúc chu kỳ kiểm thử 1. Vòng đời phát triển phần mềm (SDLC) 1.

Khái niệm Vòng đời phát triển phần mềm (SDLC) là quy trình tiết kiệm chi phí và thời gian mà các nhóm phát triển sử dụng để thiết kế và xây dựng phần mềm chất lượng cao. Mục tiêu của SDLC là giảm thiểu rủi ro dự án thông qua việc lên kế hoạch trước để phần mềm đáp ứng kỳ vọng của khách hàng trong quá trình sản xuất và sau đó. Giai đoạn của vòng đời phát triển phần mềm Giai đoạn của vòng đời phát triển phần mềm bao gồm 6 giai đoạn: • Requirement gathering and analysis – Thu thập và phân tích yêu cầu • Design – Thiết kế kiến trúc hệ thống • Implementation / Coding – Phát triển phần mềm • Testing – Kiểm thử • Deployment – Triển khai • Maintenance – Bảo trì 6 1. Các mô hình cơ bản của SDLC Waterfall Model Hình 1.

Mô hình Waterfall Mô hình Waterfall hay còn gọi là mô hình thác nước. Đây là mô hình đầu tiên của SDLC – mô hình Waterfall là một phương pháp quản lý dự án dựa trên quy trình thiết kế tuần tự và liên tiếp. Agile Model Hình 1. Mô hình Agile 7 Mô hình Agile đề cập đến cách tiếp cận phát triển phần mềm dựa trên phát triển lặp đi lặp lại.

Các phương pháp Agile chia các nhiệm vụ thành nhiều lần lặp lại nhỏ hơn hoặc các phần không liên quan trực tiếp đến việc lập kế hoạch dài hạn. Phạm vi và yêu cầu của dự án được đặt ra khi bắt đầu quá trình phát triển. Các kế hoạch về số lần lặp, thời lượng và phạm vi của mỗi lần lặp đều được xác định trước rõ ràng. Scrum Methodology Hình 1.

Phương pháp Scrum Scrum là một quy trình phát triển nhanh tập trung chủ yếu vào các cách quản lý nhiệm vụ trong điều kiện phát triển dựa trên nhóm. Ba vai trò trong Scrum: • Product Owner: Là người tập hợp các task, quyết định độ ưu tiên task nào làm trước, task nào làm sau. • Scrum Master: Là người giúp cho team làm việc tốt nhất và bảo vệ team khi có vấn đề xảy ra. • Develop Team: Bao gồm developer, tester,.

Những người này có thể làm việc của người khác. 8 Ba cuộc họp trong Scrum: • Sprint Meeting: là cuộc họp để bàn bạc về những task sẽ bỏ vào sprint backlog, estimation cho những task đó. Cuộc họp này được tổ chức trước khi bắt đầu một sprint. • Daily Meeting: là cuộc họp với mục đích đồng bộ hóa các tin tức của mọi người trong team.

Họ sẽ chia sẻ với nhau về những câu hỏi như là Hôm qua đã làm gì? Hôm nay làm được gì? Có gặp khó khăn gì trong task mình làm không? • Sprint Review/ Retrospective: Sprint Review nhằm để demo những task đã hoàn thành trong Sprint Backlog cho Product Owner. Còn Retrospective là cuộc họp để team ngồi lại với nhau chia sẻ cho nhau những cái đã làm tốt trong Sprint đó, những cái chưa tốt để cải thiện quy trình làm việc. Quy trình vận hành của Srcum: • Product Backlog: Chứa tất cả task cần làm, tất cả thông tin liên quan mà Product Owner lấy được. • User Stories: Là sự hiển thị của 1 task nào đó.

• Sprint Backlog: Sẽ chứa các user stories của một sprint. • Burndown Chart: Dùng để đánh giá một sprint làm việc như thế nào, có đạt được những gì mong muốn không. Kanban Methodology Hình 1. Phương pháp Kanban 9 Mô hình Kanban là một phương pháp quản lý công việc và dự án dựa trên việc hình dung và điều khiển quy trình làm việc bằng các thẻ Kanban.

Mỗi thẻ Kanban đại diện cho một công việc cụ thể và được đặt trên một bảng Kanban, chia thành các cột tương ứng với các trạng thái của công việc bao gồm những việc cần làm, những việc đang làm và công việc hoàn thành. Các loại kiểm thử 1. Manual Testing Kiểm thử thủ công bao gồm kiểm tra phần mềm theo cách thủ công, tức là không sử dụng bất kỳ công cụ tự động nào hoặc bất kỳ tập lệnh nào.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ