NỘI DUNG
Bài viết bắt đầu bằng việc nêu rõ tính cấp thiết và mục đích của nghiên cứu, đồng thời xác định đối tượng và phạm vi nghiên cứu Phương pháp nghiên cứu được trình bày chi tiết, cùng với những đóng góp của luận văn Ngoài những nội dung này, luận văn còn bao gồm các chương tiếp theo để làm rõ hơn về chủ đề nghiên cứu.
TỔNG QUAN VỀ KIỂM THỬ PHẦN MỀM
Tổng quan về kiểm thử phần mềm
Kiểm thử phần mềm có rất nhiều định nghĩa khác nhau được để xuất bởi nhiều các nhân, tổ chức khác nhau
Kiểm thử phần mềm là quá trình đánh giá sản phẩm phần mềm trong môi trường thực tế mà nó sẽ được triển khai, nhằm cung cấp thông tin về chất lượng sản phẩm cho các bên liên quan Mục tiêu chính của kiểm thử phần mềm là phát hiện lỗi để đảm bảo hiệu suất tối ưu của phần mềm trong nhiều lĩnh vực khác nhau.
Kiểm thử phần mềm là quá trình khảo sát và đánh giá hệ thống hoặc thành phần trong các điều kiện xác định, nhằm quan sát và ghi lại các kết quả Theo Bảng chú giải thuật ngữ chuẩn IEEE, kiểm thử giúp xác định các khía cạnh quan trọng của phần mềm, đảm bảo chất lượng và hiệu suất của sản phẩm.
1.1.2 Vai trò của kiểm thử
1.1.2.1 Vai trò của kiểm thử phần mềm như sau:
Kiểm thử phần mềm là một bước quan trọng không thể thiếu trong quá trình phát triển sản phẩm, vì không có phần mềm nào hoàn hảo và miễn nhiễm với lỗi Mặc dù một số lỗi có thể không ảnh hưởng nhiều đến chức năng của sản phẩm, nhưng những lỗi nghiêm trọng cần được phát hiện và sửa chữa kịp thời để đảm bảo chất lượng và hiệu suất của phần mềm.
Kiểm thử phần mềm có nhiệm vụ chỉ ra các lỗi và những sai sót hình thành trong các giai đoạn phát triển sản phẩm phần mềm
Kiểm thử cần thiết vì nó đảm bảo độ tin cậy cho khách hàng và sự hài lòng của họ về phần mềm
Kiểm thử quan trọng trong việc đảm bảo chất lượng của sản phẩm Sản phẩm chất lượng được giao cho khách hàng giúp họ sử dụng hiệu quả hơn
Kiểm thử phần mềm là một bước quan trọng trong quy trình phát triển, giúp đảm bảo chất lượng sản phẩm cho khách hàng Việc này không chỉ giảm thiểu chi phí bảo trì mà còn mang lại kết quả chính xác, nhất quán và đáng tin cậy hơn cho các ứng dụng phần mềm.
Kiểm thử là yếu tố thiết yếu để nâng cao hiệu suất và hiệu quả của ứng dụng phần mềm hoặc sản phẩm Việc đảm bảo rằng ứng dụng không phát sinh lỗi là rất quan trọng, vì những lỗi này có thể gây tốn kém đáng kể trong tương lai hoặc ở các giai đoạn sau của quá trình phát triển phần mềm.
Kiểm thử là khâu quan trọng để đảm bảo hoạt động kinh doanh phần mềm Đảm bảo uy tín của chủ sở hữu sản phẩm đối với khách hàng
1.1.2.2 Vai trò và trách nhiệm của một người kiểm thử (Tester):
Trong giai đoạn lập kế hoạch và chuẩn bị thử nghiệm, người kiểm thử cần tham gia vào việc xây dựng kế hoạch thử nghiệm và phân tích các yêu cầu cũng như thông số kỹ thuật thiết kế Họ có thể đóng vai trò quan trọng trong việc xác định điều kiện thử nghiệm, tạo ra thiết kế thử nghiệm, trường hợp kiểm tra, đặc tả thủ tục kiểm tra và dữ liệu thử nghiệm, đồng thời thực hiện tự động hóa khi cần thiết.
Người kiểm thử thường thiết lập các môi trường thử nghiệm hoặc hỗ trợ quản trị hệ thống và nhân viên quản lý mạng
Khi tiến hành thử nghiệm ban đầu, số lượng người tham gia thường gia tăng, bắt đầu từ các công việc cần thiết để thực hiện các bước thử nghiệm trong môi trường kiểm tra.
Những kiểm thử viên thực hiện và đăng nhập các bài kiểm tra, đánh giá kết quả và các vấn đề tài liệu được tìm thấy
Kiểm thử viên thường theo dõi thử nghiệm và môi trường thử nghiệm, sử dụng các công cụ cho tác vụ này và thu thập số liệu hiệu suất
Trong suốt quá trình kiểm thử, kiểm thử viên thực hiện việc xem xét công việc, hỗ trợ lẫn nhau và quản lý các thông số kiểm tra, báo cáo lỗi cũng như kết quả kiểm tra một cách hiệu quả.
1.1.3 Các mục đích của kiểm thử phần mềm
Mục tiêu chính của Kiểm thử phần mềm như sau:
Xác định và phát hiện nhiều lỗi trong phần mềm kiểm thử là rất quan trọng Sau khi sửa chữa các lỗi đã được phát hiện, cần phải phân loại và kiểm tra chúng để đảm bảo phần mềm đạt tiêu chuẩn chất lượng chấp nhận được.
Biên kịch một bản ghi về lỗi phần mềm để sử dụng trong công tác phòng chống lỗi (bằng các hành động khắc phục và ngăn ngừa)
1.1.4 Các giai đoạn kiểm thử phần mềm
Các giai đoạn trong kiểm thử phần mềm bao gồm 4 giai đoạn sau:
Hình 1.1 Các giai đoạn kiểm thử
Hiểu rõ các giai đoạn kiểm thử là rất quan trọng để áp dụng hiệu quả trong công việc, giúp bạn lựa chọn phương pháp kiểm thử phù hợp và phát hiện lỗi kịp thời Kiểm thử mức đơn vị (Unit Test) là một trong những giai đoạn quan trọng trong quy trình này.
Unit testing is the process of testing the smallest components of software, such as functions or stored procedures, to ensure their correctness and functionality.
Trong giai đoạn kiểm thử đơn vị, việc phát hiện lỗi và xác định nguyên nhân khắc phục trở nên dễ dàng hơn khi chỉ cần khoanh vùng một đơn thể đang kiểm tra Thực tiễn cho thấy, thời gian dành cho kiểm thử đơn vị tiết kiệm hơn nhiều so với các mức kiểm tra sau, đồng thời chi phí cho kiểm thử và sửa lỗi cũng thấp nhất Kiểm thử đơn vị thường được thực hiện bởi lập trình viên, và các kịch bản kiểm thử (testcase) trong giai đoạn này có thể được lưu lại để tái sử dụng cho các dự án khác Tiếp theo là kiểm thử tích hợp (Integration Test).
Kiểm thử tích hợp là quá trình kết hợp các thành phần của một ứng dụng để kiểm tra sự giao tiếp và hoạt động của chúng như một hệ thống hoàn chỉnh Khác với kiểm thử đơn vị, kiểm thử tích hợp đánh giá khả năng tương tác giữa các phần của ứng dụng, đảm bảo rằng chúng hoạt động hiệu quả khi được kết hợp lại.
Mục tiêu chính của kiểm thử tích hợp:
Tìm ra lỗi giao tiếp xảy ra giữa các đơn vị với nhau
Tích hợp các đơn vị đơn lẻ thành các hệ thống nhỏ và hoàn chỉnh hệ thống là bước quan trọng để chuẩn bị cho kiểm tra ở mức hệ thống.
Tích hợp dần từng đơn vị (unit)
Khi một đơn vị mới được tích hợp vào nhóm các đơn vị đã tích hợp trước đó, chỉ cần kiểm tra giao tiếp giữa đơn vị mới và nhóm đã có Điều này giúp giảm đáng kể số lượng trường hợp kiểm thử và làm giảm sai sót.
Người thực hiện kiểm thử (test) tích hợp thường là lập trình viên c Kiểm thử hệ thống (System test)
Vai trò của kiểm thử trong dự án của Trung tâm Thông tin Tín dụng Quốc gia Việt Nam
dụng Quốc gia Việt Nam
1.2.1 Khái quát về Trung tâm Thông tin Tín dụng Quốc gia Việt Nam
1.2.1.1 Quá trình hình thành và phát triển
Trung tâm Thông tin Tín dụng Quốc gia Việt Nam (CIC) là đơn vị công lập trực thuộc Ngân hàng Nhà nước Việt Nam, có nguồn gốc từ một phòng nhỏ thuộc Vụ tín dụng Hiện nay, CIC đã phát triển thành tổ chức tín dụng hàng đầu khu vực, sở hữu hệ thống cơ sở dữ liệu phong phú và công nghệ hiện đại, chuyên nghiệp, hoạt động dựa trên nguyên tắc chia sẻ thông tin hiệu quả.
Các mốc thời gian quan trọng trong lịch sử phát triển của CIC [2]:
- 9/1992: Phòng Thông tin phòng ngừa rủi ro- tiền thân của Trung tâm thông tin tín dụng CIC được thành lập trực thuộc Vụ Tín dụng – NHNN
- 4/1995: Phòng Thông tin phòng ngừa rủi ro được đổi tên và tách thành Trung tâm thông tin tín dụng trực thuộc Vụ Tín dụng – NHNN
- 02/1999: CIC trở thành một đơn vị sự nghiệp thuộc NHNN theo Quyết định số 68/1999/QĐ-NHNN9 ngày 27/2/1999 của Thống đốc NHNN, tổ chức lại CIC thuộc Vụ Tín dụng
- 9/2007: Kỷ niệm 15 năm hoạt động tín dụng và được Thủ tướng Chính phủ trao tặng Bằng khen
- 12/2008: CIC được thành lập lại theo Quyết định số 3289/QĐ-NHNN ngày 31/12/2008 của Thống đốc NHNN trở thành một tổ chức sự nghiệp công lập thuộc NHNN
- 2012: Kỷ niệm 20 năm hoạt động thông tin tín dụng
- 3/2014: Đổi tên thành Trung tâm thông tin tín dụng Quốc gia Việt Nam theo Quyết định số 342/QĐ – NHNN ngày 26/2/2014 của thống đốc NHNN
- 2019: Kỷ niệm 20 năm thành lập Trung tâm thông tin tín dụng Quốc gia Việt Nam và đón nhận Huân chương lao động hạng Nhất của Chủ tịch nước
1.2.2 Chức năng và nhiệm vụ của Trung tâm thông tin tín dụng Quốc gia Việt Nam a Chức năng của Trung tâm thông tin tín dụng Quốc gia Việt Nam
Trung tâm Thông tin Tín dụng Quốc gia Việt Nam (CIC) là đơn vị độc lập, tự chủ về tài chính và chịu trách nhiệm toàn bộ chi phí hoạt động CIC thực hiện đăng ký tín dụng quốc gia, thu nhận, xử lý, lưu trữ và phân tích thông tin tín dụng, đồng thời dự báo và phòng ngừa rủi ro tín dụng Ngoài ra, CIC còn chấm điểm và xếp hạng tín dụng cho pháp nhân và thể nhân tại Việt Nam, phục vụ cho quản lý nhà nước của Ngân hàng Nhà nước và cung ứng dịch vụ thông tin tín dụng theo quy định pháp luật.
Trung tâm Thông tin Tín dụng Quốc gia Việt Nam cam kết cung cấp thông tin độc lập, khách quan, công bằng, minh bạch và đúng hạn cho các đối tượng liên quan Trung tâm cung cấp một hệ thống sản phẩm và dịch vụ đa dạng, phong phú cho Ngân hàng Nhà nước, các tổ chức tín dụng và cá nhân khác, đồng thời đóng vai trò là đầu mối thông tin tín dụng quốc gia.
Những nhiệm vụ và quyền hạn của CIC:
Xây dựng và trình Thống đốc ký ban hành các văn bản quy định về hoạt động thông tin tín dụng, sau đó tổ chức triển khai thực hiện các văn bản này ngay khi được phê duyệt.
Xây dựng và trình Thống đốc phê duyệt các đề án, dự án, kế hoạch, chương trình phát triển Trung tâm Thông tin tín; tổ chức triển khai và thực hiện các nội dung này sau khi được phê duyệt.
Thống đốc sẽ phê duyệt danh mục và tiêu chuẩn thông tin tín dụng, đồng thời tổ chức thu thập, xử lý, lưu trữ và quản lý kho dữ liệu quốc gia về thông tin tín dụng.
Tổ chức và thu thập thông tin tín dụng từ các nguồn trong và ngoài nước, đồng thời cung cấp sản phẩm thông tin tín dụng đầy đủ và kịp thời cho Ngân hàng Nhà nước, các tổ chức tín dụng và các tổ chức khác theo quy định của pháp luật.
- Thực hiện phân tích, xếp hạng và chấm điểm tín dụng đối với các tổ chức, cá nhân có quan hệ vay vốn của các tổ chức tín dụng
- Thục hiện dịch vụ thông tin tín dụng, cảnh báo sớm rủi ro tín dụng theo quy định của pháp luật
Các tổ chức có thể liên doanh hoặc hợp tác với cá nhân và chuyên gia trong và ngoài nước để thực hiện nhiệm vụ theo quy định của Thống đốc và pháp luật.
Chúng tôi tổ chức các hoạt động nghiên cứu, hội thảo và trao đổi kinh nghiệm trong lĩnh vực thông tin tín dụng Đồng thời, phối hợp với Trường bồi dưỡng cán bộ ngân hàng và các tổ chức liên quan để tổ chức đào tạo, bồi dưỡng chuyên môn cho đội ngũ cán bộ, viên chức làm công tác thông tin tín dụng tại Trung tâm thông tin tín dụng và ngành Ngân hàng.
- Quản lý biên chế và sử dụng cán bộ, viên chức
- Thực hiện chế độ báo cáo định kỳ, đột xuất theo quy định của Ngân hàng nhà nước và pháp luật
Phối hợp với các đơn vị chức năng để thực hiện hợp tác quốc tế, đồng thời tiếp nhận và quản lý các dự án trợ giúp kỹ thuật từ các tổ chức quốc tế là một nhiệm vụ quan trọng.
- Quản lý và chi tiêu tài chính, tài sản của CIC theo đúng quy định của pháp luật
- Thực hiện nhiệm vụ khác do cấp trên giao
1.2.3 Bộ máy quản lý của Trung tâm thông tin tín dụng Quốc gia Việt Nam a Sơ đồ bộ máy tổ chức theo cấp của CIC
Hình 1.2 Sơ đồ bộ máy theo cấp của CIC
(Nguồn: Văn phòng CIC) b Chức năng và nhiệm vụ của các phòng ban trong bộ máy quản lý
Ban Tổng giám đốc CIC là cơ quan tổ chức và thực hiện nhiệm vụ của CIC, có trách nhiệm trước Thống đốc và pháp luật về toàn bộ hoạt động của tổ chức Ban này quyết định chương trình và kế hoạch của CIC, đồng thời ký các văn bản theo thẩm quyền quy định.
Nhiệm vụ của các phòng ban trong CIC:
Văn phòng chịu trách nhiệm nghiên cứu, soạn thảo và trình giám đốc các văn bản liên quan đến chế độ và công tác hành chính, cả nội bộ lẫn đối ngoại của CIC Đồng thời, văn phòng cũng xây dựng kế hoạch công tác cho Trung tâm.
Phòng nghiên cứu phát triển và marketing đóng vai trò quan trọng trong việc nghiên cứu và phát triển các sản phẩm mới, đồng thời điều chỉnh các sản phẩm hiện tại để phù hợp với thị trường Ngoài ra, phòng còn nghiên cứu và biên soạn các văn bản hướng dẫn cho các tổ chức tín dụng, giúp họ thực hiện đúng các quy định mà Ngân hàng Nhà nước ban hành.
Phòng Tài chính – Kế toán có nhiệm vụ tư vấn cho ban tổng giám đốc trong việc xây dựng các chế độ quản lý tài chính Đơn vị này sẽ phát triển quy chế chi tiêu nội bộ phù hợp với các quy định tài chính của Nhà nước đối với các đơn vị sự nghiệp có thu Ngoài ra, phòng còn lập kế hoạch tài chính và thực hiện mua sắm, sửa chữa tài sản cố định cùng thiết bị máy móc phục vụ cho công việc.
Phòng Thu thập và Xử lý dữ liệu có nhiệm vụ theo dõi và đôn đốc các tổ chức tín dụng thực hiện việc báo cáo thông tin một cách đầy đủ, chính xác và đúng hạn Các báo cáo này phải tuân thủ các chỉ tiêu và mẫu biểu thông tin được quy định trong Quy chế hoạt động thông tin tín dụng.
Vai trò của kiểm thử đối với Trung tâm Thông tin Tín dụng Quốc gia Việt Nam
Số hóa trong ngành ngân hàng, đặc biệt là tại Trung tâm Thông tin Tín dụng Quốc gia Việt Nam, là xu hướng không thể tránh khỏi để tồn tại và phát triển trong thời đại công nghiệp 4.0 và sự bùng nổ của công nghệ tài chính (Fintech).
Cuộc cách mạng công nghiệp 4.0 mang lại nhiều cơ hội cho ngành Ngân hàng như giảm chi phí và gia tăng lợi nhuận, nhưng cũng đồng thời gia tăng rủi ro an ninh mạng như lừa đảo và hacker do kết nối mở và phức tạp Lo ngại về bảo mật trong các giao dịch thanh toán ngày càng tăng, khiến thiệt hại trong lĩnh vực này tăng theo cấp số nhân Việc nhận diện và quản lý các rủi ro công nghệ trong ngân hàng số là cần thiết, và đang được ngành Ngân hàng cùng CIC đặc biệt chú trọng.
Trong 9 tháng đầu năm 2020, Trung tâm Thông tin tín dụng Quốc gia Việt Nam (CIC) đã thu thập được thông tin từ 123 đầu mối tổ chức tín dụng (TCTD) và chi nhánh ngân hàng nước ngoài, trên 1.160 quỹ tín dụng nhân dân, các tổ chức tài chính vi mô chính thức và 52 tổ chức tự nguyện tham gia hoạt động thông tin tín dụng (TTTD) Trong Quý III/2020, độ phủ TTTD tiếp tục được cải thiện so với tháng trước, tăng trên 766.000 khách hàng vay (trên 2.241.793 hồ sơ vay mới), nâng tổng số khách hàng trong kho dữ liệu TTTD quốc gia lên trên 44.600.000 khách hàng CIC cũng tiếp tục duy trì thu thập ổn định các loại thông tin về dư nợ, hợp đồng tín dụng, tài sản bảo đảm, thẻ tín dụng, tài chính doanh nghiệp, đầu tư trái phiếu doanh nghiệp từ các TCTD, đảm bảo chất lượng thông tin được duy trì, đều đạt từ trên 98% đến 100%, điều này góp phần cải thiện khả năng tiếp cận tín dụng của khách hàng vay
Trong Quý III/2020, CIC đã ghi nhận hơn 41.000 khách hàng cá nhân đăng ký tài khoản trực tuyến, với 23.718 khách hàng được phê duyệt Điều này không chỉ nâng cao chất lượng kho dữ liệu mà còn đảm bảo tính minh bạch của thông tin tín dụng.
Trong bối cảnh giãn cách xã hội hạn chế giao dịch truyền thống, Cổng thông tin kết nối khách hàng vay (cic.gov.vn - CIC Credit Connect) và ứng dụng CIC Credit Connect đã hỗ trợ các tổ chức tín dụng (TCTD) kết nối trực tuyến với người dân và doanh nghiệp Đặc biệt, dịch vụ này được miễn phí sử dụng trong Quý III/2020, giúp tăng cường khả năng tiếp cận tài chính cho khách hàng.
CIC đã hướng dẫn các TCTD báo cáo thông tin khách hàng vay theo Thông tư 01/2020/TT-NHNN, cho phép giữ nguyên nhóm nợ nhằm hỗ trợ khách hàng bị ảnh hưởng bởi dịch Covid-19 Đồng thời, CIC đã ký mới 62 hợp đồng với các TCTD, nâng tổng số tài khoản khai thác lên trên 53.478 Trong thời gian qua, CIC đã tiếp nhận và xử lý 10.141 yêu cầu hỗ trợ, trong đó có 53 trường hợp khiếu nại bằng văn bản, giải đáp 1.280 thắc mắc qua email, 770 phiên chat qua webchat, và thực hiện 23 lượt tiếp công dân.
CIC đã phát triển một cơ sở dữ liệu thông tin tín dụng quốc gia hiện đại, tích hợp đa dạng nguồn dữ liệu từ 100% tổ chức tín dụng, bao gồm gần 1.200 quỹ tín dụng nhân dân và 4 tổ chức tài chính vi mô.
Dữ liệu lịch sử được lưu trữ ít nhất 5 năm trên nền tảng công nghệ hiện đại, cho phép truy xuất phục vụ cho các hoạt động nghiệp vụ khác nhau Đến hết Quý I/2020, kho dữ liệu TTTD quốc gia đã cập nhật hơn 43.400.000 chủ thể thông tin, trong đó có 1.200.000 pháp nhân và hơn 42.200.000 thể nhân Ngành ngân hàng, đặc biệt là CIC, chú trọng đến bảo mật thông tin và hệ thống dữ liệu lớn, yêu cầu cung cấp thông tin nhanh chóng và kịp thời Để đáp ứng yêu cầu thời đại mới, các chương trình sử dụng cần được cập nhật thường xuyên, và việc kiểm thử phải được thực hiện để đảm bảo không xảy ra sự cố khi có thay đổi.
Trong chương 1, luận văn giới thiệu tổng quan về các nghiên cứu liên quan đến kiểm thử phần mềm, nêu bật các đặc trưng của kiểm thử ở các loại phần mềm khác nhau và trình bày các phương pháp tiếp cận cho quá trình nghiên cứu.
PHƯƠNG PHÁP KIỂM THỬ TỰ ĐỘNG VÀ CÁC CÔNG CỤ
Tổng quan về kiểm thử tự động
2.1.1 Khái niệm kiểm thử tự động
Tự động hóa kiểm thử nâng cao hiệu quả và chất lượng phần mềm một cách đáng kể Các công cụ chuyên dụng có khả năng thực thi các trường hợp thử nghiệm tự động và so sánh kết quả thực tế với kết quả dự kiến Nhờ vào đó, kiểm tra tự động đảm bảo sự chính xác và ổn định của phần mềm mà không cần sự can thiệp thủ công.
Một trong những lợi ích lớn nhất của thử nghiệm tự động trong kinh doanh là khả năng thực hiện nhanh chóng, với nỗ lực tối thiểu và độ chính xác cao.
Kiểm thử tự động hiện nay quan trọng như thế nào?
Trong thời đại công nghệ 4.0, sự phát triển của ngành công nghệ thông tin đã tạo ra cuộc cách mạng Internet of Things, giúp kết nối nội dung dễ dàng hơn Công nghệ mang lại nhiều sản phẩm tiên tiến như in 3D và công nghệ lưu trữ, đồng thời làm tăng nhu cầu ứng dụng công nghệ trong đời sống và sản xuất Xã hội ngày càng tự động hóa, mang lại lợi ích lớn cho con người, nâng cao năng suất lao động và ứng dụng sản xuất mạnh mẽ hơn Do đó, các yếu tố liên quan đến tự động hóa ngày càng được coi trọng.
2.1.2 Sự khác biết giữa kiểm thử thủ công và kiểm thử tự động
Trong bất kỳ dự án nào, ba yếu tố quan trọng cần chú ý là chi phí, thời gian và chất lượng Mục tiêu chung của tất cả các dự án là tạo ra sản phẩm chất lượng cao với chi phí thấp và thời gian hoàn thành ngắn nhất Do đó, kiểm thử là một phần thiết yếu trong mọi dự án phần mềm, bao gồm hai loại chính: Kiểm thử thủ công (manual testing) và Kiểm thử tự động (automation testing).
Bảng 2.1 Sự khác biệt giữa kiểm thử thủ công và kiểm thử tự động
Kiểm thử thủ công (Kiểm thử thủ công)
(Automaiton Testing) Định nghĩa Kiểm thử thủ công là việc thử nghiệm phần mềm được làm thủ công bởi con người
Người thực hiện các công việc đó gọi là người kiểm thử
Người kiểm thử thực hiện kiểm thử để đảm bảo phần mềm hoặc ứng dụng hoạt động bình thường, tuân theo các điều kiện được quy định trong kịch bản kiểm thử.
Người kiểm thử có nhiệm vụ đánh giá thiết kế kiểm thử, chức năng và hiệu suất của ứng dụng thông qua việc tương tác với các phần khác nhau của hệ thống.
Kiểm thử tự động là quá trình kiểm thử phần mềm bằng công cụ mà không cần nhiều sự can thiệp của con người, giúp giảm bớt các bước kiểm tra lặp đi lặp lại Trong phương pháp này, các kịch bản kiểm thử được chuẩn bị sẵn và tự động chạy để so sánh kết quả thực tế với kết quả mong đợi, từ đó nâng cao độ tin cậy của phần mềm.
(Reliability) Độ tin cậy không cao Độ tin cậy rất là cao
Thời gian yêu cầu (Time
Kiểm thử thủ công Tốn nhiều thời gian cho một bộ kịch bản kiểm thử (test case) trên môi trường khác nhau
Chạy trên nhiều nên tảng nhiều giao diện khác nhau
Kiểm thử tự động được thực hiện bởi các công cụ kiểm thử nên thời gian thực hiện nhanh hơn so với kiểm thử thủ công
Sử dụng khi nào? (When to use ?)
Chỉ phục vụ cho một số loại kiểm thử nhất định Đòi hỏi nhận định của con người, những người có kinh nghiệm
Một số trường hợp con người mới có thể làm được như đoán lỗi, kiểm thử giao diện
Kiểm thử tự động phù hợp với kiểm tra hồi quy, kiểm tra hiệu suất,
Phục vụ cho các bạn kiểm thử phù hợp (test suited) lặp đi lặp lại hoặc cần một dữ liệu lớn
Hiệu suất và hàng loạt
Kiểm tra hiệu suất và hàng loạt không thể làm được với kiểm thử thủ công
Kiểm thử tự động là giải pháp hiệu quả cho việc kiểm tra hiệu suất hệ thống, cho phép mô phỏng hàng ngàn người dùng đăng nhập và tương tác với trang web Điều này giúp đo lường độ phản hồi của hệ thống mà không cần phải có một ngàn người dùng thực sự tham gia.
Chi phí ban đầu của kiểm thử thủ công thời gian đầu sẽ tiết
Chi phí ban đầu cao, chi phí để thuê một người kiểm thử tự động với chi phí cao kiệm, tiết kiệm tiền thuê nhân viên kiểm thử,
Trong các dự án lớn với thời gian lập trình kéo dài, chi phí cho kiểm thử thủ công thường rất cao Điều này là do người kiểm thử phải thực hiện kiểm tra nhiều lần và mỗi khi có thay đổi, họ cần phải kiểm tra lại từ đầu, dẫn đến tốn kém thời gian và nguồn lực.
Công ty cần mua công cụ hỗ trợ (công cụ) nếu như công cụ có phí
Về lâu dài thì kiểm thử tự động sẽ giảm chi phí hơn so với kiểm thử thủ công
Vì những test case có thể chạy lại tự động giảm thời gian xử lý hoặc có thể lên lịch cho chương trình tự động chạy
Tốn rất nhiều người để ngồi kiểm thử, người kiểm thử tốn thời gian xem và kiểm tra đi kiểm tra lại theo kịch bản kiểm thử
Còn Kiểm thử tự động thì chỉ cần một người ngồi chạy và ghi báo cáo lỗi
2.1.3 So sánh ưu và nhược điểm của Kiểm thử thủ công và Kiểm thử tự động
Bảng 2.2 So sánh ưu nhược điểm của kiểm thử thủ công và kiểm thử tự động Kiểm thử thủ công (Kiểm thử thủ công)
Kiểm thử tự động (Kiểm thử tự động) Ưu điểm
Dễ dàng cho việc kiểm thử giao diện, người kiểm thử sẽ có phản hồi nhanh và trực quan về giao diện ứng dụng
Mất ít chi phí hoặc có thể không mất phí cho các công cụ tự động và quy trình khi có thay đổi nhỏ kiểm thử thủ
Sử dụng công cụ tự động giúp tìm kiếm được nhiều lỗi hơn kiểm thử tự động nhanh và hiệu quả
Quá trình ghi lại kiểm thử cho phép thực hiện lại các kịch bản kiểm thử nhiều lần trên nhiều nền tảng khác nhau mà không tốn thời gian điều chỉnh các trường hợp kiểm thử.
Nếu chương trình có những thay đổi nhỏ, kiểm thử thủ công sẽ tiết kiệm thời gian trong việc kiểm tra các trường hợp thử nghiệm.
Kiểm thử tự động được thực hiện bằng các công cụ phần mềm, do đó nó hoạt đông không mệt mỏi không giống con người kiểm thử
Kiểm thử tự động năng suất và chính xác Phạm vi kiểm thử rộng vì kiểm tra tự động không quên kiểm tra cả đơn vị nhỏ nhất
Phản hồi nhanh hơn Bảo mật thông tin Nhược điểm
Kết quả kiểm thử có thể thiếu độ tin cậy do sai sót từ yếu tố con người, và kiểm thử thủ công thường không thể tái sử dụng.
Không thực hiện được với kiểm thử hiệu năng và kiểm thử khả năng chịu tải
Kiểm thử thủ công sẽ tiêu tốn nhiều thời gian cũng như công sức của người kiểm thử hơn trong việc phát hiện ra các lỗi (bug)
Kết quả tìm thấy thường ít được tin cậy
Chi phí dành cho dự án có thể phải tăng lên do những đòi hỏi trong việc phải thuê
Việc đánh giá giao diện người dùng, bao gồm font chữ, màu sắc, vị trí và kích thước của các nút, trở nên khó khăn nếu thiếu yếu tố con người.
Chi phí cho công cụ kiểm thử có thể cao, và bất kỳ thay đổi nhỏ nào cũng đòi hỏi thời gian để cập nhật kịch bản kiểm thử.
Công cụ có thể mất phí
- Chi phí cho người kiểm thử cao
- Chi phí phát triển và bảo trì test script cao
- Đòi hỏi người kiểm thử phải có kinh nghiệm công nghệ và kỹ năng lập trình
- Đòi hỏi thời gian chuẩn bị dài hơn để thiết kế, cài đặt kỹ càng trước khi cần đưa dự án đi kiểm thử
- Có những dự án không nên chạy kiểm thử tự động, nhưng nhiều người kiểm thử nguồn nhân lực để tiến hành kiểm tra
Sử dụng công cụ tự động trong kiểm thử sẽ mang lại kết quả nhanh chóng và chính xác hơn Tuy nhiên, nhiều người vẫn hiểu nhầm và thực hiện kiểm thử tự động không đúng cách, dẫn đến việc lãng phí thời gian, tài nguyên và công sức.
2.1.4 Kiểm thử thủ công và kiểm thử tự động
Kiểm thử thủ công phù hợp với:
Kiểm thử thăm dò (Exploratory Testing): Là kiểm thử đòi hỏi phải thử nghiệm của kiến thức, kinh nghiệm, phân tích, kỹ năng, sáng tạo và trực giác
Kiểm thử khả dụng (Usability Testing): Đây là kiểm thử mà bạn cần để đo độ thân thiện, hiệu quả thuận tiện cho người dùng cuối
Tìm hiểu về các mô hình kiểm thử tự động hiện nay
2.2.1 Mô hình kiểm thử tự động
Mô hình kiểm thử tự động bắt đầu bằng việc tập hợp các quy tắc và nguyên tắc trong quá trình viết mã kiểm thử Những quy tắc này hỗ trợ việc viết mã một cách hiệu quả, giúp giảm thiểu sự cần thiết phải chỉnh sửa mã kiểm thử khi ứng dụng có sự thay đổi.
Mô hình tự động hóa là nền tảng thiết lập môi trường thực thi cho các kịch bản kiểm thử tự động, mang lại nhiều lợi ích cho người dùng trong việc phát triển, thực thi và báo cáo các lệnh kiểm thử Mỗi mô hình kiểm thử tự động cung cấp kiến trúc riêng biệt cho từng dự án, với các quy tắc, giao thức, chỉ dẫn và thủ tục đặc thù cho việc tạo, tổ chức và thực hiện các kịch bản kiểm thử.
Mô hình kiểm thử tự động mang lại nhiều lợi thế nổi bật, bao gồm khả năng tái sử dụng mã, đảm bảo bảo mật tối đa và khả năng khôi phục kịch bản dễ dàng Bên cạnh đó, mô hình này cũng giúp giảm chi phí bảo trì, hạn chế sự can thiệp thủ công và tạo điều kiện thuận lợi cho việc báo cáo tổng hợp.
Hiện nay, có nhiều loại mô hình kiểm thử tự động khác nhau, mỗi mô hình hỗ trợ các yếu tố quan trọng như khả năng tái sử dụng và dễ bảo trì, từ đó góp phần nâng cao hiệu quả của quá trình tự động hóa.
Mô hình kiểm thử tự động được sử dụng phổ biến hiện nay:
- Mô hình kiểm thử dựa trên mô – đun - Module Based Testing Framework
- Mô hình kiểm thử kiến trúc thư viện - Library Architecture Testing Framework
- Mô hình kiểm thử theo hướng dữ liệu - Data Driven Testing Framework
- Mô hình kiểm thử theo hướng từ khóa - Keyword Driven Testing Framework
- Mô hình kiểm thử theo hướng hỗn hợp - Hybrid Testing Framework
Hình 2.2 Mô hình kiểm thử tự động
Mô hình kiểm thử hướng Mô - đun
Mô hình kiểm thử dựa trên các Mô - đun Dựa vào một trong những khái niệm lập trình hướng đối tượng (OOP-Object-Oriented Programming) phổ biến - trừu tượng
Mô hình phân chia “ứng dụng đang kiểm thử” thành các mô-đun logic và riêng biệt cho phép tạo lập các lệnh kiểm tra độc lập cho từng mô-đun Khi kết hợp các tập lệnh kiểm tra này, chúng sẽ tạo thành một tập lệnh kiểm thử lớn hơn, đại diện cho nhiều mô-đun nhỏ, giúp tối ưu hóa quy trình kiểm thử và nâng cao hiệu quả kiểm tra ứng dụng.
Mỗi script của một Mô-đun được thiết kế để thực hiện các thao tác và xử lý dữ liệu cụ thể Khi có sự thay đổi trong kiểm thử dữ liệu (database), các script liên quan cũng cần được điều chỉnh để đảm bảo tính chính xác và hiệu quả.
Mô hình kiểm thử hướng mô-đun mang lại nhiều ưu điểm như dễ bảo trì và tiết kiệm chi phí Mô hình này có khả năng mở rộng linh hoạt; khi có thay đổi trong một phần của ứng dụng, chỉ cần điều chỉnh tập lệnh kiểm tra tương ứng mà không làm ảnh hưởng đến các phần khác của hệ thống.
Nhược điểm của việc triển khai các tập lệnh kiểm thử cho từng mô-đun riêng biệt là cần phải nhúng dữ liệu thử nghiệm vào các tập lệnh này Điều này dẫn đến việc mỗi khi cần kiểm tra tập dữ liệu khác, người thực hiện phải thao tác trong các kịch bản kiểm thử Mô hình kiểm thử kiến trúc thư viện cũng gặp phải vấn đề tương tự.
Mô hình kiểm thử hướng mô-đun được cải tiến với những ưu điểm vượt trội, cho phép tạo ra một thư viện chung chứa các chức năng đang được kiểm thử, thay vì chia ứng dụng thành các tập lệnh nhỏ Thư viện này có thể được gọi từ bất kỳ kịch bản kiểm thử nào khi cần thiết, mang lại tính linh hoạt và hiệu quả cao trong quá trình kiểm thử.
Các bước đăng nhập có thể được gộp lại thành một hàm và lưu trữ trong thư viện, giúp các kịch bản kiểm thử cần đăng nhập vào ứng dụng chỉ cần gọi hàm này thay vì phải viết lại toàn bộ mã.
Mô hình kiểm thử hướng thư viện mang lại nhiều ưu điểm, tương tự như mô hình hướng mô-đun, với mức độ mô-đun hóa cao giúp bảo trì dễ dàng và hoạt động hiệu quả với chi phí thấp Khi phát triển các chức năng, người dùng có thể áp dụng nhiều tập lệnh kiểm thử khác nhau trên mô hình này.
Do đó, mức độ tái sử dụng lớn
Nhược điểm của mô hình kiểm thử tự động hướng dữ liệu là dữ liệu kiểm thử được tích hợp vào các tập lệnh kiểm thử, do đó, bất kỳ thay đổi nào trong dữ liệu thử nghiệm đều cần điều chỉnh các tập lệnh này Bên cạnh đó, với sự xuất hiện của thư viện, mô hình thư viện trở nên phức tạp hơn so với mô hình hướng mô-đun.
Trong quá trình kiểm thử tự động ứng dụng, việc kiểm thử chức năng lặp lại với các tập dữ liệu đầu vào khác nhau là rất quan trọng Để đảm bảo tính linh hoạt và hiệu quả, dữ liệu kiểm thử không nên được nhúng trực tiếp vào các script Thay vào đó, cần lưu trữ dữ liệu kiểm thử trong một cơ sở dữ liệu bên ngoài để dễ dàng quản lý và sử dụng.
Mô hình kiểm thử này cho phép người kiểm thử phân tách dữ liệu logic, tập lệnh kiểm thử và dữ liệu kiểm thử, đồng thời lưu trữ dữ liệu kiểm thử vào các cơ sở dữ liệu bên ngoài như tệp xml, excel, doc, csv Dữ liệu được lưu trữ theo quy ước "Key-Value", giúp quản lý và truy xuất thông tin một cách hiệu quả.
Do đó các từ khóa này được sử dụng để truy cập và ghi dữ liệu vào một thư viện chung
Hình 2.4 Mô hình kiểm thử hướng dữ liệu Ưu điểm:
Mô hình này nổi bật với khả năng giảm đáng kể số lượng tập lệnh cần thiết cho các kịch bản kiểm thử, từ đó yêu cầu ít mã hơn để kiểm thử một bộ tình huống toàn diện.
Bất kỳ thay đổi nào trong dữ liệu kiểm thử sẽ không làm ảnh hưởng đến tập lệnh kiểm thử, tăng tính linh hoạt và dễ bảo trì
Một kịch bản kiểm thử duy nhất có thể được thực hiển để thay đổi các giá trị dữ liệu kiểm thử
Quá trình này phước tạp và đòi hỏi nhiều nỗ lực để tìm ra các nguồn dữ liệu kiểm thử và cơ chế đọc
Yêu cầu người kiểm thử thành thạo về lập trình, có thể lập trình và hiểu về lập trình c Kiểm thử theo hướng từ khóa
Tổng quan về các công cụ kiểm thử tự động hiện nay
2.3.1 Công cụ kiểm thử tự động
Công cụ kiểm thử tự động là các công cụ hỗ trợ người kiểm thử thực hiện công việc kiểm thử phần mềm một cách tự động
2.3.1.2 Ý nghĩ của các công cụ kiểm thử tự động:
- Tặng độ tin cậy cho việc kiểm thử
- Giảm bớt thời gian và công sức thực hiện quá trình kiểm thử
- Hỗ trợ người kiểm thử phần mềm rèn luyện kỹ năng lập trình
- Giúp giảm chi phí cho quá trình kiểm thử
- Giảm sự nhàm chán khi phải thực hiện kiểm thử đi kiểm thử lại cho con người khi phải kiểm thử thủ công
2.3.1.3 Những thuận lợi và khó khăn khi áp dụng công cụ kiểm thử tự động
- Kỹ thuật viên không cần can thiệp vào hệ thống
- Giả lập tình huống không thể thực hiện thủ công bằng tay
- Giảm chi phí thực hiện kiểm tra số lượng lớn kịch bản kiểm thử hoặc kịch bản kiểm thử lại nhiều lần
- Tốn chi phí để tạo ra các script để thực hiện kiểm thử tự động
- Mất chi phí cho việc bảo trình các script
- Đòi hỏi kỹ sư kiểm thử phần mềm phải có khả năng tạo script kiểm thử tự động
- Những lỗi mới thì không áp dụng được trong phần mềm
2.3.1.4 Các yếu tố cần thiết khi chọn một công cụ kiểm thử tự động
- Khả năng tương thích giữa các nền tảng
- Chất lượng hỗ trợ khách hàng
- Dễ dàng tạo các kịch bản thử nghiệm
- Chi phí giấy phép, nếu có
- Trong trường hợp của một dự án thuê ngoài, bạn cần tính đến mức độ ưa thích của khách hàng
- Chi phí liên quan đến việc đào tạo nhân viên về một công cụ
- Yêu cầu phần cứng / Phần mềm của công cụ kiểm thử phần mềm
- Chính sách hỗ trợ và cập nhật của công cụ
- Nhận xét của công ty
2.3.2 Một số công cụ kiểm thử tự động mới hiện nay [6]
Công cụ kiểm thử Selenium
Selenium là công cụ kiểm thử phần mềm hàng đầu, giúp tự động hóa kiểm thử chức năng cho các ứng dụng web Nó hỗ trợ nhiều nền tảng và trình duyệt khác nhau, mang lại tính linh hoạt cho quá trình kiểm thử.
Selenium là công cụ kiểm thử tự động hàng đầu, hỗ trợ kiểm thử song song để giảm thời gian thực hiện So với các công cụ kiểm thử thủ công khác, Selenium tiêu tốn ít tài nguyên hơn Các trường hợp kiểm thử được xây dựng bằng Selenium có thể chạy trên tất cả các hệ điều hành.
Selecnium hỗ trợ nhiều ngôn ngữ lập trình như Java, Python, C#, Perl, PHP, JavaScript… b Công cụ kiểm thử TestRail
TestRail là một công cụ quản lý trường hợp kiểm thử trực tuyến, cho phép mở rộng và tùy chỉnh dễ dàng Việc thiết lập TestRail chỉ mất vài phút nhờ vào giải pháp dựa trên điện toán đám mây.
TestRail là công cụ quản lý hiệu quả cho các trường hợp kiểm thử, kế hoạch và quy trình kiểm thử thủ công lẫn tự động Nó cung cấp thông tin chi tiết theo thời gian thực về tiến độ kiểm thử, các chỉ số và báo cáo hoạt động Người dùng có thể nâng cao hiệu quả công việc với các mốc quan trọng, danh sách việc cần làm và thông báo qua email Ngoài ra, TestRail cho phép tài liệu hóa các trường hợp kiểm thử với ảnh chụp màn hình và kết quả mong đợi, đồng thời cung cấp các mẫu linh hoạt hoặc tùy chỉnh theo nhu cầu sử dụng.
Tích hợp với các công cụ trong kênh CI / CD / DevOps của bạn bao gồm JIRA, Bugzilla, Jenkins, TFS …
TestRail được thiết kế cho các nhóm lớn và các dự án quan trọng
Hỗ trợ cho vùng chứa Docker c Công cụ kiểm thử Xray
Xray là ứng dụng hàng đầu trong quản lý kiểm thử tự động và thủ công dành cho QA, tích hợp hoàn hảo với Jira Công cụ này giúp các công ty nâng cao chất lượng sản phẩm thông qua việc kiểm thử hiệu năng của phần mềm.
Truy xuất nguồn gốc là một quá trình quan trọng trong kiểm tra phần mềm, bao gồm việc xác định các yêu cầu, kiểm tra và thực thi Cần xác định các điều kiện tiên quyết có thể tái sử dụng và liên kết với các kiểm thử khác nhau Tổ chức các cuộc kiểm thử trong các thư mục và quản lý toàn bộ test case là cần thiết để đảm bảo hiệu quả Lập kế hoạch kiểm tra giúp theo dõi tiến độ công việc và môi trường kiểm thử Việc tích hợp với các khuôn khổ tự động kiểm thử như Selenium, Junit, Uunit, Robot và API REST, cùng với tích hợp CI qua Bamboo và Jenkins, sẽ nâng cao quy trình kiểm tra Công cụ kiểm thử TestMonitor cũng đóng vai trò quan trọng trong việc quản lý và theo dõi các hoạt động kiểm thử.
TestMonitor là công cụ quản lý kiểm tra đầu cuối lý tưởng cho mọi tổ chức, mang đến một phương pháp đơn giản và trực quan cho quy trình kiểm tra Dù bạn đang triển khai phần mềm doanh nghiệp, cần đảm bảo chất lượng (QA), phát triển ứng dụng chất lượng cao hay chỉ cần hỗ trợ cho dự án thử nghiệm của mình, TestMonitor đều đáp ứng đầy đủ nhu cầu của bạn.
PractiTest là công cụ kiểm thử hiệu quả, hỗ trợ yêu cầu và kiểm thử dựa trên rủi ro với khả năng thiết kế trường hợp thử nghiệm tiên tiến, cho phép quản lý hàng nghìn trường hợp cùng lúc Nó cung cấp các công cụ lập kế hoạch với nhiều lần chạy thử nghiệm và khả năng nhân bản tiêu chuẩn ban đầu Người dùng có thể theo dõi kết quả toàn diện, quản lý vấn đề tích hợp và tạo báo cáo thông minh với nhiều tùy chọn bộ lọc và hình ảnh hóa Giao diện người dùng đơn giản, dễ sử dụng, đồng thời hỗ trợ tích hợp với các công cụ bên thứ ba như Jira, DevOps và Slack Dịch vụ hỗ trợ chuyên nghiệp với thời gian phản hồi nhanh chóng cũng là một điểm cộng lớn của PractiTest.
PractiTest là một công cụ quản lý kiểm thử đầu cuối, cung cấp nền tảng chung cho tất cả các bên liên quan đến QA Công cụ này cho phép hiển thị toàn bộ quy trình kiểm thử và giúp người dùng hiểu rõ hơn về kết quả kiểm thử.
Các tích hợp bên thứ ba với trình theo dõi lỗi, công cụ tự động hóa và API mạnh mẽ giúp tùy chỉnh linh hoạt cho nhóm QA Người dùng có thể điều chỉnh các trường, chế độ xem, quyền và quy trình làm việc theo nhu cầu thay đổi Hệ thống cho phép sử dụng lại các thử nghiệm và kết quả trên nhiều bản phát hành và sản phẩm khác nhau Cây lọc phân cấp độc đáo giúp sắp xếp và tìm kiếm thông tin nhanh chóng, đảm bảo không phải làm việc hai lần.
Công cụ kiểm thử QTP cung cấp các bản sao chống lỗi, hoán vị, tham số và lệnh gọi để kiểm tra hiệu quả Nó cho phép người dùng trực quan hóa dữ liệu thông qua các trang tổng quan và báo cáo nâng cao Đội ngũ hỗ trợ chuyên nghiệp và nhanh chóng luôn sẵn sàng giúp đỡ.
Quick Test Professional (QTP), hiện nay được biết đến với tên gọi Micro Focus UFT (Kiểm tra chức năng hợp nhất), là một công cụ tự động hóa kiểm tra GUI giúp tự động hóa các hành động của người dùng trên web và ứng dụng máy tính QTP được sử dụng phổ biến để thực hiện kiểm thử hồi quy các chức năng và là một trong những công cụ kiểm tra thủ công sử dụng ngôn ngữ kịch bản để thao tác với các đối tượng và điều khiển trong ứng dụng đang được kiểm tra.
QTP là công cụ kiểm thử phần mềm lý tưởng cho người mới bắt đầu, nhờ vào giao diện dễ hiểu và quy trình làm việc đơn giản Công cụ này giúp người kiểm thử xác nhận toàn bộ ứng dụng bằng cách bổ sung đầy đủ các điều kiện kiểm tra Bên cạnh đó, Katalon Studio cũng là một lựa chọn đáng chú ý trong lĩnh vực kiểm thử phần mềm.
Katalon Studio là một công cụ kiểm thử tự động được xây dựng trên các khung Selenium và Appium, mang lại lợi thế trong việc tích hợp kiểm thử tự động Công cụ này hỗ trợ nhiều mức độ kiểm thử khác nhau, giúp người kiểm thử dễ dàng sử dụng, tiết kiệm thời gian mà không cần phải xây dựng thư viện hay bảo trì script.**Source:**1 So sánh Katalon Studio và Selenium: https://anhtester.com/blog/so-sanh-katalon-studio-va-selenium-b432.html2 So sánh các công cụ kiểm thử khác với katalon studio: https://viblo.asia/p/so-sanh-cac-cong-cu-kiem-thu-khac-voi-katalon-studio-Qbq5QydX5D83 Kiểm thử tự động với công cụ Katalon Studio | PDF: https://www.scribd.com/document/669670969/Ki%E1%BB%83m-th%E1%BB%AD-t%E1%BB%B1-%C4%91%E1%BB%99ng-v%E1%BB%9Bi-cong-c%E1%BB%A5-Katalon-Studio4 Giới thiệu về Katalon Studio - Công cụ kiểm thử tự động : https://viblo.asia/p/gioi-thieu-ve-katalon-studio-cong-cu-kiem-thu-tu-dong-den-tu-viet-nam-1Je5EyQY5nL5 Top 7 loại công cụ kiểm thử tự động phổ biến nhất - Test Mentor: https://testmentor.vn/top-7-loai-cong-cu-kiem-thu-tu-dong-pho-bien-nhat/6 Giới thiệu về Katalon - Katalon Studio: là công cụ kiểm thử tự : https://www.studocu.vn/vn/document/truong-dai-hoc-kinh-te-dai-hoc-quoc-gia-ha-noi/kinh-te-quoc-te/gioi-thieu-ve-katalon/691889277 TOP 6 AUTOMATION TESTING TOOL TỐT NHẤT NĂM 2024: https://viettelsoftware.com/top-6-automation-testing-tool-tot-nhat-nam-2024.html8 Katalon Studio – Công cụ kiểm thử tự động từ Việt Nam: https://tinhte.vn/thread/katalon-studio-cong-cu-kiem-thu-tu-dong-tu-viet-nam.2664694/9 Giải pháp kiểm thử tự động thông minh - Katalon Studio: https://bnksolution.com/news/giai-phap-kiem-thu-tu-dong-thong-minh-katalon-studio10 HVKTMM_ATTT_Xây dựng ứng dụng Web_Kiểm thử trên : https://www.academia.edu/40880936/HVKTMM_ATTT_X%C3%A2y_d%E1%BB%B1ng_%E1%BB%A9ng_d%E1%BB%A5ng_Web_Ki%E1%BB%83m_th%E1%BB%AD_tr%C3%AAn_n%E1%BB%81n_c%C3%B4ng_c%E1%BB%A5_Katalon_Studio
Không cần giấy phép và bảo trì, dịch vụ hỗ trợ chuyên dụng có sẵn với phí Hệ thống tích hợp các bộ khung và tính năng cần thiết giúp tạo và thực hiện các trường hợp thử nghiệm nhanh chóng Được phát triển dựa trên bộ khung vững chắc.
Selenium nhưng đã bỏ được việc yêu cầu kỹ năng lập trình nâng cao cần thiết như Selenium.
Phân tích so sánh các công cụ kiểm thử tự động
So sánh công cụ cụ kiểm thử katalon và selenium
Bảng 2.5 So sánh công cụ kiểm thử tự động katalon và selenium Đặc tính Katalon Studio Selenium
Nền tảng Đa nền tảng Đa nền tảng ứng dụng Windows desktop, Web apps,
Mobile apps, API/Web service Web apps
Ngôn ngữ lập trình Java/Groovy Java, JavaScript, Ruby,
Không yêu cầu có ký năng lập trình cao Đối với các kịch bản nâng cao mới yêu cầu có kỹ năng lập trình
Cần phải có kỹ năng lập trình ở mức nâng cao để tích hợp các công cụ khác nhau
Thời gian tạo test script Tạo test script nhanh Tạo test script Chậm
Kiểm thử hình ảnh Hỗ trợ tích hợp Phải cài đặt thư viện bổ sung
Miễn phí với các tính năng cơ bản cho người dùng, và thu phí đới với các tính năng được bổ sung hoặc nâng cao
Phân tích đánh giá và nêu ra phương pháp kiểm thử đối với phần mềm được kiểm thử
Theo phân tích ở mục 2.2.2 về các mô hình kiểm thử hiện nay, việc lựa chọn kiểm thử module (đơn vị) là cần thiết để đáp ứng yêu cầu và đơn giản hóa quá trình kiểm thử cho website khai thác nhu cầu vay của CIC Kiểm thử module tập trung vào việc kiểm tra từng chương trình con và các thủ tục nhỏ trong chương trình, giúp phát hiện và ngăn chặn sai sót hiệu quả.
Kiểm thử đơn vị quản lý phần từ cần kiểm thử, tập trung chú ý từng phần tử nhỏ của chương trình
Kiểm thử đơn vị giúp dễ dãng việc debug chương trình, tạo cơ hội nhất cho việc kiểm thử bởi nhiều người
Mục đích của kiểm thử đơn vị là so sánh chức năng thực tế của từng module với đặc tả chức năng hoặc giao diện của nó Kiểm thử này không chỉ xác định xem module có đáp ứng đầy đủ các yêu cầu hay không, mà còn chỉ ra những khác biệt giữa chức năng thực tế và đặc tả của module.
Kiểm thử module sử dụng 2 phương án:
Kiểm thử không tăng tiến, hay còn gọi là kiểm thử độc lập, là phương pháp kiểm thử các module chức năng một cách riêng biệt, sau đó kết hợp chúng lại để hình thành chương trình hoàn chỉnh.
- Kiểm thử tặng tiến (Incremental testing): kết hợp modul cần kiểm thử vào bộ phận đã kiểm thử, kiểm thử ngữ cảnh
Trong chương này, chúng tôi đã tổng hợp các phương pháp kỹ thuật áp dụng vào kiểm thử tự động, đồng thời giới thiệu các mô hình kiểm thử tự động cho phần mềm Bên cạnh đó, chúng tôi cũng liệt kê một số phần mềm kiểm thử tự động phổ biến thường được sử dụng trong thực tế.