Tải bản đầy đủ (.docx) (170 trang)

Kiểm thử phần mềm trên website dự án the guru99 bank

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (458.93 KB, 170 trang )

<span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>LỜI CẢM ƠN</b>

<i>Để hoàn thành đồ án kết thúc môn học Kiểm thử phần mềm với đề tài “Kiểm thử</i>

<i>phần mềm trên website dự án The Guru99 Bank”, chúng em xin chân thành cảm ơn và</i>

biết ơn sâu sắc đến Thạc sĩ Đinh Nguyễn Thúy Nguyệt – Giảng viên Bộ môn Kiểm thử phần mềm đã tận tình hướng dẫn, chỉ bảo và giúp đỡ chúng em trong quá trình thực hiện bài đồ án này.

Tuy nhiên, do sự hiểu biết cũng như kinh nghiệm về kiểm thử phần mềm của chúng em còn hạn chế. Chúng em rất mong sẽ được cô quan tâm và đóng góp ý kiến để chúng em hồn thiện tốt hơn cho các bài báo cáo, đồ án và nghiên cứu tiếp theo của mình.

Chúng em xin kính chúc Giảng viên phụ trách học phần – Thạc sĩ Đinh Nguyễn Thúy Nguyệt, cùng với giảng viên tham gia chấm điểm đồ án môn học này lời chúc sức khỏe và hạnh phúc nhất.

Chúng em xin chân thành cảm ơn!

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>NHẬN XÉT VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN 1</b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>NHẬN XÉT VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN 2</b>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>DANH MỤC THUẬT NGỮ ANH - VIỆT</b>

Kiểm thử phi chức năng Kiểm tra khói

Kiểm tra hồi quy Kiểm tra năng suất Kiểm tra tải

Bài kiểm tra về áp lực Kiểm tra khả năng sử dụng Kiểm tra bảo mật

Kiểm tra cài đặt

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Bảng 2.1. Đặc tả yêu cầu nghiệp vụ...11

Bảng 3.1. Danh sách Test case...19

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>MỤC LỤC</b>

<b>LỜI CẢM ƠN...i</b>

<b>NHẬN XÉT VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN 1...ii</b>

<b>NHẬN XÉT VÀ ĐÁNH GIÁ CỦA GIẢNG VIÊN 2...iii</b>

<b>DANH MỤC TỪ VIẾT TẮT...iv</b>

<b>DANH MỤC THUẬT NGỮ ANH - VIỆT...v</b>

<b>DANH MỤC BẢNG...vii</b>

<b>MỤC LỤC...viii</b>

<b>CHƯƠNG 1: TỔNG QUAN KIỂM THỬ...1</b>

<b>1.1. Khái niệm, vai trò kiểm thử phần mềm...1</b>

1.1.1. Khái niệm kiểm thử phần mềm...1

1.1.2. Vai trò kiểm thử phần mềm...2

<b>1.2. Các nguyên tắc kiểm thử phần mềm...3</b>

<b>1.3. Các mức độ kiểm thử phần mềm...4</b>

1.3.1. Kiểm thử đơn vị (Unit Testing)...4

1.3.2. Kiểm thử tích hợp (Integration Testing)...5

1.3.3. Kiểm thử hệ thống (System Testing)...5

1.3.4. Kiểm thử chấp nhận (Acceptance Testing)...6

<b>1.4. Một số loại kiểm thử phần mềm...6</b>

<b>CHƯƠNG 2: GIỚI THIỆU ỨNG DỤNG KIỂM THỬ...10</b>

<b>2.1. Tổng quan về ứng dụng...10</b>

2.1.1. Overview...10

2.1.2. Purpose...10

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

2.1.3. Scope...10

2.1.4. Definitions, Acronyms, and Abbreviations...10

<b>2.2. Đặc tả yêu cầu nghiệp vụ...11</b>

2.2.1. Technical Requirements...13

2.2.2. Functional validations:...17

<b>CHƯƠNG 3: DANH SÁCH TEST CASE...19</b>

<b>CHƯƠNG 4: DANH SÁCH BUG...104</b>

<b>CHƯƠNG 5: KẾT LUẬN...170</b>

<b>5.1. Test Case List...170</b>

<b>5.2. Bug Status...170</b>

<b>5.3. Team Statistic...170</b>

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>CHƯƠNG 1: TỔNG QUAN KIỂM THỬ</b>

<b>1.1. Khái niệm, vai trò kiểm thử phần mềm 1.1.1.Khái niệm kiểm thử phần mềm</b>

Kiểm thử phần mềm (Software testing) là hoạt động đánh giá phần mềm và các thành phần của nó nhằm đảm bảo phần mềm đáp ứng được các yêu cầu mong đợi.

Theo ISTQB (International Software Testing Qualifications Board), kiểm thử phần mềm là quy trình bao gồm tất cả các hoạt động từ lập kế hoạch, chuẩn bị, đánh giá hệ thống và những công việc liên quan khác để xác định hệ thống thỏa mãn yêu cầu.

Mục tiêu của kiểm thử phần mềm:

+ Để tìm ra các lỗi (defect) và các hỏng hóc (failure) của sản phẩm, qua đó giảm mức độ rủi ro của chất lượng phần mềm.

+ Để xác minh (verify) tất cả các yêu cầu đã được đáp ứng.

+ Để kiểm tra sản phẩm đã hoàn chỉnh và xác thực (validate) nếu sản phẩm hoạt động như người dùng cuối mong đợi.

+ Để xây dựng sự tự tin về mức độ chất lượng của sản phẩm.

+ Để cung cấp đầy đủ thông tin cho các bên liên quan giúp họ đưa ra quyết định, đặc biệt là về mức độ chất lượng của phần mềm.

+ Để tuân thủ các yêu cầu theo hợp đồng, pháp luật hoặc theo quy định và xác minh sự tuân thủ của sản phẩm với các yêu cầu/ tiêu chuẩn đó.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b> 1.1.2.Vai trò kiểm thử phần mềm</b>

+ Giúp tiết kiệm tiền bảo trì: Kiểm thử phần mềm giúp phát hiện các lỗi trước khi phần mềm được triển khai và sử dụng, giúp giảm thiểu sự cố và lỗi trong quá trình sử dụng phần mềm. Việc phát hiện lỗi sớm sẽ giúp tiết kiệm chi phí bảo trì sau này.

+ Bảo mật: Kiểm thử phần mềm cũng giúp đảm bảo tính bảo mật của phần mềm. Bằng cách kiểm tra các lỗ hổng bảo mật, các nhà phát triển có thể khắc phục các lỗi này và giảm thiểu nguy cơ bị tấn cơng từ hacker.

+ Sự hài lịng của khách hàng: Kiểm thử phần mềm giúp đảm bảo rằng phần mềm đáp ứng được các yêu cầu và mong đợi của khách hàng. Việc kiểm thử phần mềm đầy đủ sẽ giúp đảm bảo tính ổn định, đáp ứng các tiêu chuẩn và chuẩn mực chất lượng và giúp khách hàng hài lịng với sản phẩm.

+ Tăng cường q trình phát triển: Kiểm thử phần mềm giúp tăng tốc độ phát triển sản phẩm bằng cách giúp định vị và giải quyết các vấn đề ngay từ đầu, giảm thiểu thời gian cần thiết cho các lần sửa lỗi sau này và đảm bảo tính ổn định của sản phẩm.

+ Dễ dàng trong khi thêm các tính năng mới: Nếu một phần mềm đã được kiểm thử đầy đủ, việc thêm các tính năng mới sẽ dễ dàng hơn vì các lỗi có thể được phát hiện và sửa chữa nhanh chóng. Việc thêm tính năng mới cũng khơng ảnh hưởng đến các tính năng hiện có trong phần mềm.

+ Xác định hiệu suất của phần mềm: Kiểm thử phần mềm cũng giúp đánh giá hiệu suất của phần mềm, bao gồm tốc độ, độ chính xác và khả năng phục hồi khi có sự cố. Các kết quả của quá trình kiểm thử sẽ giúp các nhà phát triển hiểu rõ hơn về cách cải thiện hiệu suất của phần mềm để đáp ứng được nhu cầu của người dùng.

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>1.2. Các nguyên tắc kiểm thử phần mềm</b>

Các nguyên tắc kiểm thử phần mềm được đưa ra để giúp các nhà phát triển phần mềm đảm bảo chất lượng sản phẩm của mình. Có 7 ngun tắc kiểm thử phần mềm được đưa ra bởi ISTQB CTFL:

 <b>Kiểm thử chỉ ra sự hiện diện của lỗi (Testing shows presence of defects):</b>

Kiểm thử phần mềm nhằm phát hiện ra các lỗi, khi thực hiện kiểm thử, các lỗi có thể được phát hiện ra. Tuy nhiên, kiểm thử khơng thể bảo đảm rằng khơng có lỗi tồn tại trong phần mềm. Nguyên tắc này cho thấy rằng mục tiêu của kiểm thử là chỉ ra sự hiện diện của các lỗi, không phải là chứng minh phần mềm khơng có lỗi.

 <b>Kiểm thử tồn bộ là khơng thể (Exhaustive testing is not possible):</b>

Kiểm thử toàn bộ là khơng thể thực hiện trong phần mềm, bởi vì số lượng các trường hợp kiểm thử có thể là vơ hạn. Việc kiểm thử tồn bộ có thể tốn nhiều thời gian, tài ngun và kinh phí. Vì vậy, ngun tắc này khuyến khích người kiểm thử tập trung vào những trường hợp quan trọng và có khả năng gây ra lỗi.

 <b>Nên thực hiện kiểm thử càng sớm càng tốt (Early testing):</b>

Kiểm thử nên được thực hiện ngay từ khi bắt đầu quá trình phát triển phần mềm, ngay cả trong giai đoạn thiết kế. Việc kiểm thử sớm giúp phát hiện các lỗi sớm, giảm thiểu chi phí và thời gian sửa chữa lỗi sau này.

 <b>Lỗi thường được phân bố tập trung (Defect clustering):</b>

Các lỗi trong phần mềm thường không được phân bố đều, mà thường tập trung trong một số khu vực cụ thể. Nguyên tắc này cho thấy rằng kiểm thử nên tập trung vào những khu vực này để tăng khả năng phát hiện lỗi.

 <b>Nghịch lý thuốc trừ sâu (Pesticide paradox):</b>

Nguyên tắc này cho thấy rằng, nếu chúng ta tiếp tục sử dụng cùng một kỹ thuật kiểm thử lâu dài, các lỗi mới sẽ không được phát hiện ra. Tương tự như việc sử dụng

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

thuốc trừ sâu trong nông nghiệp, nếu chúng ta tiếp tục sử dụng cùng một loại thuốc, sâu bọ sẽ trở nên miễn dịch với thuốc đó.

 <b>Kiểm thử phụ thuộc vào ngữ cảnh (Testing is context dependent):</b>

Nguyên tắc này cho thấy rằng kiểm thử phụ thuộc vào ngữ cảnh của phần mềm. Điều này bao gồm mơi trường, người dùng, mục đích và các yêu cầu khác. Kiểm thử phải được thiết kế để đáp ứng các yêu cầu của ngữ cảnh cụ thể đó.

 <b>Quan niệm sai lầm về việc hết lỗi (Absence of errors fallacy):</b>

Nguyên tắc này cho thấy rằng quan niệm rằng phần mềm khơng có lỗi sau khi kiểm thử khơng đồng nghĩa với việc phần mềm là hồn hảo. Các lỗi có thể vẫn tồn tại trong phần mềm nhưng chưa được phát hiện ra. Vì vậy, kiểm thử khơng phải là phương tiện chính để đảm bảo tính đúng đắn của phần mềm, mà chỉ là một phương tiện để giảm thiểu các lỗi có thể xảy ra.

<b>1.3. Các mức độ kiểm thử phần mềm</b>

<b> 1.3.1.Kiểm thử đơn vị (Unit Testing)</b>

Đây là mức độ kiểm thử nhỏ nhất, được thực hiện trên các đơn vị code như hàm, class, module hay một phần mềm con. Mục đích của kiểm thử đơn vị là đảm bảo rằng các đơn vị code hoạt động đúng và đáp ứng các yêu cầu chức năng và phi chức năng của chúng.

- Người kiểm thử sẽ phải có hiểu biết về chương trình, các hàm. - Kiểm thử đơn vị do lập trình viên thực hiện.

<b> 1.3.2.Kiểm thử tích hợp (Integration Testing)</b>

Kiểm thử tích hợp là kiểm tra việc kết hợp các module riêng lẻ lại với nhau có gây ra lỗi hay khơng.

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Mục đích kiểm thử tích hợp là nhằm phát hiện ra lỗi giao tiếp giữa các đơn vị (unit), tích hợp các thành phần riêng lẻ thành các hệ thống nhỏ, và cuối cùng là một hệ thống hoàn chỉnh để chuẩn bị sẵn sàng cho bước kiểm thử hệ thống.

Một số phương pháp tiếp cận kiểm thử tích hợp:

+ Bottom-up:Phương pháp Bottom-up bắt đầu từ kiểm thử các thành phần nhỏ và sau đó kết hợp các thành phần này để tạo ra các phần mềm lớn hơn. Các thành phần được kiểm thử riêng lẻ và sau đó kết hợp với nhau theo một cấu trúc cây để tạo ra một hệ thống hoàn chỉnh. Phương pháp này giúp tối ưu hóa kiểm thử các thành phần và đồng thời tạo ra các kết quả kiểm thử cho từng thành phần riêng lẻ.

+ Top-down: Phương pháp Top-down bắt đầu từ kiểm thử phần mềm nguyên thủy (hay còn gọi là phần mềm cấp cao nhất) và sau đó kết hợp các thành phần nhỏ hơn cho đến khi kiểm thử tất cả các thành phần. Phương pháp này giúp xác định các lỗi ở các cấp độ cao hơn của hệ thống và tối ưu hóa việc kiểm thử các thành phần của phần mềm.

+ Big Bang: Phương pháp Big Bang là phương pháp kiểm thử đột ngột và kiểm thử toàn bộ hệ thống một lần, bao gồm cả các thành phần lẫn các giao diện giữa chúng. Phương pháp này có thể tối ưu hóa thời gian kiểm thử, tuy nhiên nó có thể gây ra nhiều rủi ro và khó kiểm sốt lỗi. Phương pháp này thường được sử dụng trong các dự án phần mềm nhỏ hoặc trong các trường hợp khẩn cấp.

<b> 1.3.3.Kiểm thử hệ thống (System Testing)</b>

Kiểm thử hệ thống là kiểm thử một hệ thống đã được tích hợp hoàn chỉnh để đảm bảo rằng hệ thống đáp ứng các đặc điểm kỹ thuật và mục đích của nó.

Kiểm thử hệ thống thực hiện việc kiểm tra chức năng và phi chức năng của hệ thống.

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<b> 1.3.4.Kiểm thử chấp nhận (Acceptance Testing)</b>

Phần mềm được kiểm tra từ người dùng để đảm bảo phần mềm phù hợp với sự mong đợi của họ. Sản phẩm nhận được sự chấp nhận từ khách hàng, những người dùng cuối.

Có 2 loại kiểm thử chấp nhận đó là kiểm thử Alpha và kiểm thử Beta.

+ Kiểm thử Alpha: là loại kiểm thử nội bộ. Phần mềm được kiểm thử tại nơi sản xuất phần mềm để xác định tất cả các vấn đề/ lỗi có thể xảy ra trước khi phát hành sản phẩm đến tay người dùng.

+ Kiểm thử Beta: thực hiện sau kiểm thử Alpha. Khách hàng thực hiện kiểm thử ở chính mơi trường của họ. Công ty thu thập phản hồi của người dùng cuối trong bản phát hành này gửi lại cho lập trình viên để sửa chữa.

<b>1.4. Một sớ loại kiểm thử phần mềm </b>

 <b>Functional testing (Kiểm thử chức năng): </b>

- Khái niệm: Là loại kiểm thử nhằm đảm bảo các hành vi của hệ thống thỏa mãn các yêu cầu đặc tả chức năng. Nó được dung để xác minh rằng phần mềm đang tạo đầu ra như mong đợi của người dùng cuối.

- Mục tiêu: Tập trung vào các chức năng của phần mềm. Các chức năng được test bằng cách nhập vào các giá trị nhập và kiểm tra kết quả đầu ra, mà ít quan tâm đến cấu trúc bên trong của ứng dụng.

 <b>Non-functional testing (Kiểm thử phi chức năng): </b>

- Khái niệm: Là loại kiểm thử tập trung vào các thuộc tính hoặc các đặc điểm phi chức năng của hệ thống phần mềm như hiệu suất (performance), khả năng sử dụng (usability), bảo mật (security), quản lý tải (load management), khả năng mở rộng (scalability), khả năng tương thích (compatibility)…

- Mục tiêu: Tập trung vào việc hệ thống làm việc tốt như thế nào và hoạt động như thế nào trong các điều kiện nhất định.

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

 <b>Smoke Testing: </b>

- Khái niệm: Là loại kiểm thử bao gồm bộ thử nghiệm không đầy đủ, tập trung vào các chức năng chính nhằm đảm bảo các chức năng quan trọng nhất của ứng dụng hoạt động tốt.

- Mục tiêu: Quyết định một bản build có đủ ổn định để tiến hành các kiểm thử khác không.

 <b>Regression Testing: </b>

- Khái niệm: Là quá trình kiểm tra lại phần mềm sau khi có sự thay đổi xảy ra như sửa lỗi, thêm tính năng, cải tiến, cập nhật phiên bản…

- Mục tiêu: Nhằm đảm bảo các thay đổi không làm ảnh hưởng đến sự ổn định và bền vững của phần mềm trước đó.

 <b>Performance Testing: </b>

- Khái niệm: Là kiểm thử được sử dụng để xác định hệ thống làm việc hiệu quả và nhanh như thế nào khi đặt dưới khối lượng công việc cụ thể. Kiểm tra tốc độ, thời gian phản hồi, độ ổn định, khả năng mở rộng và mức sử dụng tài nguyên của ứng dụng.

- Mục tiêu: Xác định và loại bỏ các tắc nghẽn hiệu suất của ứng dụng.  <b>Load Testing: </b>

- Khái niệm: Là kiểm thử được thực hiện để xác định ứng xử của hệ thống trong điều kiện tải bình thường và điều kiện tải cao hơn dự kiến như có nhiều user truy cập cùng lúc, có nhiều giao dịch cùng một lúc, xử lý file rất lớn, xử lý cùng lúc nhiều file…

- Mục tiêu: Xác định khả năng hoạt động tối đa của phần mềm, số lượng người dung tối đa có thể đăng nhập cùng lúc, tính bền vững ở những thời điểm cao điểm.

 <b>Stress Testing:</b>

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

- Khái niệm: Là loại kiểm thử kiểm tra hệ thống ở trạng thái vận hành trong điều kiện bất thường như trường hợp thiếu bộ nhớ, kết nối mạng bị ngắt khi đang vận hành, kết nối cơ sở dữ liệu bị ngắt khi đang vận hành…

- Mục tiêu: Nhằm đảm bảo rằng khi hoạt động trong điều kiện bất thường hay tại các điểm chết thì hệ thống vẫn chạy ổn định, không bị crash…

 <b>Usability Testing:</b>

- Khái niệm: Là việc đánh giá khả năng sử dụng sản phẩm đứng trên quan điểm người dùng là trung tâm để xác nhận sản phẩm có linh hoạt, dễ sử dụng hay thân thiện với người dùng hay không.

- Mục tiêu: Kiểm tra các khía cạnh của sản phẩm như: nội dung trình bày, font chữ, màu sắc, trình tự các thao tác, lỗi liên kết …

 <b>Security Testing:</b>

- Khái niệm: Là loại kiểm thử phần mềm nhằm đảm bảo tính tồn vẹn, bảo mật của dữ liệu và của hệ thống, chống lại các hành động không lường trước được, khiến cho ứng dụng ngừng hoạt động hoặc bị khai thác.

- Mục tiêu: Phát hiện ra các lỗ hổng, điểm yếu, các mối đe dọa trong hệ thống dẫn đến sự xâm nhập, làm rị rỉ thơng tin của tổ chức, gây ra tổn thất về an toàn bảo mật.

 <b>Installation Testing:</b>

- Khái niệm: Kiểm thử cài đặt xoay quanh các vấn đề cài đặt, tháo gỡ ứng dụng trên các môi trường khác nhau. Kiểm thử các bước thực hiện cài đặt dựa trên tài liệu hướng dẫn cài đặt, chứng minh tài liệu hướng dẫn cài đặt đã chính xác và quy chuẩn để chuyển giao cho khách hàng.

- Mục tiêu: Xác minh xem phần mềm đã được cài đặt với tất cả các thành phần cần thiết hay chưa và ứng dụng có hoạt động như mong đợi hay không.

 <b>Migration Testing:</b>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

- Khái niệm: Là kiểm thử được thực hiện nhằm đảm bảo vẫn hệ thống hoạt động tốt, không gặp sự cố sau khi phần mềm được di chuyển từ cơ sở hạ tầng cũ sang cơ sở hạ tầng mới

- Mục tiêu: Xác minh việc di chuyển khơng có bất kỳ sự gián đoạn nào, thời gian chết tối thiểu, không mất dữ liệu, đảm bảo được tính toàn vẹn dữ liệu. Các khía cạnh chức năng và phi chức năng cụ thể của ứng dụng đều được đáp ứng sau khi di chuyển

 <b>Ad-hoc Testing:</b>

- Khái niệm: Là kỹ thuật kiểm thử mà không theo cách thông thường, không theo kế hoạch và tài liệu hướng dẫn

- Mục tiêu: Tìm ra các lỗi, sự cố hoặc vấn đề có thể xảy ra trong phần mềm một cách nhanh chóng và hiệu quả. Phương pháp này có thể giúp tìm ra các lỗi khơng được dự kiến hoặc không được kiểm tra trong các kế hoạch kiểm thử cụ thể.

 <b>Exploratory Testing:</b>

- Khái niệm: Là hướng tiếp cận mà quá trình thiết kế và kiểm thử được thực hiện đồng thời. Các trường hợp kiểm thử không được tạo ra ban đầu mà được phát sinh, điều chỉnh trong quá trình thực hiện.

- Mục tiêu: Tìm ra các lỗi, sự cố hoặc vấn đề trong phần mềm một cách nhanh chóng và hiệu quả. Phương pháp này cho phép kiểm thử viên tập trung vào việc tìm kiếm lỗi thay vì dành nhiều thời gian cho việc lập kế hoạch kiểm thử trước.

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

<b>CHƯƠNG 2: GIỚI THIỆU ỨNG DỤNG KIỂM THỬ</b>

<b>2.1. Tổng quan về ứng dụng 2.1.1.Overview</b>

The Guru99 Bank project aims to provide net banking facilities to its customers. This release will have limited features. Over a period of time, new and new functionalities will be added to the site.

The Purpose of this document is to outline the requirements for the Guru99 Banking website to be developed for Guru99 Tech. Pvt. Ltd. This document will be used by all stakeholders including developers and testers.

<b> 2.1.3.Scope</b>

- The scope of this project is limited to the testing of the features described in the succeeding sections of this document.

- Non-functional testing like stress, performance is beyond scope of this project. - Automation testing is beyond scope.

- Functional testing & external interfaces are in scope and need to be tested. - The banking site will be only compatible with Chrome version 27 and above.

<b> 2.1.4.Definitions, Acronyms, and Abbreviations</b>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

<b>2.2.Đặc tả yêu cầu nghiệp vụ </b>

The Guru99 Bank will have 2 roles: 1. Manager

2. Customer

 <b>Following features/modules will be available to these 2 different roles:<small>Bảng 2.1. Đặc tả yêu cầu nghiệp vụ</small></b>

Delete Account Login & Logout Login & Logout

 <b>Description of the modules:</b>

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<b>Module Name<sup>Applicabl</sup><sub>e Roles</sub>Description</b>

Balance Enquiry <sup>Manager </sup> Customer

<b>Customer: A customer can have multiple bank</b>

accounts. He can view the balance of his accounts only.

<b>Manager: A manager can view balance of all the</b>

customers who come under his supervision.

Fund Transfer <sup>Manager </sup> Customer

<b>Customer: A customer can have transfer funds</b>

from his “own” account to any destination account.

<b>Manager: A manager can transfer funds from any</b>

source bank account to destination account.

Mini Statement <sup>Manager </sup> Customer

A Mini statement will show last 5 transactions of an account.

<b>Customer: A customer can see mini - statement of</b>

only his “own” accounts.

<b>Manager: A manager can see mini - statement of</b>

A customized statement allows you to filter and display transactions in an account based on date and transaction value.

<b>Customer: A customer can see Customized </b>

-statement of only his “own” accounts.

<b>Manager: A manager can see Customized </b>

-statement of any account. Change

Password

Manager Customer

<b>Customer: A customer can change password of</b>

only his account.

<b>Manager: A manager can change password of only</b>

his account. He cannot change password of his customers.

New Customer Manager <b>Manager: A manager can add a new customer.</b>

Manager <b>Manager: A manager can edit details like address,</b>

email, telephone of a customer.

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

New Account Manager Currently system provides 2 types of accounts: + Saving.

+ Current.

A customer can have multiple saving accounts (one in his name, other in a joint name etc). He can have multiple current accounts for different

Edit Account Manager <b>Manager: A manager can add an edit account</b>

details for an existing account.

Delete Account Manager <b>Manager: A manager can add or delete an account</b>

for a customer. Delete

Customer <sup>Manager </sup> <sup>A customer can be deleted only if he/she has no</sup>active current or saving accounts.

<b>Manager: A manager can delete a customer.</b>

Deposit Manager <b>Manager: A manager can deposit money into any</b>

account. Usually done when cash is deposited at a bank branch.

Withdrawal Manager <b>Manager: A manager can withdraw money from</b>

any account. Usually done when cash is withdrawn at a bank branch.

 <b>New Account:</b>

TC – 001: Customer Id - Customer ID is required.

TC – 002: Customer Id - Special characters are not allowed. TC – 003: Customer Id - Characters are not allowed.

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

TC – 004: Customer Id – The first character cannot have space.  <b>New Customer:</b>

TC – 005: Customer Name – Numbers are not allowed.

TC – 006: Customer Name – Special characters are not allowed. TC – 007: Customer Name - Customer name must not be blank. TC – 008: Customer Name – The first character cannot have space. TC – 009: Address - Address Field must not be blank.

TC – 010: Address – The first character cannot have space. TC – 011: Address - Special characters are not allowed. TC – 012: City - Special characters are not allowed. TC – 013: City - City Field must not be blank. TC – 014: City – Numbers are not allowed.

TC – 015: City – The first character cannot have space. TC – 016: State – Numbers are not allowed.

TC – 017: State - State must not be blank.

TC – 018: State – Special characters are not allowed.

<b>TC – 019: State – First character cannot have space.</b>

TC – 020: Pin - Characters are not allowed. TC – 021: Pin - PIN Code must not be blank. TC – 022: Pin – Special characters are not allowed.

TC – 023: Pin – PIN Code more than 6 Digits not allowed. TC – 024: Pin – PIN Code less than 6 Digits.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

TC – 025: Pin - First character cannot have space.

TC – 026: Telephone Number – Mobiles no must not be blank. TC – 027: Telephone Number – Special characters are not allowed. TC – 028: Telephone Number – Characters are not allowed.

TC – 029: Telephone Number - First characters cannot have space. TC – 030: Email - Email ID must not be blank.

TC – 031: Email - Email ID is not valid.

TC – 032: Email - First character cannot have space.  <b>Delete Account Form:</b>

TC – 033: Account No must not be blank. TC – 024: Special characters are not allowed. TC – 035: Characters are not allowed.

 <b>Delete Customer:</b>

TC – 036: Customer Id - Customer ID is required.

TC – 037: Customer Id - Special characters are not allowed. TC – 038: Customer Id - Characters are not allowed.

TC – 039: Customer Id - First character cannot have space.  <b>Edit Account:</b>

TC – 041: Account No must not be blank. TC – 042: Special characters are not allowed. TC – 043: Characters are not allowed.

TC – 044: First character cannot have space.

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

 <b>Edit Customer form:</b>

TC – 045: Customer Id - Customer ID is required.

TC – 046: Customer Id - Special characters are not allowed. TC – 047: Customer Id - Characters are not allowed.

TC – 048: Customer Id - First character cannot have space.  <b>Edit Customer:</b>

TC – 049: Address - Address Field must not be blank. TC – 050: Address - First character cannot have space. TC – 051: Address - Special characters are not allowed. TC – 052: City - Special characters are not allowed. TC – 053: City - City Field must not be blank. TC – 054: City – Numbers are not allowed.

TC – 055: City - First character cannot have space. TC – 056: State – Numbers are not allowed. TC – 057: State - State must not be blank.

TC – 058: State – Special characters are not allowed. TC – 059: State – First character cannot have space. TC – 060: Pin - Characters are not allowed.

TC – 061: Pin - PIN Code must not be blank. TC – 062: Pin – Special characters are not allowed. TC – 063: Pin – PIN Code must have 6 Digits. TC – 064: Pin - First character cannot have space.

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

TC – 065: Telephone Number – Mobile no must not be blank. TC – 066: Telephone Number – Special characters are not allowed. TC – 067: Telephone Number – Characters are not allowed.

TC – 068: Telephone Number - First character cannot have space. TC – 069: Email - Email ID must not be blank.

TC – 070: Email - Email ID is not valid.

TC – 071: Email - First character cannot have space.

TC – 075: If Customer ID is invalid, system displays an error.

TC – 076: If initial deposit is less than 500, System displays an error.  <b>Edit Customer:</b>

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

TC – 077: If Customer Id is invalid, System displays an error.

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<b>CHƯƠNG 3: DANH SÁCH TEST CASE</b>

<b><small>Bảng 3.2. Danh sách Test case</small></b>

<b>New Account</b>

<b>TC Description</b> <sup>Verify that the user cannot create a new account with a </sup>

blank Customer id.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Account' tab.

4. Leave blank Customer id filed.

5. Enter all valid information into other fields 6. Tick the button 'Submit'.

<b>Test Data</b>

Customer id:

Account type: savings Initial deposit: 100000

<b>Expected Result</b> <sup>The user cannot create a new account and the message of </sup>

account creation failed appears.

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

<b>V2Executed by Trang</b>

<b>TC Description</b> <sup>Verify that the user cannot create a new account with the </sup>

Customer Id are special characters.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Account' tab.

4. Leave Customer id filed are special characters. 5. Enter all valid information into other fields. 6. Tick the button 'Submit'.

The user cannot create a new account and the message of account creation failed appears with Customer Id are special

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

<b>Notes</b> Bug #2

<b>TC Description</b> <sup>Verify that the user cannot create a new account with </sup>

Customer Id are characters.

1. Open the website Login with valid information to UserID and Password. 3. Click on the ‘New Account' tab.

4. Leave Customer id filed are characters. 5. Enter all valid information into other fields. 6. Tick the button 'Submit'.

<b>Test Data</b>

Customer id: abbg Account type: savings Initial deposit: 50000

<b>Expected Result</b>

The user cannot create ate new account and the message of account creation failed appears with Customer Id are

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<b>TC IDTC-004</b>

<b>TC Description</b> <sup>Verify that the user cannot create a new account with the </sup>

First character of the Customer Id having space.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Account' tab.

4. Leave the First character of the Customer Id has space. 5. Enter all valid information into other fields.

6. Tick the button 'Submit'.

The user cannot create a new account and the message of account creation failed appears with the First character of the Customer Id having space.

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

<b>TC IDTC-005</b>

<b>TC Description</b> <sup>Verify that the user cannot create a new Customer with a </sup>

Customer Name are numbers.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Customer' tab.

4. Leave Customer Name filed are number. 5. Enter all valid information into other fields 6. Tick the button 'Submit'.

The user cannot create a new Customer with the Customer name are numbers and the message of customer creation failed appears with the Customer name are numbers.

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<b>TC Description</b> <sup>Verify that the user cannot create a new Customer with a </sup>

Customer Name are Special characters.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Customer' tab.

4. Leave the Customer Name filed are Special characters. 5. Enter all valid information into other fields.

6. Tick the button 'Submit'.

The user cannot create a new Customer with the Customer name are special characters and the message of customer creation failed appears with the Customer name as special characters.

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

<b>TC Description</b> <sup>Verify that the user cannot create a new Customer with a </sup>

blank Customer name.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Customer' tab.

4. Leave blank Customer name filed.

5. Enter all valid information into other fields. 6. Tick the button 'Submit'. City: Ho Chi Minh State: Viet Nam Pin: 123456

Telephone Number: 0918775865 Email: "

<b>Expected Result</b> <sup>The user cannot create a new Customer and the message </sup>

"Please fill all fields".

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<b>TC Description</b> <sup>Verify that the user cannot create a new Customer with the </sup>

First character in the Customer Name with a space.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Customer' tab.

4. Leave the First character to have space in Customer Name.

5. Enter all valid information into other fields. 6. Tick the button 'Submit'.

<b>Test Data</b> Customer Name: " trangdung"

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

Telephone Number: 0918775865 Email:

<b>Expected Result</b>

The user cannot create a new Customer and the message of customer creation failed appears with the First character having space in Customer Name.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Customer' tab.

4. Leave blank Address filed.

5. Enter all valid information into other fields 6. Tick the button 'Submit'.

Gender: male

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

The user cannot create a new Customer with a blank

Address and the message of customer creation failed appears with a blank Address.

<b>TC Description</b> <sup>Verify that the user cannot create a new Customer with the </sup>

First character of the Address has space.

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Customer' tab.

4. Leave the Address filed with the First character of the

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

Address having space.

5. Enter all valid information into other fields. 6. Tick the button 'Submit'.

The user cannot create a new Customer and the message of customer creation failed appears with the First character of the Address having space.

<b>TC Description</b> <sup>Verify that the user cannot create a new Customer with </sup>

Address have Special characters.

</div><span class="text_page_counter">Trang 40</span><div class="page_container" data-page="40">

1. Open the website Login with valid information to UserID and Password. 3. Click on the 'New Customer' tab.

4. Leave Addresses filed are special characters. 5. Enter all valid information into other fields. 6. Tick the button 'Submit'.

The user cannot create a new Customer and the message of customer creation failed appears with Address have Special

</div>

×