KIỂM THỬ PHẦN MỀM, KIỂM THỬ HỆ THỐNG WEBSITE CHĂM SÓC SỨC KHỎE,Kiểm thử phần mềm ( Software Testing) là một quá trình để kiểm tra xem sản phẩm phần mềm thực tế có phù hợp với yêu cầu mong đợi hay không, đồng thời nhằm đảm bảo rằng sản phẩm đó không có khiếm khuyết. Kiểm thử phần mềm liên quan đến việc thực thi các thành phần phần mềm hệ thống bằng cách sử dụng các công cụ thủ công hoặc tự động nhằm đánh giá một hoặc nhiều đặc tính nổi bật. Mục đích của kiểm thử phần mềm là xác định các lỗi, các lỗ hổng hoặc các yêu cầu còn thiếu đối lập với yêu cầu thực tế của sản phẩm phần mềm.
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN -
BÁO CÁO THỰC NGHIỆM MÔN KIỂM THỬ PHẦN MỀM KIỂM THỬ HỆ THỐNG WEBSITE CHĂM SÓC SỨC KHỎE
GVHD: Th.S Hoàng Quang Huy
Lớp: 20212IT6013002 Khóa: K14
Nhóm: 15
Hà Nội, năm 2022
Mục Lục
Trang 2LỜI NÓI ĐẦU 3
1 Kiến thức cơ bản về lĩnh vực chăm sóc sức khỏe 15
2 Quy trình công tác chăm sóc sức khỏe (Healthcare business process) 16
1 Kiểm thử cơ sở dữ liệu (Database testing) bằng công cụ phpMyAdmin 21
2 Kiểm thử bảo mật bằng phần mềm OWASP ZAP ( version 2.11.1) 26
3 Kiểm thử chức năng: Đặt lịch hẹn của người dùng bằng Katalon Studio 29
Trang 3LỜI NÓI ĐẦU
Trong những năm gần đây với sự phát triển rất mạnh của công nghệ thông tin,ngành công nghệ phần mềm đang chiếm một vị trí hết sức quan trọng trong xuhướng phát triển kinh tế công nghiệp hóa, hiện đại hóa của nước ta Cùng với sựphát triển ấy các chương trình phần mềm, website ra đời ngày càng nhiều, đòi hỏicác nhà sản suất phải có một phương pháp để nâng cao chất lượng sản phẩm cũngnhư tối ưu hiệu suất làm việc để có thể cạnh tranh
Vì vậy kiểm thử phần mềm đang ngày càng đóng vai trò quan trọng trong ngànhcông nghiệp phát triển phần mềm không chỉ ở Việt Nam mà trên thế giới Kiểmthử phần mềm là một khâu rất quan trọng trong quá trình phát triển phần mềm.Kiểm thử phần mềm để kiểm tra phần mềm có đúng với đặc tả và thiết kế hệ thốngkhông, có đáp ứng yêu cầu người dùng không, có lỗi lập trình không, hoạt động cóhiệu quả không,…Như vậy, kiểm thử phần mềm là để đáp ứng yêu cầu ngườidùng, phát triển lỗi để từ đó nâng cao chất lượng phần mềm
Với sự hướng dẫn của thầy Th.S Hoàng Quang Huy, chúng em đã thực hiện đề tài
“Kiểm thử hệ thống website chăm sóc sức khỏe” trên một sản phẩm website đãđược xây dựng nhưng chưa hoàn thiện Trong quá trình thực hiện, có thể gặpnhững thiếu sót, nhóm chúng em rất mong nhận được sự giúp đỡ và chỉ dạy củathầy và các bạn
Chúng em xin chân thành cảm ơn!
Trang 4Chương I Khái quát kiểm thử phần mềm
1 Định nghĩa
Kiểm thử phần mềm ( Software Testing) là một quá trình để kiểm tra xem sản
phẩm phần mềm thực tế có phù hợp với yêu cầu mong đợi hay không, đồng thờinhằm đảm bảo rằng sản phẩm đó không có khiếm khuyết Kiểm thử phần mềm liênquan đến việc thực thi các thành phần phần mềm/ hệ thống bằng cách sử dụng cáccông cụ thủ công hoặc tự động nhằm đánh giá một hoặc nhiều đặc tính nổi bật.Mục đích của kiểm thử phần mềm là xác định các lỗi, các lỗ hổng hoặc các yêu cầucòn thiếu đối lập với yêu cầu thực tế của sản phẩm phần mềm
Kiểm thử phần mềm bao gồm 2 phương pháp chính:
- Kiểm thử hộp trắng (White-Box Testing): Kiểm thử hộp trắng là phương pháp
kiểm thử mà cấu trúc thuật toán của chương trình được đưa vào xem xét Cáctrường hợp kiểm thử được thiết kế dựa vào cấu trúc mã hoặc cách làm việc củachương trình Người kiểm thử truy cập vào mã nguồn của chương trình để kiểmtra nó
- Kiểm thử hộp đen (Black-Box Testing): Kiểm thử hộp đen là 1 phương pháp kiểm thử mà người kiểm thử (Tester) sẽ chỉ xem xét đến đầu vào và đầu ra của
chương trình mà không quan tâm code bên trong được viết ra sao Tester thựchiện kiểm thử dựa hoàn toàn vào đặc tả yêu cầu Mục đích của kiểm thử hộpđen là tìm ra các lỗi ở giao diện , chức năng của phần mềm Các trường hợpkiểm thử sẽ được xây dựng xung quanh đó
Kiểm thử Phần Mềm là một giai đoạn rất quan trọng bởi vì nếu như có bất kì lỗi Bugs hoặc lỗi Errors nào trong phần mềm, nó có thể được xác định kịp thời và
có thể được giải quyết trước giai đoạn chuyển giao sản phẩm phần mềm cho kháchhàng Sản phẩm phần mềm được kiểm tra một cách thích hợp sẽ đảm bảo được tínhtin cậy, tính bảo mật và tính hiệu suất cao giúp tiết kiệm thời gian, hiệu quả chi phí
và sự hài lòng của khách hàng
Trang 52 Lịch sử phát triển
Kiểm thử phần mềm xuất hiện cùng với sự phát triển của phần mềm Ngay saucuộc thế chiến thứ 2, Tom Kilburn – Nhà khoa học máy tính người Anh được ghinhận là người viết phần mềm đầu tiên và ra mắt vào ngày 21 tháng 6 năm 1948 tạiĐại học Manchester ở Anh Phần mềm thực hiện các phép tính toán học bằng cách
sử dụng các lệnh mã máy
Gỡ lỗi (Debugging) là phương pháp kiểm thử chính vào thời điểm đó và trong hai
thập kỷ tiếp theo Cho đến năm 1980, các nhóm phát triển đã vượt xa khỏi việc côlập và sửa lỗi phần mềm để kiểm thử ứng dụng trong cài đặt thế giới thực Nó đãtạo tiền đề cho một cái nhìn mới về kiểm thử phần mềm – một quy trình về bảođảm chất lượng phần mềm là một phần của vòng đời phát triển phần mềm
3 Lợi ích
- Hiệu quả về chi phí: Đây là một trong những lợi ích quan trọng của kiểm thử
phần mềm Thực tế cho thấy rằng các lỗi thiết kế khó có thể được loại trừ hoàntoàn đối với bất kỳ hệ thống nào Đó không phải là lỗi bất cẩn của Developer
mà đôi khi do sự phức tạp của hệ thống Nếu các vấn đề về thiết kế không đượcphát hiện, thì việc tìm ra và sửa các lỗi/khiếm khuyết sẽ trở nên khó khăn và tốnkém hơn Kiểm thử bất kỳ dự án IT nào cũng sẽ giúp công ty tiết kiệm, việc xácđịnh lỗi trong giai đoạn đầu sẽ giúp quá trình sửa chữa tốn ít chi phí hơn
- Bảo mật: Đây là điểm nhạy cảm và dễ bị tấn công nhất của kiểm thử phần
mềm Kiểm thử giúp loại bỏ các rủi ro và vấn đề trong sản phẩm Cùng với đó,tất cả khách hàng đều đang tìm kiếm những sản phẩm đáng tin cậy
- Bảo đảm chất lượng sản phẩm: Đây là yêu cầu thiết yếu của bất kỳ sản phẩm
phần mềm nào Kiểm thử phần mềm giống như việc củng cố danh tiếng công tybằng cách cung cấp các sản phẩm chất lượng cho khách hàng
- Sự hài lòng của khách hàng: Trong bất kỳ hoạt động kinh doanh sản phẩm
nào, mục tiêu cuối cùng đều là mang đến cho khách hàng trải nghiệm tốt nhất
Sự hài lòng của khách hàng rất quan trọng trong quá trình hợp tác lâu dài
Trang 64 Phân loại
- Kiểm thử chức năng (Functional Testing): Kiểm thử chức năng là xác minh
hệ thống hoạt động theo đúng theo các yêu cầu nghiệp vụ Hình thức kiểm thử
này có thể được thực hiện từ hai khía cạnh: dựa trên yêu cầu based) và dựa trên quy trình nghiệp vụ (business – process – based).
(requirements-Trong kiểm thử dựa trên yêu cầu, các yêu cầu được ưu tiên tùy thuộc vào tiêuchí rủi ro Điều này sẽ đảm bảo những phần quan trọng nhất sẽ được test đầy
đủ Mặt khác, kiểm thử dựa trên quy trình nghiệp vụ sẽ sử dụng những kiếnthức tương ứng Quy trình nghiệp vụ mô tả các việc liên quan đến nghiệp vụhằng ngày của hệ thống
- Kiểm thử phi chức năng (Non-Functional Testing – Performance Testing):
Kiểm thử phi chức năng là kiểm tra các đặc tính chất lượng của hệ thống
Ví dụ, kiểm tra xem bao nhiêu người có thể đăng nhập đồng thời vào một phầnmềm Kiểm tra phi chức năng cũng quan trọng không kém như kiểm tra chứcnăng và ảnh hưởng đến sự hài lòng của khách hàng
- Kiểm thử cấu trúc (Structural Testing): Kiểm thử cấu trúc thường được gọi
là “hộp trắng” hoặc “hộp thủy tinh” bởi vì phương pháp này quan tâm đến việctìm kiếm những gì đang xảy ra bên trong, kiểm tra dựa trên phân tích cấu trúcbên trong của thành phần hoặc hệ thống Nó thường được sử dụng như mộtcách đo lường của kiểm thử, thông qua độ bao phủ của một tập hợp các yếu tốcấu trúc Kiểm thử cấu trúc chủ yếu được áp dụng ở kiểm thử thành phần,kiểm thử tích hợp
- Kiểm thử liên quan đến các thay đổi (Change related Testing):
Phương pháp này bao gồm 2 loại:
▪ Kiểm thử xác nhận (Confirmation testing): Khi kiểm thử gặp lỗi,
Tester phải xác định nguyên nhân lỗi là do lỗi phần mềm Sau khi Testerphát hiện lỗi và báo cho lập trình viên để sửa thì phần mềm sau đó sẽcập nhật phiên bản vá lỗi Cuối cùng, Tester cần thực hiện kiểm tra thêmmột lần nữa để xác định rằng lỗi thực sự đã được giải quyết
▪ Kiểm thử hồi quy (Regression Testing): Tương tự như kiểm thử xác
nhận thì kiểm thử hồi quy liên quan đến việc lặp lại các trường hợp
Trang 7kiểm thử đã được thực hiện trước đó Kiểm thử hồi quy được thực hiệnkhi phần mềm thay đổi do sửa lỗi, chức năng mới.
5 Các chiến lược kiểm thử
- Kiểm thử đơn vị (Unit Testing): Cách tiếp cận cơ bản kiểm thử phần mềm
này được lập trình viên tuân theo để kiểm tra đơn vị của chương trình Nógiúp các nhà phát triển biết liệu từng đơn vị mã có hoạt động bình thườnghay không
- Kiểm thử tích hợp (Intergration Testing): một phần mềm được tạo ra sẽ
bao gồm rất nhiều module trong đó, để chắc chắn rằng phần mềm hoạt độngtốt thì chúng ta cần phải gom các module lại với nhau để kiểm tra sự giaotiếp giữa các module cũng như bản thân từng thành phần từng module Kiểm thử tích hợp bao gồm 2 mục tiêu chính là:
▪ Phát hiện lỗi giao tiếp xảy ra giữa các đơn vị
▪ Tích hợp các đơn vị đơn lẻ thành các hệ thống nhỏ và cuối cùng là 1 hệthống hoàn chỉnh để chuẩn bị cho bước kiểm thử hệ thống
- Kiểm thử hệ thống (System Testing): Kiểm thử 1 hệ thống đã được tích hợp
hoàn chỉnh để xác minh rằng nó đáp ứng được yêu cầu Kiểm thử hệ thốngthuộc loại kiểm thử hộp đen Kiểm thử hệ thống tập trung nhiều hơn vàocác chức năng của hệ thống Kiểm tra cả chức năng và giao diện , các hành
vi của hệ thống 1 cách hoàn chỉnh, đáp ứng với yêu cầu thực tế
- Kiểm thử chương trình (Program Testing): Kiểm thử chương trình trong
kiểm thử phần mềm là một phương pháp thực thi một chương trình phầnmềm thực tế với mục đích kiểm tra hành vi của chương trình và tìm ra lỗi.Chương trình phần mềm được thực thi với dữ liệu trường hợp thử nghiệm đểphân tích hành vi của chương trình hoặc phản ứng với dữ liệu thử nghiệm.Một thử nghiệm chương trình tốt là một thử nghiệm có khả năng cao tìmthấy lỗi
6 Các công cụ kiểm thử phần mềm
Công cụ kiểm thử phần mềm dùng để kiểm tra xem sản phẩm phần mềm trước khiđưa vào sử dụng có phù hợp với các yêu cầu mong đợi hay không và nó có khiếmkhuyết hay lỗi nào không Nó sử dụng các công cụ tự động hoặc thủ công để đánhgiá một hoặc nhiều thuộc tính liên quan đến việc thực thi các phần hành trong phần
Trang 8mềm Mục đích của công cụ này là xác định các lỗi, các khoảng trống và các yêucầu còn thiếu so với thực tế.
- Phân loại
▪ Kiểm thử thủ công: là quá trình kiểm tra phần mềm bằng tay để tìm hiểu,
kiểm tra xem các phần hành có hoạt động hay không hoạt động Việc này sẽxác minh tất cả các tính năng được chỉ định có đúng như trong tài liệu yêucầu hay không
Các kế hoạch kiểm thử thủ công cũng khác nhau, tùy thuộc vào các dự án vàquy mô thử nghiệm Có các kế hoạch được viết kịch bản rất chi tiết cho từngbước thử nghiệm và các kết quả mong đợi Nhưng cũng có những kế hoạchchỉ đưa ra các chỉ dẫn cho các phiên thử nghiệm khác nhau
▪ Kiểm thử tự động: là các công cụ tự động hóa quá trình kiểm tra phần mềm
bằng cách sử dụng các công cụ thực thi các bước kiểm tra, thử nghiệm vàtạo ra các kết quả một cách tự động
- Một số các công cụ như: CFT4CUnit ,JDFT ,JUnit ,QuickTest
Professional , Apache JMeter ,Load Runner, HP Quick Test Professional,Selenium, Visual Studio Test Professional, WATIR, IBM RationalFunctional Tester, TestComplete, Testing Anywhere, WinRunner, SilkTest
7 Một số loại hình kiểm thử phổ biến
- Kiểm thử các phần mềm trên Desktop: đây là các ứng dụng được cải đặt trựctiếp trên máy tính cá nhân nhằm thực hiện các chức năng theo yêu cầu ngườidùng Đây vẫn đang là những ứng dụng phổ biến nhất
- Kiểm thử Web hay kiểm thử trên đám mây: với sự lớn mạnh của Internet thìcác ứng dụng web cũng ngày càng phát triển và đang dần thay thế các ứngdụng trên Desktop truyền thống như Google Document, Microsoft webapps
- Kiểm thử trên Mobile: ngày nay xã hội với sự phát triển nhanh chóng, cácthiết bị di động có số lượng người dùng cũng đang tăng lên chóng mặt, cùng
Trang 9với đó là số lượng phần mềm phục vụ cho nhu cầu cũng tăng cao vì vậy đây
là một lĩnh vực đẩy tiềm năng và thách thức trong công nghệ phần mềm
Trang 10Chương II Tổng quan về kiểm thử Website
1 Định nghĩa
Kiểm thử website là một thành phần trong kiểm thử phần mềm tập trung vào cácứng dụng web, là tên gọi cho một quá trình kiểm tra các ứng dụng web để xem cólỗi hay không trước khi đưa sản phẩm tới tay khách hàng Bước này sẽ giúp giảiquyết các vấn đề trong vận dụng website như: Tính năng, dịch vụ web, bảo mật,khả năng xử lý lưu lượng truy cập,…
2 Quy trình kiểm thử Website
2.1 Kiểm thử chức năng
Kiểm thử chức năng đòi hỏi tester phải thực hiết test tất cả chức năng chínhcủa các link trong trang web, định dạng được dùng trong các trang web để gửi vànhận thông tin cần thiết từ người dùng Ngoài ra, còn cần có kết nối cơ sở dữ liệu,cookies, xác minh HTML/CSS
Test link
Kiểm tra tất cả link trong trang web đang hoạt động chính xác và đảm bảo không
có liên kết nào chết/hỏng Link được kiểm thử gồm:
● Liên kết ngoài trang web
● Liên kết nội bộ
● Liên kết tới các vị trí trong cùng trang
● Liên kết sử dụng để gửi email tới admin hoặc người dùng khác trong trang…
Test form
Kiểm tra forms của trang đảm bảo hoạt động tốt, gồm các yêu cầu sau:
● Kiểm tra các trường của trang đã hoạt động đúng hay chưa Ví dụ: nếu ngườidùng không nhập vào các trường bắt buộc thì có hiển thị thông báo lỗi haykhông?
● Kiểm tra giá trị mặc định của các trường là gì?
● Nhập đầu vào không đúng validate của các trường thì sao?
● Thao tác trên các trường: xem, nhập, lưu, sửa, xóa…có ổn định không
● Các form có thân thiện dễ nhìn và dễ thao tác hay không?
Trang 11Test cookies
Cookies là các tệp được tạo bởi trang web đã truy cập để lưu trữ thông tin duyệtweb như các tùy chọn trang web hoặc thông tin đăng nhập của người dùng Ngườidùng có thể tùy chỉnh trình duyệt để quản lý cookies, thực hiện thao tác xóa, chặn,lưu,… để kiểm thử các tính năng lưu hoặc không lưu trạng thái đăng nhập, tínhnăng bảo mật của ứng dụng web Test cookies gồm:
● Kiểm tra cookie (sessions) sẽ bị xóa khi xóa bộ nhớ cache hoặc khi chúnghết hạn
● Xóa cookie (sessions) và kiểm tra thông tin đăng nhập có được yêu cầu khibạn truy cập trang web lần sau
Test HTML and CSS
Xác minh HTML/CSS rất quan trọng khi developer thực hiện tối ưu hóa trang webcho các công cụ tìm kiếm, chủ yếu liên quan đến lỗi cú pháp HTML Tester sẽkiểm thử trang web có được nhận diện bởi các công cụ tìm kiếm khác nhau không
Test business workflow
● Kiểm thử các test case từ khi bắt đầu đến lúc kết thúc, giúp người dùng cóthể đi qua theo 1 flow của trang web
● Kiểm thử các test case abnormal để khi người dùng thực hiện một số bướcunexpected thì sẽ thông báo lỗi hoặc có tương tác phù hợp sẽ được hiển thị
để người dùng có thể biết khi thao tác
2.2 Kiểm thử tính khả dụng
Đây là phần rất quan trọng của bất kỳ dự án nào Nó có thể được thực hiện bởitester dev hoặc bất cứ người nào trong dự án Tính khả dụng của website là trangweb dễ sử dụng, có hướng dẫn sử dụng rõ ràng, mỗi trang đều có menu chính vàphải nhất quán Tester cần chú ý:
● Kiểm tra Navigation: Menu, button, textbox, breadcrum hoặc link đến cáctrang khác nhau trên trang web của bạn phải dễ nhìn thấy và nhất quán trêntất cả các trang web
● Kiểm tra nội dung: nội dung phải dễ đọc không có lỗi chính tả hoặc ngữpháp, thân thiện với người dùng Hình ảnh được sắp xếp gọn gàng, hợp lý
Trang 122.3 Kiểm thử giao diện
3 Lĩnh vực cần được kiểm thử gồm:
● Ứng dụng: Yêu cầu kiểm thử được gửi chính xác đến Database và đầu ra ởphía client được hiển thị chính xác Nếu có lỗi trả về thì ứng dụng thì ngaylập tức phải nhận được và cho hiển thị cảnh báo tới người dùng
● Web Sever: Test web sever là kiểm thử quá trình xử lý tất cả các yêu cầu củaứng dụng mà không xảy ra bất kỳ lỗi nào được trả về
● Database Sever: Đảm bảo các truy vấn được gửi đến cơ sở dữ liệu như kếtquả được mong đợi
Kiểm thử các trường hợp khi kết nối giữa 3 lớp (ứng dụng, web và database) bịngắt đột ngột do người dùng, hoặc kết nối tới sever bị gián đoạn, bị khởi độnglại…
2.4 Kiểm thử Database
Database là thành phần quan trọng trong ứng dụng website và cần kiểm thử kỹlưỡng Các hoạt động test sẽ gồm:
● Nếu có bất kỳ lỗi nào được hiển thị trong khi thực hiện các truy vấn
● Tính toàn vẹn dữ liệu được duy trì trong khi tạo, cập nhật hoặc xóa dữ liệutrong database
● Kiểm tra thời gian phản hồi của các truy vấn và tinh chỉnh lại nếu cần thiết
● Kiểm tra dữ liệu lấy từ database của bạn được hiển thị chính xác trong ứngdụng
2.5 Kiểm thử khả năng tương thích
Test khả năng tương thích sẽ đảm bảo ứng dụng website của bạn hiển thị chínhxác trên các thiết bị khác nhau Tester cần lưu ý:
● Tương thích với trình duyệt (trên máy tính và trên điện thoại di động): cùngmột trang web trong các trình duyệt khác nhau sẽ hiển thị khác nhau Cầnkiểm thử ứng dụng web có hiển thị chính xác trên các trình duyệt không.Cần phải kiểm thử ứng dụng web trên càng nhiều trình duyệt càng tốt (IE,Firefox, Chrome, Safari, Opera…) để kiểm thử tương thích Kiểm tra trên cảcác phiên bản khác nhau của trình duyệt Kiểm thử trên cả trình duyệt của
Trang 13thiết bị điện thoại thông minh Nếu ứng dụng chạy tốt hơn, hoặc có ưu tiêntương thích hơn với trình duyệt nào đó thì cần có thông báo tới người dùng.
● Tương thích với hệ điều hành: một số chức năng của ứng dụng có thể khôngtương thích với một số hệ điều hành, hoặc có những lưu ý khác khi sử dụng,điều này cần phải được kiểm thử kỹ và thông báo cho người dùng được biết
● Tương thích với các thiết bị ngoại vi (máy in…): khi người dùng có lệnh intrang thì phải đảm bảo tính chính xác của fonts, cỡ chữ, cỡ giấy…mà ngườidùng đã chọn
2.6 Kiểm thử hiệu năng
Kiểm tra hiệu năng sẽ đảm bảo website hoạt động dưới tất cả các tải, gồm cácyêu cầu sau:
● Thời gian phản hồi của ứng dụng trang web ở các tốc độ kết nối khác nhau
● Stress test ứng dụng web để xác định hành vi của nó vẫn hoạt động bìnhthường vào tầm cao điểm
● Stress test trang web để xác định điểm dừng của nó khi được đẩy vượt quátải bình thường vào tầm cao điểm sẽ ra sao
● Kiểm tra xem nếu có sự cố xảy ra do tải cao điểm, làm thế nào để trang webphục hồi sau sự cố đó
● Đảm bảo các kỹ thuật tối ưu hóa như nén zip, bộ đệm phía trình duyệt vàmáy chủ được bật để giảm thời gian tải
● Không thể tải xuống các tệp bị hạn chế nếu không có quyền truy cập phùhợp
Trang 14● Sessions sẽ tự động bị hủy sau khi người dùng không hoạt động trong mộtthời gian
● Nhập các giá trị đầu vào không hợp lệ trong các trường Username, Passwordthì hệ thống phải báo lỗi
● Kiểm tra CAPTCHA cho các đăng nhập tự động
● Tất cả các phiên giao dịch, các thông báo lỗi, các hành vi cố gắng xâm phạm
an ninh phải ghi trong log và lưu tại web server
2.8 Crowd testing
Bằng cách chọn 1 số lượng lớn người (crowd) để thực hiện bài kiểm tra Crowdtesting là khái niệm giúp làm sáng tỏ nhiều khuyết điểm không được chú ý Nógồm hầu hết các loại kiểm thử áp dụng cho website
Trang 15Chương III Kiểm thử hệ thống Website chăm sóc sức khỏe
1 Kiến thức cơ bản về lĩnh vực chăm sóc sức khỏe
Toàn bộ hệ thống chăm sóc sức khỏe được kết nối với nhau bởi một cơ quan duynhất là bệnh viện hoặc nhà cung cấp (bác sĩ)
Các thực thể bao gồm :
● Công ty bảo hiểm (Insurance company)
● Bệnh nhân/ người tiêu dùng (Patient/Consumer)
● Cơ quan quản lý (Regulatory Authority)
● Nhà cung cấp giải pháp chăm sóc sức khỏe và khoa học đời sống care and Life-Science solution Vendors)
(Health-Thuật ngữ cơ bản của hệ thống chăm sóc sức khỏe:
● Nhà cung cấp (Provider): chuyên gia chăm sóc sức khỏe (bác sĩ) , bệnh viện, phòng khám,…
● Yêu cầu(Claim): yêu cầu công ty bảo hiểm thanh toán hóa đơn chăm sóc sức khỏe
● Người môi giới(Broker): Chuyên gia bảo hiểm
● Tài chính(finance): các cơ quan bảo hiểm chi trả cho các chi phí y tế, đó
có thể là chính phủ hoặc thương mại
Hospital
Patient Consumer
Insurance Company
Regulatory Autority
Health-care and Lift- Science solution Vendors
Trang 172 Quy trình công tác chăm sóc sức khỏe (Healthcare business process)
3 Các kịch bản kiểm thử hệ thống
a) Kịch bản kiểm thử hệ thống nhà cung cấp( Testing of providers system)
Kịch bản kiểm thử Các trường hợp kiểm thử
1.Khả năng truy cập vào
testing
Cho phép lưu thông tin nhà cung cấp với dữ liệu đầy đủ, ngày hiệu lực của hợp đồng , nhập chi tiết các nhà cung cấp hiện có trong hệ thống
4.Sysem intergration
testing
Xác thực nguồn cấp dữ liệu cho hệ thống bệnh nhân, hệ thống tài chính, hệ thống khiếu nại và cổngthông tin nhà cung cấp Ngoài ra, xác thực nếu các thay đổi từ cổng nhà cung cấp được nhập vào hồ sơ của nhà cung cấp tương ứng
5 Positive flow providers
Thanh toán hóa đơn Điều trị Lập kế hoạch
Đăng ký của bệnh nhân
Trang 18thoại, v.v.
6 Negative flow providers
portal testing
-Xem chi tiết bệnh nhân với ID không hợp lệ
-Đăng nhập với thông tin không hợp lệ
7 Positive flow Broker
portal testing
-Đăng nhập và xem chi tiết về người môi giới và hoa hồng
-Yêu cầu thay đổi tên, địa chỉ, số điện thoại, v.v
8 Negative flow Broker
portal testing
Bao gồm các kịch bản đăng nhập với thông tin không hợp lệ
b) Kiểm thử hệ thống môi giới (Testing of broker system)
Kịch bản kiểm thử Các trường hợp kiểm thử
1.Hệ thống môi giới -Có khả năng chỉnh sửa, nhập và lưu dữ liệu của
người môi giới
-Tính toán hoa hồng môi giới dựa trên chi tiết thanhtoán bảo hiểm từ hệ thống bệnh nhân
2.Positive flow System
3 Negative flow System
Testing
-Nhập một bản ghi môi giới với dữ liệu không đầy
đủ và lưu cho các loại môi giới khác nhau
-Bằng cách tạo tệp nguồn cấp dữ liệu với bản ghi tương ứng cho các bệnh nhân với gói điều trị khác nhau, tính toán hoa hồng cho nhà môi giới đã chấm dứt hợp đồng
- Bằng cách tạo tệp nguồn cấp dữ liệu với hồ sơ tương ứng cho các bệnh nhân có gói điều trị khác nhau tính toán hoa hồng cho nhà môi giới không hợp lệ
4.System testing -Để hệ thống hạ nguồn như hệ thống tài chính, cổng
thông tin môi giới và hệ thống bệnh nhân xác nhận các nguồn cấp dữ liệu
-Xác thực nếu các thay đổi từ cổng môi giới được
Trang 19kết hợp trong hồ sơ môi giới tương ứng
c) Kiểm thử hệ thống thành viên (Testing of member system)
Kịch bản kiểm thử Các trường hợp kiểm thử
1 Hệ thống thành viên -Ghi danh, phục hồi và xóa một bệnh nhân
-Xóa và thêm một phụ thuộc
-Tạo hóa đơn bảo hiểm
-Xử lý thanh toán phí bảo hiểm
2 Positive flow System
Testing
-Với ngày hiệu lực hiện tại, quá khứ và tương lai, hãy đăng ký các loại bệnh nhân khác nhau
-Truy vấn và thay đổi bệnh nhân
- Xuất hóa đơn phí bảo hiểm cho một bệnh nhân đang điều trị cho tháng tiếp theo
-Chấm dứt một bệnh nhân đang điêìu trị với ngày chấm dứt trong quá khứ, hiện tại và tương lai lớn hơn ngày có hiệu lực
-Đăng ký lại một bệnh nhân chấm dứt điều trị với ngày có hiệu lực hiện tại, quá khứ và tương lai Khôi phục một số bệnh nhân đã chấm dứt điều trị
3 Negative flow System
Testing
-Với dữ liệu không đầy đủ , đăng ký một bệnh nhân-Với một bệnh nhân đã chấm dứt điều trị , xuất một hóa đơn thanh toán bảo hiểm cho tháng tiếp theo.4.System Integration
Testing
- Xác thực nguồn cấp dữ liệu cho các hệ thống hạ nguồn như cổng nhà cung cấp, cổng môi giới, hệ thống tài chính và hệ thống khiếu nại
- Xác thực nếu các thay đổi từ cổng thông tin bệnh nhân được kết hợp trong hồ sơ bệnh nhân tương ứng
- Xử lý việc thanh toán hóa đơn phí bảo hiểm được tạo bằng nguồn cấp dữ liệu từ cổng thông tin bệnh nhân có thông tin chi tiết về khoản thanh toán tạo
d) Kiểm thử hệ thống khiếu nại (Testing of claim system)
Trang 20Kịch bản kiểm thử Các trường hợp kiểm thử
1.Hệ thống khiếu nại -Các khiếu nại về chăm sóc sức khoẻ phải chỉnh
sửa, nhập và xử lý các khiếu nại cho một bệnh nhâncũng như người bảo hộ
-Đối với khiếu nại không hợp lệ, nên thông báo lỗi khi nhập dữ liệu không chính xác
2.Positive Flow System
Testing
Nên bao gồm các kịch bản để chỉnh sửa, nhập và xử
lý các khiếu nại cho một bệnh nhân cũng như ngườibảo hộ
3.Negative Flow System
Testing
-Xác thực và nhập một yêu cầu có mã thủ tục và mãchẩn đoán không hợp lệ
-Xác thực và nhập một khiếu nại với ID nhà cung cấp không hoạt động
-Xác thực và nhập một khiếu nại với một bệnh nhân
đã chấm dứt điều trị
4.System Intergration Bao gổm một kịch bản để xác nhận nguồn cấp dữ
liệu cho cá hệ thống hạ nguồn như nhà cung cấp và cổng thông tin tài chính
e) Kiểm thử hệ thống tài chính (Testing of finance system)
Kịch bản kiểm thử Các trường hợp kiểm thử
1.Hệ thống tài chính Đăng ký, khôi phục và hủy thông tin một bệnh nhân2.Positive flow system
testing
Kiểm tra xem số tài khoản,địa chỉ của bệnh nhân tương ứng, nhà cung cấp hoặc nhà môi giới tương ứng có chính xác hay không để thanh toán
3.Negative flow system
testing
-Xác minh xem thanh toán thực hiện cho một bệnh nhân, nhà cung cấp hoặc ID nhà môi giới có không hợp lệ hay không bằng cách tạo một bản ghi tương ứng trong nguồn cấp dữ liệu
f) Kiểm thử sự tuân thủ quy định (Testing of regulatory compliance)
Kịch bản kiểm thử Các trường hợp kiểm thử
1.Xác minh người dùng Sử dụng phương pháp xác minh để đảm bảo rằng
những người dùng đúng đăng nhập được vào hệ