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

Bài tập lớn học phần kiểm thử phần mềm tên Đề tài quản lý nha khoa

40 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Định dạng
Số trang 40
Dung lượng 5,99 MB

Nội dung

Trường Loại Kiểu dữ liệu Độ dài tổi đa Bắt buộc Mô tả Tên bác sĩ Input Varchar 255 Không Tên bác sĩ Số điện Mật khẩu Input Varchar 20 Không Mật khẩu Thêm người dùng người dùng ● Điều

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á KHOA: CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚN HỌC PHẦN: KIỂM THỬ PHẦN MỀM

TÊN ĐỀ TÀI: QUẢN LÝ NHA KHOA

Trang 2

NHÓM: 10 TÊN ĐỀ TÀI: QUẢN LÝ NHA KHOA

Trang 3

Mục Lục

CHƯƠNG 1: TỔNG QUAN BÀI TOÁN 3

1.1 Giới thiệu đề tài 3

1.2 Đặc tả yêu cầu 3

1.2.1 Các luồng nghiệp vụ chính 3

1.2.2 Các màn hình chức năng chính 4

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ TEST 7

2.1 Unit test case 7

2.1.1 Phương pháp, kỹ thuật 7

2.1.2 Danh sách các test case 8

2.2 Integration test case 12

2.2.1 Phương pháp, kỹ thuật 12

2.2.2 Danh sách các test case 13

2.3 System test case 22

2.3.1 Phương pháp, kỹ thuật 22

2.3.2 Danh sách các test case 23

CHƯƠNG 3 : THỰC THI TEST VÀ BÁO CÁO KẾT QUẢ TEST 29

3.1 Các kết quả test 29

3.2 Danh sách các lỗi 37

CHƯƠNG 4 : AUTOMATION TEST 40

4.1 Công cụ Sử dung 40

1 Giới thiệu chung về công cụ Selenium IDE 40

2 Cài đặt và sử dụng công cụ 40

4.2 Báo cáo, đánh giá kiểm tra kết quả 44

1 Thệ thống ổn định 44

2 Kết quả đạt được: 45

3 Mode 45

TÀI LIỆUTHAM KHẢO 45

3

Trang 4

CHƯƠNG 1: TỔNG QUAN BÀI TOÁN

1.1 Giới thiệu đề tài

Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, công nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hết đỉnh cao này đến đỉnh cao khác Mạng Internet là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng chính cho sự truyền tải, trao đổi thông tin trên toàn cầu

Bằng internet, chúng ta đã thực hiện được nhiều công việc với tốc độ nhanh hơn và chi phí thấp hơn nhiều so với cách thức truyền thống Chính điều này, đã thúc đẩy sự khai sinh và phát triển của thương mại điện tử và chính phủ điện tử trên khắp thế giới, làm biến đổi đáng kể bộ mặt văn hóa, nâng cao chất lượng cuộc sống con người

Ứng dụng công nghệ thông tin vào thực tiễn đời sống xã hội giảm thiểu được sức lao động của con người, tăng hiệu học tập của con người Các phần mềm quản

lý cũng được đặc biệt quan tâm Chúng em đã lựa chọn đề tài “Xây dựng ứng dụng web quản lý dịch vụ sức khỏe” Nội dung của đồ án đi vào việc quản lý chương trình đào tạo,thông tin sinh viên, lớp và lập kế hoạch đào tạo Chúng em sẽ phân tích thiết kế hệ thống quản lý phòng khám nha khoa.

1 Truy cập website đăng nhập vào trang chủ admin

2 Tại trang chủ admin có thể quản lý được thông tin dịch vụ, bác sĩ, lịch hẹn, thuốc, đơn hàng, khách hàng, tài khoản

3 Quản lý bao gồm các chức năng thêm, sửa, xóa

4 Thống kê hoạt động của cả hệ thống: Tổng số đơn hàng, tổng doanh thu bán thuốc, tổng doanh thu tháng, tổng doanh thu theo dịch vụ, sản phẩm bán chạy nhất, lượng truy cập theo thành phố, tổng khách hàng đặt dịch vụ, thiết bị truy cập website

1.2.2 Các màn hình chức năng chính

4

Trang 5

Danh sách thông tin bác sĩ

Trường Loại Mô tả Tên bác sĩ Label Tên bác sĩ Công tác Label Nơi công tác Tốt nghiệp Label Nơi tốt nghiệp Chuyên

Ngành Label Chuyên ngành Thông tin Label Thông tin

Sửa button Nút sửa Xóa button Nút xóa Danh sách thông tin tài khoản

Trường Loại Mô tả

5

Trang 6

Họ và tên Label Họ tên

Số điện

thoại Label Số điện thoại Mật khẩu Label Mật khẩu Sửa button Nút sửa Xóa button Nút xóa

Danh sách thông tin thuốc

Trường Loại Mô tả Tên thuốc Label Tên thuốc

Mã vạch Label Mã vạch thuốc Gía bán Label Giá

Số lượng Label Số lượng kho Công ty sản

xuất Label Tên cty sxuat Ngày sản

xuất

Label Ngày sản xuất

Mô tả Label Mô tả thuốc

Sửa button Nút sửa Xóa button Nút xóa Danh sách thông tin dịch vụ

6

Trang 7

Trường Loại Mô tả

Tên dịch vụ Label Tên dịch vụ Gía Label Giá dịch vụ Đơn vị Label Đơn vị

Bảo hành Label Thời gian bảo hành Sửa button Nút sửa

Xóa button Nút xóa

7

Trang 8

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ TEST

2.1 Unit test case

2.1.1 Phương pháp, kỹ thuật

Unit Test là một kỹ thuật kiểm thử phần mềm được áp dụng cho các đơn vị (unit) hoặc thành phần riêng lẻ của phần mềm Mục tiêu của Unit Test là xác minh tính chính xác và hoạt động hiệuquả của từng đơn vị code, đảm bảo chúng hoạt động đúng như mong muốn trước khi tích hợp vào

 Chạy test case: Sử dụng framework Unit Test để chạy các test case đã viết

 Phân tích kết quả: Phân tích kết quả test để xác định lỗi hoặc sai sót trong code

 Sửa lỗi: Sửa lỗi được phát hiện trong quá trình Unit Test và chạy lại test case để đảm bảo code hoạt động chính xác

- Phương pháp:

Các phương pháp Unit Test phổ biến:

 Kiểm thử hộp đen: Kiểm tra hộp đen tập trung vào việc kiểm tra đầu vào và đầu ra của đơn vị code mà không cần quan tâm đến cấu trúc bên trong

 Kiểm thử hộp trắng: Kiểm thử hộp trắng tập trung vào việc kiểm tra cấu trúc bên trong của đơn vị code, đảm bảo tất cả các phần code đều được thực thi

 Kiểm thử dựa trên hành vi: Kiểm thử dựa trên hành vi tập trung vào việc kiểm tra hành vi của đơn vị code, đảm bảo nó hoạt động đúng như mong muốn

- Kỹ thuật:

Kỹ thuật Unit Testing được phân loại thành 3 phần gồm: Black box testing (kiểm thử hộp đen) với chức năng kiểm tra giao diện người dùng cùng đầu ra và đầu vào Whitebox testing (Kiểm thử hộp trắng) gồm kiếm tra hành vi chức năng của ứng dụng phần mềm Còn Gray box te sting (kiểm thử hộp xám) dùng để thực hiện: test suites, test methods, test cases và thực hiện phântích rủi ro

Code coverage là phương pháp đánh giá được dùng để mô tả mức độ mà source code của mộtchương trình đã được thực thi khi một bộ test cụ thể chạy Nói cách khác thì nó đảm bảo tằng kiểm thử của bạn đang thực sự test Codes của bạn Những kỹ thuật code coverage được sử dụng trong Unit Test gồm:

 Statement Coverage hay còn gọi là bao đảm bảo các dòng lệnh trong mã nguồn đã được kiểm tra ít nhất một lần trong Statement coverage = (số lượng lệnh code được kiểm tra / tổng số lệnh code) x100

 Decision Coverage: với mỗi lệnh if, case, do – while,… được coi là một decision Nó bao gồm 2 đầu ra là TRUE hoặc FALSE được gọi là decision outcome Để đảm bảo 100% coverage thì mỗi đầu ra TRUE FALSE phải được test ít nhất 1 lần Với công thức tính là

8

Trang 9

Decision coverage = (Tổng số decision outcome được test / Tổng số decision outcome) x 100.

 Path Coverage: đảm bảo tất cả các đường có thể xảy ra đi từ điểm đầu đến điểm cuối đượckiểm tra hết

 Branch Coverage: được sử dụng để bao phủ tất cả các nhánh của đồ thi luồng điều khiển

Nó gồm tất cả kết quả có thể xảy ra (đúng hoặc sai) của mỗi điều kiện của điểm quyết định ít 1 lần Đây là một ký thuật kiểm tra hộp trắng đảm bảo mọi nhánh của mỗi điểm quyết định phải được thực thi

 Condition Coverage: Gồm tỷ lệ của điều kiện đầu ra đã được thực thi bởi bộ kiểm thử 100% điều kiện bao phủ (condition coverage) yêu cầu mỗi điều kiện đơn riêng lẻ trong mỗi câu quyết định (decision statement) phải được thực thi như là True hay False

 Finite State Machine Coverage: Đưa ra các khái niệm về trạng thái và lịch sử hoạt động của nó Bao gồm hữu hạn các trạng thái của hệ thống, lưu trữ cách hệ thống đi đến trạng thái đó như thế nào Có cách xử lý dữ liệu đầu vào (input) khác nhau dựa trên trạng thái hiện tại Có thể thay đổi trạng thái dựa trên input và sự thay đổi này gọi là transition.2.1.2 Danh sách các test case

- Unit test case đăng nhập:

- Unit test case đặt lịch:

9

Trang 10

- Unit test case thêm thuốc:

10

Trang 11

- Unit test case thêm khách hàng

11

Trang 13

2.2 Integration test case

2.2.1 Phương pháp, kỹ thuật

Integration Test Case là phương pháp thiết kế các trường hợp kiểm thử (test case) cho việc kiểm thử tích hợp (integration testing) Integration testing tập trung vào việc kiểm tra sự tương tác và giao tiếp giữa các module hoặc thành phần khác nhau của hệ thống sau khi chúng được tíchhợp lại với nhau

 Thiết kế test case: Viết các test case để kiểm tra các khía cạnh sau:

 Giao tiếp dữ liệu: Đảm bảo dữ liệu được trao đổi chính xác và đầy đủ giữa các module

 Luồng dữ liệu: Xác minh luồng dữ liệu giữa các module hoạt động đúng như mong muốn

 Xử lý lỗi: Kiểm tra cách thức xử lý lỗi khi xảy ra lỗi trong quá trình giao tiếp giữa các module

 Hiệu suất: Đánh giá hiệu suất của hệ thống sau khi tích hợp

 Chạy test case: Sử dụng công cụ kiểm thử để chạy các test case đã viết

 Phân tích kết quả: Phân tích kết quả test để xác định lỗi hoặc sai sót trong quá trình tích hợp

 Sửa lỗi: Sửa lỗi được phát hiện trong quá trình Integration Test và chạy lại test case để đảm bảo hệ thống hoạt động chính xác

- Phương pháp:

Các phương pháp thiết kế Integration Test Case:

 Kiểm thử top-down: Bắt đầu từ giao diện người dùng và kiểm tra từng module theo thứ tự

từ trên xuống dưới

 Kiểm thử bottom-up: Bắt đầu từ các module cấp thấp nhất và kiểm tra từng module theo thứ tự từ dưới lên trên

 Kiểm thử sandwich: Kết hợp cả phương pháp top-down và bottom-up

- Kỹ thuật:

 Kiểm thử top-down: Bắt đầu từ giao diện người dùng và kiểm tra từng module theo thứ tự

từ trên xuống dưới

 Kiểm thử bottom-up: Bắt đầu từ các module cấp thấp nhất và kiểm tra từng module theo thứ tự từ dưới lên trên

 Kiểm thử sandwich: Kết hợp cả phương pháp top-down và bottom-up

13

Trang 14

 Kiểm thử giao diện: Tập trung vào việc kiểm tra các giao diện giữa các module, bao gồm

dữ liệu được trao đổi, định dạng dữ liệu và các phương thức giao tiếp

 Kiểm thử luồng dữ liệu: Xác minh luồng dữ liệu giữa các module hoạt động đúng như mong muốn

 Kiểm thử xử lý lỗi: Kiểm tra cách thức xử lý lỗi khi xảy ra lỗi trong quá trình giao tiếp giữa các module

 Kiểm thử hiệu suất: Đánh giá hiệu suất của hệ thống sau khi tích hợp

2.2.2 Danh sách các test case

Đặt lịch hẹn

Trường Loại Kiểu dữ

liệu Độ dài tổi đa Bắt buộc Mô tả Anh/Chị Input enum Nam, Nữ,

14

Trang 15

Ghi chú Input Date Không Hạn sử dụng

thuốc Đặt lịch

hẹn

đặt lịch

Điều kiện ràng buộc :

- Không được để trống input

- Số điện thoại chỉ gồm số, không phải chữ và ký tự đặc biệt

Đăng nhập

Trường Loại Kiểu dữ

liệu

Độ dài tổi đa

Bắt buộc Mô tả

Số điện

thoại

Mật khẩu Input Varchar 20 Không Mật khẩu

admin

15

Trang 16

Điều kiện ràng buộc :

- Không được để trống input

- Số điện thoại chỉ gồm số, không phải chữ và ký tự đặc biệt

- Mật khẩu max 20 ký tự, phải trùng với mật khẩu đăng kýThêm tài khoản

16

Trang 17

Trường Loại Kiểu dữ

liệu Độ dài tổi đa Bắt buộc Mô tả Tên bác sĩ Input Varchar 255 Không Tên bác sĩ

Số điện

Mật khẩu Input Varchar 20 Không Mật khẩu Thêm

người dùng

người dùng

Điều kiện ràng buộc :

- Không được để trống input

- Số điện thoại chỉ gồm số, không phải chữ và ký tự đặc biệt

- Mật khẩu min 5, max 20 ký tự

17

Trang 18

+) Thêm bác sĩ

Trường Loại Kiểu dữ

liệu Độ dài tổi đa Bắt buộc Mô tả Tên bác sĩ Input Varchar 40 Không Tên bác sĩ Công tác Input Varchar 500 Không Nơi công tác Tốt nghiệp Input Varchar 500 Không Trường tốt

nghiệp Chuyên

Ngành Input Varchar 500 Không Chuyên ngành Thông tin Input Varchar 500 Không Thông tin

Thêm vào

danh sách

18

Trang 19

Điều kiện ràng buộc :

- Không được để trống input

19

Trang 20

+) Thêm khách hàng

Trường Loại Kiểu dữ

liệu

Độ dài tổi đa

Bắt buộc

Mô tả

Tên khách hàng Input Varchar 40 Không Tên khách

hàng Công tác Input Varchar 500 Không Nơi công tác

20

Trang 21

Thông tin Input Varchar 500 Không Thông tin

Thêm vào danh

sách

● Điều kiện ràng buộc :

● Không được để trống input

+) Thêm thuốc

Trường Loại Kiểu dữ

liệu Độ dài tổi đa Bắt buộc Mô tả Tên thuốc Input Varchar 255 Không Tên bác sĩ

Mã vạch Input Varchar 30 Không Nơi công tác

nghiệp

Số lượng Input Int 500 Không Chuyên ngành Công ty sản Input Varchar 255 Không Thông tin

21

Trang 22

Thêm vào

danh sách

Điều kiện ràng buộc :

- Không được để trống input

- Gía bán và số lượng chỉ gồm số, không phải chữ và ký tự đặc biệt

22

Trang 23

Thêm dịch vụ

Trường Loại Kiểu dữ

liệu Độ dài tổi đa Bắt buộc Mô tả Tên dịch vụ Input Varchar 40 Không Tên dịch vụ Gía Input Varchar 500 Không Gía dịch vụ Đơn vị Input Varchar 500 Không Đơn vị Bảo hành Input Varchar 500 Không Thời gian bảo

hành Thêm

thông tin

Điều kiện ràng buộc :

- Không được để trống input

- Gía và đơn vị chỉ gồm số, không phải chữ và ký tự đặc biệt.

2.3 System test case

Trang 24

 Sơ đồ luồng dữ liệu: Sử dụng sơ đồ luồng dữ liệu để xác định các đường dẫn dữ liệu trong

hệ thống và thiết kế các trường hợp thử nghiệm để kiểm tra các đường dẫn này

 Kiểm thử ngẫu nhiên: Sử dụng công cụ để tạo ra các trường hợp thử nghiệm ngẫu nhiên.2.3.2 Danh sách các test case

mới sẽ được thêm vào hệ thống

Yêu cầu thông tin như giới tính, họ tên, số điện thoại, ngày sinh, địa chỉ, lịch hẹn, ghi chú

Trang 25

ghi chú

4 Khách hàng xem sau đó xác nhận và ấn nút Đặt lịch

5 Hệ thống lưu trữ Lịch hẹn mới vào cơ sở

dữ liệu

Exception Flows Nếu báo lỗi khi lưu thông tin, hệ thống sẽ

thông báo trên trang web và yêu cầu nhập lạihoặc kiểm tra lại thông tin

Nếu thông tin bị thiếu, hệ thống sẽ yêu khách hàng nhập đủ thông tin cần thiết

Thuốc mới sẽ được thêm vào hệ thống.Yêu cầu thông tin như tên thuốc, mã vạch, giá bán, số lượng, công ty sản xuất, ngày sảnxuất, mô tả, hình

số lượngcông ty sản xuất25

Trang 26

ngày sản xuất

mô tảhình

4 Quản trị viên xem sau đó xác nhận và ấn nút Thêm mới

5 Hệ thống lưu trữ Thuốc mới vào cơ sở dữ liệu

Exception Flows Nếu báo lỗi khi lưu thông tin, hệ thống sẽ

thông báo trên trang web và yêu cầu nhập lạihoặc kiểm tra lại thông tin

Nếu thông tin bị thiếu, hệ thống sẽ yêu Quảntrị viên nhập đủ thông tin cần thiết

Tài khoản mới sẽ được thêm vào hệ thống.Yêu cầu thông tin như họ và tên, số điện thoại, mật khẩu

4 Quản trị viên xem sau đó xác nhận và ấn nút Thêm mới

5 Hệ thống lưu trữ Tài khoản mới vào cơ sở

dữ liệu

26

Trang 27

Alternative Flows N/A

Exception Flows Nếu báo lỗi khi lưu thông tin, hệ thống sẽ

thông báo trên trang web và yêu cầu nhập lạihoặc kiểm tra lại thông tin

Nếu thông tin bị thiếu, hệ thống sẽ yêu Quảntrị viên nhập đủ thông tin cần thiết

Dịch vụ mới sẽ được thêm vào hệ thống.Yêu cầu thông tin như tên dịch vụ, giá, đơn

4 Quản trị viên xem sau đó xác nhận và ấn nút Thêm mới

5 Hệ thống lưu trữ Dịch vụ mới vào cơ sở

dữ liệu

Exception Flows Nếu báo lỗi khi lưu thông tin, hệ thống sẽ

thông báo trên trang web và yêu cầu nhập lạihoặc kiểm tra lại thông tin

27

Trang 28

Nếu thông tin bị thiếu, hệ thống sẽ yêu Quảntrị viên nhập đủ thông tin cần thiết

sĩ mới sẽ được thêm vào hệ thống.Yêu cầu thông tin như: Tên bác sĩ, Công tác,Tốt nghiệp, Chuyên ngành, Thông tin, ảnh

4 Quản trị viên xem sau đó xác nhận và ấn nút Thêm mới

5 Hệ thống lưu trữ Thông tin bác sĩ mới vào

cơ sở dữ liệu

thống Exception Flows Nếu báo lỗi khi lưu thông tin, hệ thống sẽ

thông báo trên trang web và yêu cầu nhập lạihoặc kiểm tra lại thông tin

28

Trang 29

Nếu thông tin bị thiếu, hệ thống sẽ yêu Quảntrị viên nhập đủ thông tin cần thiết

Notes

29

Trang 30

CHƯƠNG 3 : THỰC THI TEST VÀ BÁO CÁO KẾT QUẢ TEST

3.1 Các kết quả test

Sdt+ mk null : Pass

30

Trang 31

Null+ null: Pass

Sđt chứa ký tự đặc biệt và chữ + mk: Pass

31

Trang 32

Sđt null+ mk: Pass

Sđt đúng+ mk đúng: Pass

Not input+ null input: Fail

32

Trang 33

Fail

33

Trang 34

Trang chủ:

34

Trang 35

Null+ null: Pass

Bảng giá

Trang tạo đơn hàng.

35

Trang 36

Trang quản trị.

Null+ null: Pass

36

Trang 37

Kết quả chạy phần Trang chủ.

Trang thông tin thuốc.

Null+ null: Pass

Trang Thêm khách hàng.

37

Trang 38

3.2 Danh sách các lỗi

Trang quản trị.

Trang thêm khách hàng

38

Trang 39

Trang chủ:

Trang Đặt hẹn.

39

Trang 40

40

Ngày đăng: 23/12/2024, 12:43

w