UC_001_Xem bài học Use case: UC_001_Xem bài học Mục đích: Xem danh sách bài học Tác nhân: Sinh Viên, Giảng viên Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống Luồng sự kiện chí
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA: CNTT -
BÁO CÁO HỌC PHẦN KIỂM
Trang 2Hà Nội – Năm 2021
Trang 3Mục lục
PHẦN 1 MỞ ĐẦU
PHẦN 2 KẾT QUẢ NGHIÊN CỨU
2.1 TỔNG QUAN
2.2 TÌM HIỂU CÔNG CỤ KIỂM THỬ PHẦN NỀM
2.2.1 Giới thiệu công cụ
2.2.2 Đặc điểm
2.2.3 Cài đặt và sử dụng công cụ Test Project
2.3 Giới thiệu phần mềm Test Project
2.3.1 Giới thiệu
2.3.2 Tài liệu đặc tả yêu cầu phần mềm
2.4.1.1 Đặc tả yêu cầu chức năng (Functional)
2.4.1.2 Đặc tả yêu cầu phi chức năng (Non Functional) 19
2.4.5 Nguyễn Ngọc Lan – Cập nhật thông tin cá nhân 27
2.4.6 Triệu Thị Phương Thảo – Tra cứu kết quả học tập 28
2.4.7 Triệu Thị Phương Thảo – Đổi mật khẩu cá nhân 28
Trang 42.4.8.2 Thực hiện kiểm thử 30
2.4.14 Trịnh Thái Quảng – Liên kết với Facebook 34
2.4.15 Trịnh Thái Quảng – Liên kết với Youtube 34
PHẦN 3 KIẾN THỨC LĨNH HỘI VÀ BÀI HỌC KINH NGHIỆM 36
PHẦN 1 MỞ ĐẦU
- Chủ đề nghiên cứu là sử dụng công cụ kiểm thử tự động để kiểm thử
website học Tiếng Anh.
Vì kiểm thử tự động là công cụ dễ sử dụng, tiện lợi, giúp tiết kiệm thời gian, giảm chi phí vì thực hiện cùng một hành động kiểm thử nhiều lần, không chỉ mất nhiều thời gian hơn mà còn làm giảm hiệu quả của người kiểm thử
Một lợi ích lớn khác của việc kiểm thử tự động là khả năng sử dụng lại các tập lệnh kiểm thử Viết các trường hợp kiểm thử hiệu quả đòi hỏi rất nhiều thời gian và công sức, và để viết các trường hợp kiểm thử tương tự một lần nữa có thể khiến một người kiệt sức về tinh thần Với các công cụ kiểm thử tự động, tập lệnh kiểm thử có thể được sử dụng lại nhiều lần khi bạn cần, và tiết kiệm cả thời gian và công sức cho bạn.
Trong trường hợp kiểm thử thủ công, tester phải báo cáo cho nhau bằng tay
để biết có bao nhiêu test scripts đã được viết và bao nhiêu lỗi đã được sửa
Trang 5Toàn bộ quá trình rất cồng kềnh và dẫn đến sự phụ thuộc lẫn nhau Báo cáo
kiểm thử giúp bạn phân tích hàng trăm trường hợp kiểm thử dễ dàng.
Khả năng thực hiện kiểm thử trên nhiều nền tảng song song: Khi phát triển một trang web, điều cần thiết là đảm bảo khả năng tương thích trên các trình duyệt, phần cứng, hệ điều hành, mạng và thiết bị di động khác nhau.
Để có thể kiểm thử tốt thì cần có các kĩ năng chuyên môn: Lập bảng điều kiện theo phương pháp phân vùng hoặc giá trị tương đương Tạo các testcase kiểm thử giao diện, các testcase function, testcase data Từ đó ta có file để nhập vào cho công cụ kiểm thử tự động thực hiện quá trình kiểm thử.
- Kỹ năng then chốt phải đạt được mục chuẩn đầu ra của học phần :
+ Trau dồi kiến thức liên tục, không chỉ kiến thức của ngành công nghệ thông tin mà còn là kiến thức đa ngành nghề khác để bổ trợ cho công việc + Cập nhật những xu hướng cũng như những công nghệ mới để có thể đưa ra được những bản kiểm thử sâu xa và vượt qua những yêu cầu khách hàng đã đặt ra từ trước
+ Tính luôn tò mò, thắc mắc, đặt ra câu hỏi cho các vấn đề, các phần mềm để có thể góp phần tại ra 1 sản phẩm có chất lượng nhất.
+ Tính kiên trì với công việc, kiên trì đặt ra các câu hỏi sâu để cải thiện sản phẩm của nhóm.
+ Kĩ năng giao tiếp, khả năng giao tiếp để có thể là cầu nối giữa khách hàng và team thiết kế phần mềm, có thể truyền đạt được những kiến thức đặc thù ngành tới cho khách hàng 1 cách dễ hiểu những như là đơn giản nhất Kết luận: Tất cả các kĩ năng trên không phải ngày một ngày hai mà có được
vì thế chúng ta luôn phải rèn luyện mỗi ngày để tạo ra một bản kiểm thử tốt nhất, chuẩn đầu ra.
PHẦN 2 KẾT QUẢ NGHIÊN CỨU
- Trình bày những nhiệm vụ, công việc chính khi thực hiện Tiểu luận, Bài tập lớn, Đồ án/Dự án và kết quả đạt được.
- Mô tả sản phẩm nghiên cứu theo chủ đề được giao trong quá trình thực hiện Tiểu luận, Bài tập lớn, Đồ án/Dự án, bao gồm:
Trang 6mục tài liệu tham khảo.
2.1 TỔNG QUAN
Kiểm thử phần mềm là rất quan trọng vì những lý do sau:
1 Kiểm thử phần mềm là thực sự cần thiết vì nó chỉ ra những khiếm khuyết
và sai sót đã được thực hiện trong giai đoạn phát triển
2 Nó quan trọng vì nó đảm bảo độ tin cậy của khách hàng và sự hài lòng của họ trong ứng dụng.
3 Nó là rất quan trọng vì nó đảm bảo chất lượng của sản phẩm Chất lượng sản phẩm giao cho khách hàng giúp trong việc đạt được sự tự tin của họ (Biết thêm về chất lượng phần mềm )
4 Kiểm thử là cần thiết vì nó cung cấp các tiện nghi cho khách hàng như giao hàng sản phẩm chất lượng cao hoặc các ứng dụng phần mềm mà đòi hỏi chi phí bảo trì thấp hơn và do đó kết quả vào kết quả chính xác hơn, phù hợp và đáng tin cậy.
5 Kiểm thử là cần thiết cho một hoạt động hiệu quả của ứng dụng phần mềm hoặc sản phẩm.
6 Điều quan trọng là để đảm bảo rằng các ứng dụng không có bất kỳ kết quả nào thất bại, bởi vì nó có thể rất đắt tiền trong tương lai hoặc trong các giai đoạn sau của sự phát triển.
7 Đó là yêu cầu thiết yếu giúp sản phẩm tồn tại trong kinh doanh.
Có 6 giai đoạn trong kiểm thử phần mềm đã học:
1 Requirement analysis – Phân tích yêu cầu
2 Test planning – Lập kế hoạch kiểm thử
3 Test case development – Thiết kế kịch bản cho quy trình kiểm thử
4 Test environment set up – Thiết lập môi trường kiểm thử
5 Test execution – Thực hiện kiểm thử
6 Test cycle closure – Đóng chu trình kiểm thử
Các kỹ thuật kiểm thử phần mềm:
1 Phân vùng tương đương (Equivalence Class Partitioning)
2 Phân tích giá trị biên (Boundary Value Analysis (BVA) )
3 Bảng hỗ trợ quyết định quyết định (Decision Table based testing)
4 Kiểm thử điều hướng người dùng (User Navigation Testing)
5 Kiểm thử giao diện (Transaction Screen Testing)
6 Kiểm thử màn hình báo cáo (Report Screen Testing)
7 Kiểm thử luồng báo cáo (Report Flow Testing)
Trang 78 Kiểm thử việc Database Create/Retrieve/Update/Delete Testing.
9 Kiểm thử hệ thống: Kiểm thử sự trôi chảy (dễ dùng), Kiểm thử dung lượng, Kiểm thử chịu tải, Kiểm thử khả dụng, Kiểm thửu bảo mật, Kiểm thử hiệu năng, Kiểm thử lưu trữ, Kiểm thử cấu hình, Kiểm thử tính tương thích/ chuyển đổi/cấu hình, Kiểm thử cài đặt, Kiểm thử độ tin cậy, Kiểm thử phục hồi, Kiểm thử dịch vụ, Kiểm thửu tài liệu, Kiểm thử thủ tục.
2.2.1Giới thiệu công cụ
Kiểm thử tự động: Là xử lý một cách tự động các bước thực hiện các testcase, kiểm thử tự động bằng một công cụ nhằm rút ngắn thời gian kiểm thử
Kiểm thử tự động: là một kỹ thuật tự động trong đó người kiểm thử tự viết các tập lệnh và sử dụng phần mềm phù hợp để kiểm thử phần mềm Nó về cơ bản là một quá trình tự động hóa của một quy trình kiểm thử thủ công Giống như kiểm thử hồi quy, kiểm thử tự động cũng được sử dụng để kiểm thử ứng dụng theo quan điểm tải, hiệu năng và ứng suất
Sự phát triển của công cụ kiểm thử Test Project: TestProject là một công cụ tự động hóa mạnh mẽ nhằm đơn giản hóa trải nghiệm kiểm thử tự động của bạn Nó cũng cho phép cả đội,nhóm tiếp cận đầy đủ về chất lượng bằng cách cho phép cộng tác hiệu quả trên các giải pháp kiểm thử tự động
TestProject là một công cụ định hướng cộng đồng và có gói vĩnh viễn miễn phí với đầy đủ tính năng và bạn có thể bắt đầu sử dụng trong giây lát
2.2.2Đặc điểm
- TestProject được xây dựng trên các công cụ tự động hóa nguồn mở như Selenium và Appium
- Phiên bản của Test Project: Test Project v3.4.0
- Test Project là công cụ hỗ trợ kiểm thử tự động Các ngôn ngữ lập trình chương trình phần mềm kiểm thử cài đặt: Java, C#, Python, JavaScript.
Nội dung trình bày ở đây : Nêu đặc điểm công cụ:
- công cụ mã nguồn mở hay đóng;
- phiên bản mới
- công cụ hỗ trợ các loại kiểm thử nào và ngôn ngữ lập trình
chương trình phần mềm kiểm thử cài đặt
- đặc điểm khác nếu có …
(Kiểu Normal - Font Times New Roman 13, justified)
2.2.3Cài đặt và sử dụng công cụ Test Project
- Hệ điều hành công cụ Test Project được cài đặt trên: Windows, Mac, Linux, Docket
Trang 8- Các yêu cầu về phần cứng hay phần mềm hỗ trợ:
• Bộ vi xử lý hỗ trợ bộ chỉ dẫn SSE2
• CD-/DVD-ROM (để cài đặt từ đĩa CD)
• 270 MB không gian đĩa trống trên ổ đĩa cứng
• Truy cập internet
• Microsoft Internet Explorer 8.0 hoặc cao hơn
• Microsoft Windows Installer 3.0 trở lên
• Microsoft.NET Framework 4 hoặc cao hơn
• Bộ vi xử lý với xung nhịp 1 GHz hoặc cao hơn
• 1 GB RAM (Hệ điều hành 32-bit); 2 GB RAM (Hệ điều hành 64-bit)
• Microsoft Edge phiên bản 20.x – 25.x trở lên
• Mozilla Firefox phiên bản 52.x – 60.x trở lên
• Mozilla Firefox ESR 52.x
• Google Chrome phiên bản 44.x – 52.x
Trang 9Giới thiệu phần mềm Test Project
+ Hợp tác toàn đội Tự động hóa kiểm tra hoạt động tốt nhất khi cả nhóm có thể làm việc cùng nhau trên cùng một nền tảng
TestProject giúp cho việc chia sẻ các bài kiểm tra giữa các thành viên trong nhóm trở nên dễ dàng và đơn giản
+ Khả năng mở rộng Có một thư viện các phần bổ trợ được chia sẻ có sẵn để giúp bạn mở rộng các khả năng mặc định của TestProject Với tư cách là một nhóm, bạn cũng có thể tạo các chương trình bổ trợ của riêng mình để đơn giản hóa công việc bạn đang làm.
+ Tích hợp vào quy trình công việc hiện có TestProject có một API
mà bạn có thể sử dụng để chạy nó trong quy trình tích hợp liên tục hiện có Nó cũng có SDK dành cho nhà phát triển cho phép bạn tạo các thử nghiệm hoặc nhập các thử nghiệm hiện có mà bạn có thể có vào nền tảng
+ Trình duyệt chéo và Nền tảng chéo Bạn có thể tạo và chạy các thử nghiệm di động (Android và iOS) và TestProject có thể được cài đặt trên bất kỳ nền tảng nào (Windows, Linux hoặc MacOS) Chỉ mất một lần cài đặt đơn giản để ngay lập tức có quyền truy cập vào thử nghiệm trên tất cả các nền tảng và trình duyệt được kết nối.
+ Công nghệ đáng tin cậy TestProject sử dụng công nghệ đáng tin cậy và đã được chứng minh như Selenium và Appium để có một cách tương tác mạnh mẽ và dễ hiểu với các trang web Rảnh rỗi! Gói Miễn phí Mãi mãi mà TestProject cung cấp là vô song trong thế giới tự động hóa thử nghiệm về các tính năng và khả năng mà bạn nhận được TestProject là một sản phẩm mạnh mẽ và đầy đủ tính năng mà bất kỳ ai cũng có thể sử dụng miễn phí Tại TestProject, chúng tôi tin tưởng vào việc hỗ trợ cộng đồng thử nghiệm và vì vậy chúng tôi đã làm mọi thứ có thể để đảm bảo người thử nghiệm có thể sử dụng công cụ này.
Trang 102.2.5Tài liệu đặc tả yêu cầu phần mềm
2.4.1.1 Đặc tả yêu cầu chức năng (Functional)
a UC_001_Xem bài học
Use case: UC_001_Xem bài học
Mục đích: Xem danh sách bài học
Tác nhân: Sinh Viên, Giảng viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Luồng sự kiện
chính (Basic
flows)
1 Tác nhân kích vào nút “Dạy học kết hợp” trên thanh menu
2 Hệ thống lấy dữ liệu từ bảng KHOAHOC và hiển hiển thịgiao diện gồm danh sách các khóa học lên màn hình
3 Tác nhân kích nút vào một khóa học
4 Hệ thống lấy dữ liệu liệu từ bảng BAIHOC theo mã khóahọc, hiển thị danh sách các bài học lên màn hình
“Chưa có khóa học nào”
2 Tại bước 4 của luồng sự kiện chính nếu trong bảng BAIHOCchưa có dữ liệu liệu thì hiển thị thông báo “Chưa có bài họcnào”
3 Tại tất cả các bước trong luồng sự kiện chính nếu không truycập được vào CSDL thì hiển thị thông báo lỗi
Điều kiện sau: Xem được danh sách bài học
b UC_002_Tra cứu kết quả học tập
Use case: UC_002_Tra cứu kết quả học tập
Mục đích: Tra cứu được kết quả học tập của sinh viên
Tác nhân: Sinh Viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Luồng sự kiện
chính (Basic
flows)
1.Sinh viên kích nút “Trang chủ”
2.Hệ thống sẽ hiển thị giao diện trang chủ lên màn hình
3.Sinh viên kích nút “Kết quả thi”
4.Sinh viên nhập mã sinh viên
Trang 115.Sinh viên kích nút “Tra cứu”
6.Hệ thống truy cập vào bảng KETQUA và lấy điểm thi theo mã sinh viên, hiển thị điểm lên màn hình
Use case: UC_003_Học online
Mục đích: Sinh viên tham gia học online trên hệ thống
Tác nhân: Sinh Viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Luồng sự kiện
chính (Basic
flows)
1 Sinh viên kích vào bài học
2 Hệ thống lấy dữ liệu bài học từ bảng BAIHOChiển thị lên màn hình
3 Sinh viên học và làm bài theo hướng dẫn
4 Hệ thống ghi nhận kết quả học của sinh viên và lưuvào bảng BAIHOC và mở khóa bài học tiếp theocho sinh viên
2 Tại bước 4 của luồng sự kiện chính nếu sinh viên hoànthành xong hết các bài học thì hiển thị thông báo
“Chúc mừng bạn đã học xong bài này”
3 Tại bất kỳ bước nào trong luồng sự kiện chính nếukhông truy cập được vào CSDL thì hiển thị thông báolỗi
Điều kiện sau: Sinh viên học được bài
Trang 12d UC_004_Xem lịch thi
Use case: UC_004 - Xem lịch thi
Mục đích: Sinh viên và Giảng viên xem được lịch thi trên hệ thống
Tác nhân: Sinh viên và Giảng viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
2 Giảng viên nhập mã giảng viên đã có trong cơ sở
dữ liệu và ấn nút Tra cứu
3 Hệ thống hiển thị giao diện lịch thi gồm stt, thờigian thi, mã môn thi, mã dự thi, địa điểm thi
2 Hệ thống hiển thị thông báo “không có lịch thi”
3 Tại bất kỳ bước nào của luồng sự kiện chính, nếukhông kết nối được với cơ sở dữ liệu thì hệ thống hiểnthị thông báo lỗi
Điều kiện sau: Xem được lịch thi
e UC_005_Tên use case
Trang 13Use case: UC_005_Làm bài thi
Mục đích: Use case này cho phép sinh viên tham gia làm bài thi trên hệ
thống
Tác nhân: Sinh viên
Điều kiện trước: Sinh viên cần đăng nhập vào hệ thống
3 Sinh viên kích nút Hoàn thành
4 Hệ thống hiển thị kết quả thi của Sinh viên
Điều kiện sau: Sinh viên tham gia thi được
f UC_006_Tên use case
Use case: UC_006_Cập nhật thông tin cá nhân
Mục đích: Sinh viên và Giảng viên cập nhật được thông tin cá nhân của
mình
Tác nhân: Sinh viên và Giảng viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Luồng sự kiện
chính (Basic
flows)
Sinh viên:
1 Sinh viên chọn chức năng Cá nhân
2 Hệ thống hiển thị 3 chức năng gồm: thông tin, đổimật khẩu, ảnh đại diện
3 Sinh viên chọn chức năng Thông tin
4 Hệ thống hiển thị ra màn hình thông tin của sinh
Trang 14viên bao gồm: họ tên, giới tính, địa chỉ, quê quán,
Giảng viên:
1 Giảng viên chọn chức năng Cá nhân
2 Hệ thống hiển thị 3 chức năng gồm: thông tin, đổimật khẩu, ảnh đại diện
3 Giảng viên chọn chức năng Thông tin
4 Hệ thống hiển thị ra màn hình thông tin của sinhviên bao gồm: họ tên, giới tính, địa chỉ, quê quán,
Điều kiện sau: Cập nhật được thông tin cá nhân
g UC_007_Xem thông tin lớp
Use case:UC_007_Xem thông tin lớp
Mục đích:
Sinh viên: xem thông tin các nhân và các bạn trong lớp
Trang 15Giảng viên: xem thông tin của các sinh viên trong các lớp.
Tác nhân: Sinh viên, Giảng viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Use case: UC_008_Chơi game TA
Mục đích: Sinh viên vừa chơi game vừa học tiếng anh
Tác nhân: Sinh viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Luồng sự kiện
chính (Basic
flows)
1 Sinh viên ấn vào nút “Games”
2 Hệ thống hiển thị danh sách các trò chơi
3 Sinh viên ấn vào trò chơi muốn chơi
4 Hệ thống sẽ hiển thị giao diện trò chơi
Trang 16Điều kiện sau: Sinh viên chơi được game tiếng anh
i UC_009_Xem và nhập điểm SV
Use case: UC_009_Xem và nhập điểm SV
Mục đích: Giảng viên xem và nhập điểm cho sinh viên
Tác nhân: Giảng viên
Điều kiện trước: Giảng viên phải đăng nhập vào hệ thống.
3 Giảng viên kích nút “Nhập điểm”
4 Hệ thống lấy danh sách lớp trong bảng LOP theo mãhọc phần hiển thị danh sách điểm của lớp học phần
5 Giảng viên nhập điểm cho từng sinh viên trong lớphọc phần đó và cuối cùng kích nút “Cập nhật”
6 Hệ thống cập nhật dữ liệu vào bảng KETQUA saudód hiển thị thông báo cập nhật thành công
Điều kiện sau: Cập nhật được điểm cho sinh viên
j UC_010_Quản lý tiến độ học tập của sinh viên
Use case: UC_010_Quản lý tiến độ học tập của sinh viên
Mục đích: Giảng viên có thể xem tiến độ học tập của sinh viên
Tác nhân: Giảng viên
Điều kiện trước: Giảng viên phải đăng nhập hệ thống
Trang 17Tác nhân: Giảng viên, sinh viên
Điều kiện trước: Tác nhân phải đăng nhập hệ thống
Luồng sự kiện
chính (Basic
flows)
1 Tác nhân kích nút “Đổi mật khẩu”
2 Hệ thống hiển thị màn hình giao diện đổi mật khẩu
3 Tác nhân nhập mật khẩu cũ, mật khẩu mới và nhập lạimật khẩu mới
Trang 18in thường, một chữ cái in hoa, một số, một ký tự đặc biệt)
và yêu cầu nhập lại
3 Hệ thống hiển thị thông báo lỗi nếu nhập lại mật khẩu mớikhông trùng với mật khẩu cũ
4 Hệ thống hiển thị thông báo lỗi nếu dữ liệu không đượccập nhật lên cơ sở dữ liệu
Điều kiện sau: Không có
l UC_012_Theo dõi quá trình thi của SV
Use case: UC_012_Theo dõi quá trình thi của SV
Mục đích: Giáo viên theo dõi quá trình thi của sinh viên
Tác nhân: Giảng viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Luồng sự kiện
chính (Basic
flows)
1 Giảng viên ấn vào nút “Thi trên máy”
2 Hệ thống hiển thị thông tin phòng thi
3 Giảng viên ấn vào phòng thi để kích hoạt
4 Hệ thống sẽ hiển thị danh sách thông tin sinh viên gồm mãsinh viên, tên sinh viên, số báo danh từ bảng SINHVIEN,quá trình làm bài và thời gian làm bài lên màn hình
5 Sau khi hết thời gian làm bài thi Giảng viên ấn vào nút “Kếtthúc” để khóa phòng thi
Luồng sự kiện
phụ (Alternative
Flows):
1 Tại bước 2 trong luồng sự kiện chính nếu giảng viên không
ấn kích hoạt thì hệ thống sẽ hiển thị thông báo yêu cầu kíchhoạt
2 Tại bước 5 trong luồng sự kiện chính nếu giảng viên không
ấn vào nút kết thúc thì hệ thống sẽ tự nộp bài thi
Điều kiện sau: Hoàn thành quá trình theo dõi sinh viên làm bài thi
Trang 19m.UC_013_Reset mật khẩu của Sinh viên
Use case: UC_013_Reset mật khẩu của Sinh viên
Mục đích: Giảng viên reset lại mật khẩu của sinh viên
Tác nhân: Giảng viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Luồng sự kiện
chính (Basic
flows)
1 Giảng viên xem thông tin chi tiết lớp học
2 Hệ thống hiển thị danh sách sinh viên
3 Giảng viên kích chọn Reset mật khẩu cho sinh viêntương ứng
4 Hệ thống sẽ xóa mật khẩu cũ và hiển thị mật khẩumới lên màn hình
Điều kiện sau: Reset được mật khẩu của Sinh viên
n UC_014_Phản hồi ý kiến
Use case: UC_014_Phản hồi ý kiến
Mục đích: Sinh viên gửi ý kiến báo cáo lên hệ thống
Tác nhân: Sinh viên
Điều kiện trước: Tác nhân phải đăng nhập vào hệ thống
Trang 202 Tại bước 3 trong luồng sự kiện chính, nếu sinh viênchọn nút Thoát thì hệ thống quay lại màn hình chính.
3 Tại bất kỳ bước nào trong luồng sự kiện chính, nếukhông kết nối được với cơ sở dữ liệu thì hệ thống sẽhiển thị thông báo lỗi
Điều kiện sau: Sinh viên gửi được ý kiến
o UC_015_Đăng nhập
Use case: UC_015_Đăng nhập
Mục đích: Tác nhân đăng nhập vào hệ thống để thực hiện các chức năng
khác
Tác nhân: Sinh viên, giảng viên
Điều kiện trước: Tác nhân phải có tài khoản
2 Tại bước 3 trong luồng sự kiện chính, nếu sinh viênchọn nút Thoát thì hệ thống quay lại màn hình chính
3 Tại bất kỳ bước nào trong luồng sự kiện chính, nếukhông kết nối được với cơ sở dữ liệu thì hệ thống sẽhiển thị thông báo lỗi
Điều kiện sau: Tác nhân đăng nhập được vào hệ thống
Trang 21p UC_015_Đăng xuất
Use case: UC_015_Đăng xuất
Mục đích: Tác nhân đăng xuất khỏi hệ thống
Tác nhân: Sinh viên, giảng viên
Điều kiện trước: Tác nhân phải có tài khoản
Điều kiện sau: Tác nhân thoát khỏi hệ thống
2.4.1.2 Đặc tả yêu cầu phi chức năng (Non Functional)
a Các yêu cầu trang web eop.edu.vn
Eop.edu.vn là trang web học tiếng anh trực tuyến do vậy giao diện cần thân thiện với người dùng, dễ dàng sử dụng.
- Menu chính:
+ Trang chủ:xem logo, form tra cứu, thông báo mới nhất của trường
+ Tin tức: các hoạt động của khoa ngoại ngữ
+ Cộng đồng: video FFL – Khoa ngoại ngữ Đại học công nghiệp Hà Nội.+ Giảng viên: đội ngũ cán bộ giảng viên
+ Ngoại khoá: các chương trình ngoại khoá
+ Câu lạc bộ: các câu lạc bộ trong khoa ngoại ngữ
+ Liên hệ: form liên hệ, gửi ý kiến phản hồi
+ Đăng nhập: đưa đến trang đăng nhập
- Thông báo: Các thông báo từ ban giám hiệu, giáo viên
- Dạy học kết hợp: hiển thị các lớp học phần
- Thi trên máy: hiển thị các bài thi trên máy
- Games: đưa đến trang chơi game
- Lớp học: hiển thị danh sách lớp học
- Cá nhân: hiển thị thông tin cá nhân,đổi mật khẩu và ảnh đại diện
- Tạo bài thi: truy xuất vào kho bài thi, lấy ra, tạo và chỉnh sửa bài thi
b Các yêu cầu về phần cứng
- Nơi lưu trữ cơ sở dữ liệu: Máy chủ đặt tại trường, bản backup trên server
Trang 22của bên thứ ba.
- Kết nối: Thông qua hệ thống internet,wifi
- Thiết bị hỗ trợ: Sử dụng được với tất cả các trình duyệt web và thiết bi máytính bảng, điện thoại, PC
- Các giao thức được sử dụng: TCP/IP (Transmission Control Protocol)/ (Internet Protocol), HTTP (HyperText Transfer Protocol)
c Các yêu cầu về giao diện ứng dụng
- Trên giao diện ứng dụng của các trình duyệt khác nhau thì cần yêu cầu responsive(phản hồi) để phù hợp với các thiết bị máy tính, máy tính bảng, điện thoại
d Các yêu cầu khác
- Bảo mật thông tin
- Độ tin cậy cao, thông tin trên web rõ ràng, chính xác
- Hệ thống website hoạt động 24/24
- Sử dụng được nhiều ngôn ngữ
- Phù hợp với nhiều hệ điều hành trên máy tính, điện thoại
- Tốc độ truyền tải nhanh chóng
- Thường xuyên nâng cấp để phù hợp với mục đích sử dụng
- Hạn chế trường hợp sập mạng
- Các quy tắc nghiệp vụ:
+ Chỉ những người có tài khoản mới được đăng nhập vào hệ thống đểxem điểm, lịch dạy, lịch thi, xem bài học, xem thông tin cá nhân,…+ Phân lớp người dùng, mỗi người dùng có chức năng riêng
+ Bảo trì định kì 3 tháng 1 lần
2.3 Kiểm thử phần mềm Test Project
2.3.1Lập kế hoạch kiểm thử (test plan)
2.4.1.1 Chiến lược kiểm thử
a Kiểm thử chức năng (Functional Testing)
Mục đích test: Đảm bảo mục tiêu test đúng đắn của chức năng, bao gồm định
hướng, dữ liệu đầu vào, xử lý và dữ liệu nhận được
Cách thực hiện: Thực hiện mỗi Use Case, chu trình Use Case hoặc chức năng, sử
dụng dữ liệu hợp lệ và không hợp lệ để kiểm tra:
- Kết quả mong đợi với dữ liệu hợp lệ:
+ Giảng viên: đăng nhập thành công có thể xem thông tin, nhập điểm, quản lý tiến độ học tập của sinh viên, đổi mật
Trang 23khẩu giảng viên.
+ Sinh viên: đăng nhập thành công có thể xem thông tin cá nhân, xem bài học, tra cứu kết quả học tập, đổi mật khẩu và học online
- Thông báo hiển thị khi dữ liệu không hợp lệ: đăng nhập không thành công, hệ thống yêu cầu nhập lại
Điều kiện hoàn
thành:
- Toàn bộ kế hoạch kiểm thử đã được thực hiện
- Toàn bộ các lỗi phát hiện ra đã được ghi nhận
- Các đối tượng và thuộc tính màn hình như menus, size, position, state, và tập trung vào việc tương thích với chuẩn
Cách thực hiện:
- Tạo ra các ca kiểm thử cho mỗi màn hình để kiểm tra việc
sử dụng đúng cách và tình trạng các đối tượng cho mỗi màn hình và đối tượng của ứng dụng
Kiểm thử giao diện lúc khởi tạo Lúc này ta test được giá trị mặc định,kích thước,màu sắc, của các đối tượng Kiểm tra xem giá trị trong các đối tượng đó được đúng với bản yêu cầu đặc tả của khách hàng không Trong thực tế có nhiều đối tượng không đúng với đặc tả, cần phải:
+ Kiểm tra màu nền, chữ của toàn bộ đối tượng + Kiểm tra mặc định tất cả các ký tự chữ căn trái và ký tự
số đều căn phải.
+ Kiểm tra màu chữ, font, font size của tất cả các dòng văn bản đặt trong textbox
- Thao tác đối với từng giao diện cho từng chức năng của phần mềm đối với Giảng viên và Sinh viên
Điều kiện hoàn
thành:
Mỗi màn hình được kiểm tra thành công đúng với phiên bản kiểm tra hoặc phạm vi chấp nhận được, không có sự sai lệch
Trang 24Các vấn đề đặc
biệt:
Không phải toàn bộ các thuộc tính của các đối tượng đều truy cập được
c Giai đoạn kiểm thử
Kiểu kiểm thử Giai đoạn kiểm thử
Đơn vị Tích hợp Hệ thống Chấp nhận
d Các công cụ test
Mục đích Công cụ Nhà cung cấp/Tự xây dựng Phiên bản
e Môi trường kiểm thử
- Quá trình kiểm thử thực hiện trên môi trường Window
- Trình duyệt được sử dụng là Google Chorme và Mozilla FireFox
Trịnh Thái Quảng Test Manager / Test Designer / Tester: Lập kế hoạch kiểm thử,
quản lý tiến độ hoạt động kiểm thử, thiết kế các test case bổ sung và thực thi các test case bổ sung
Nguyễn Ngọc Lan Test Designer / Tester: Thiết kế, viết và thực thi các test case
cho Admin, xem lại Test Plan
Trang 25Tạ Thị Giang Test Designer / Tester: Thiết kế, viết và thực thi các test case
cho Người dùng: Đăng ký, Đăng nhập, Quên mật khẩu, xem lại Test Plan
Triệu Thị Phương
Thảo
Test Designer / Tester: Thiết kế, viết và thực thi các test case cho Người dùng: Tìm kiếm, Xem bài học, xem lại Test Plan
Nguyễn Việt Trung Test Manager / Test Designer / Tester: Lập kế hoạch kiểm thử,
quản lý tiến độ hoạt động kiểm thử, thiết kế các test case bổ sung và thực thi các test case bổ sung
g Hệ thống
Intel Core i7, 2.4
GHz
Microsoft Edge 94.0.992.38 Trình duyệt web
Google Chrome 95.0.4638.40 Trình duyệt web
2.4.1.3 Các mốc kiểm soát giai đoạn test
Giờlàmviệc
%hoànthành
Chúthích
1 Xem lại tài
liệu
Trang 26Tra cứu kết
quả học tập
Triệu Thị Phương Thảo
Kế hoạch
học tập
Nguyễn Việt Trung
Liên kết với
Trịnh Thái Quảng
Trang 27Liên kết với
youtube
Trịnh Thái Quảng
2.3.2 Tạ Thị Giang – Chức năng đăng nhập
2.4.1.4 Phân tích thiết kế kiểm thử
• Giao diện chức năng: đăng nhập
• Giao diện chức năng đăng nhập có:
+ Tên tài khoản là mã sinh viên tồn tại trong CSDL
+Mật khẩu không được để trống và phải đúng
• Sử dụng các phương pháp phân vùng tương đương để lấy cơ sở tìm test case
• Danh sách các test case:
id Tên test case Data input(dữ liệu nhậpvào) mong chờKết quả
(output)
Ghichú
Mã sinh viên Mật Khẩutc_001 Đăng nhập thành công 2019603805 Giangta01* đăng nhập thành công I1, I2tc_002 Mật khẩu sai
đăng nhập không thành
tc_003 Mật khẩu để trống 2019603805 đăng nhập I1, K4
Trang 28không thành công
tc_004 Mã sinh viên không đúng
20 Giangta01*
đăng nhập không thành
tc_005 Mã sinh viên để trống
Giangta01*
đăng nhập không thành
2.4.1.5 Thực hiện kiểm thử
Trang 29B1: Nhập mã sinh viênB2: Nhập mật khẩu
B3: Kích nút đăng nhập
Trang 30B4:Hiển giao diện đăng nhập
- Kết luận: Bài toán đã thành công 75% test case đã thực hiện
2.3.3Tạ Thị Giang – Chat
2.4.1.6 Phân tích thiết kế kiểm thử
-Giao diện chức năng Chat
Trang 31● Giao diện chức năng đăng nhập có:
+ Khung chat không được để trống
+Biểu tượng icon dùng để gửi các icon có mã từ 1-73
+Biểu tượng gửi file dùng để gửi một số file có định dạng
là png, jpg, txt, docx
● Sử dụng các phương pháp phân vùng tương đương để lấy cơ sở tìm test case
● Danh sách các test case:
id Tên test case Data input(dữ liệunhập vào) Kết quả mong chờ(output) Ghichú
Khung chattc_006 Nhập tin nhắn vào khung chat xin chao Gửi được tin nhắn I3tc_007 Khung chat để trống Không gửi được tin nhắn K5
id Tên test case
Data input(dữ liệunhập vào) Kết quả mong chờ
(output) Ghichú
Mã số icon
tc_008 Mã số icon trong khoảng
tc_009 Mã số icon nhỏhơn 1 0 Không gửi được icon K6tc_010 Mã số icon lớn hơn 73 75 Không gửi được icon K7tc_011 Mã số icon để trống Không gửi được icon K8
id Tên test case Data input(dữ liệu nhập vào) Kết quả mong chờ(output) Ghichú
Trang 32file có định dạng
là docx, jpg, png, txt
Trang 33B3: chọn user để nhắn tin
B4: Nhập tin nhắn vào khung chat
Trang 34B5: Ấn Enter để gửi tin nhắn đi
B6:Chọn biểu tượng icon để gửi icon đi
Trang 35B7: Chọn icon muốn gửi
B8:Kích nút Enter để gửi
Trang 36B9: Kích nút vào biểu tượng file để gửi file
B10: Chọn file cần gửi
Trang 37B11: Kích Open để gửi file
Trang 38• mô tả giao diện và các điều kiện ràng buộc
• Sử dụng các phương pháp kỹ thuật đã học để lấy cơ sở tìm TC
• Lập danh sách các TC (theo template của cả nhóm) và ghi chú rõ các điều kiện bao phủ hay cơ chế tìm TC,
• Danh sách các TC:
2.4.1.9 Thực hiện kiểm thử
Nội dung trình bày ở đây :
• Thực hiện kiểm thử tự động : Nêu các bước thực hiện kiểm thử tự động
sử dụng công cụ tự chọn và đưa ra kết luận bài toán đã thực hiện thành công bao nhiều % TC đã lập
• Liệt kê các màn hình hay các bước thực hiện (nếu công việc lặp lại) mô
tả phần thực hiện kiểm thử tự động của mình và đưa ra kết luận bài toán
đã thực hiện thành công bao nhiều % TC đã lập
Bước 1 : Truy cập vào trang testproject.io :
Trang 39Bước 2 : Đăng nhập vào trang web bằng tài khoản đã đăng kí trong phần login:
Bước 3 : Sau khi đã vào trang chủ của Testproject.io, tạo 1 test mới :
Click vào phần +New test
Bước 4: Chọn phần web:
Bước 5: Đặt tên cho test sau đó click next
Trang 40Bước 6: Chọn trang web eop đã được cho vào từ trước đó và click next