Xem Nhiều 1/2023 #️ Kiểm Thử Chức Năng Và Kiểm Thử Phi Chức Năng Là Gì # Top 10 Trend | 3mienmoloctrungvang.com

Xem Nhiều 1/2023 # Kiểm Thử Chức Năng Và Kiểm Thử Phi Chức Năng Là Gì # Top 10 Trend

Cập nhật thông tin chi tiết về Kiểm Thử Chức Năng Và Kiểm Thử Phi Chức Năng Là Gì mới nhất trên website 3mienmoloctrungvang.com. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất.

Nếu các bạn là dân tester thì rất quen thuộc với những phương pháp kiểm thử cơ bản Functional vs. Non-functional Testing. Hôm nay Testerprovn sẽ giới thiệu về kiểm thử chức năng và kiểm thử phi chức năng (Functional vs. Non-functional Testing) .

Kiểm thử chức năng (Functional Testing)

Kiểm thử chức năng (hay Functional Testing) là một trong các quy trình đảm bảo chất lượng của lĩnh vực kiểm thử phần mềm. Đây là một loại kiểm thử hộp đen (black box testing), tức là các trường hợp nó cần xét đến sẽ dựa vào đặc tả của ứng dụng/phần mềm hoặc hệ thống đang thử nghiệm. Các chức năng sẽ được kiểm tra bằng cách nhập các giá trị đầu vào và sau đó sẽ kiểm tra, đánh giá các kết quả đầu ra mà không cần quan tâm đến các cấu trúc hay cài đặt bên trong của ứng dụng.

Kiểm thử chức năng bao gồm kiểm tra ứng theo yêu cầu hoạt động thực tế của phần mềm. Kết hợp tất cả các phương pháp kiểm thử được thiết kế để đảm bảo từng phần một của phần mềm hoạt động như mong đợi, bằng cách sử dụng các trường hợp sử dụng (uses cases) được cung cấp bởi nhóm thiết kế hoặc nhà phân tích kinh doanh (BA). Các phương pháp kiểm tra này thường được tiến hành theo thứ tự và bao gồm:

_ Kiểm thử đơn vị (Unit testing) _ Kiểm thử tích hợp (Integration testing) _ Kiểm thử hệ thống (System testing) _ Kiểm thử chấp nhận (Acceptance testing)

Thông thường kiểm thử chức năng sẽ tiến hành theo 6 bước sau:

Xác định các chức năng mà phần mềm dự kiến sẽ làm (dựa vào đặc tả của phần mềm)

Xác định bộ dữ liệu đầu vào dựa trên các thông số kỹ thuật của chức năng

Xác định bộ dữ liệu đầu ra dựa trên các thông số kỹ thuật của chức năng

Viết và thực thi các trường hợp kiểm thử (test case)

So sánh kết quả đầu ra chuẩn bị ở bước 3 và kết quả thực tế

Dựa vào nhu cầu của khách hàng để đánh giá xem kết quả ở bước 5 có phù hợp hay không

2. Kiểm thử phi chức năng (Non-functional Testing)

Các phương pháp kiểm thử phi chức năng kết hợp tất cả các loại kiểm thử tập trung vào các khía cạnh hoạt động của một phần mềm. Bao gồm:

_Kiểm thử hiệu suất (Performance testing) _Kiểm thử bảo mật (Security testing) _Kiểm thử khả năng sử dụng (Usability testing) _Kiểm thử khả năng tương thích (Compatibility testing) Chìa khóa để phát hành phần mềm chất lượng cao mà người dùng cuối có thể dễ dàng chấp nhận là xây dựng một mô hình kiểm thử toàn diện, trong đó bao gồm đồng bộ kiểm thử chức năng và phi chức năng.

Đặc điểm của kiểm thử phi chức năng

Kiểm thử phi chức năng không thể đo lường, vì vậy không có chỗ cho đặc tính chủ quan như tốt, tốt hơn, tốt nhất, v.v.

Các con số chính xác không thể được biết khi bắt đầu quy trình

Các yêu cầu quan trọng được ưu tiên

Đảm bảo rằng các thuộc tính chất lượng được xác định chính xác trong Kỹ thuật phần mềm.

Kiểm Thử Phi Chức Năng Là Gì?

Testing được chia thành 2 loại:

Kiểm thử chức năng

Kiểm thử phi chức năng

Kiểm thử chức năng là gì?

Kiểm thử chức năng, như tên cho thấy, là xác nhận tất cả các chức năng của hệ thống. Nó đánh giá ứng dụng và xác nhận liệu ứng dụng có đang hoạt động theo yêu cầu hay không.

Các loại Kiểm thử chức năng bao gồm:

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

Kiểm thử khói (Smoke Testing – check nhanh xem hệ thống có khởi động được hay không)

Kiểm thử độ tỉnh táo (Sanity Testing – check nhanh xem sau khi sửa đổi thì function có hoạt động như mong muốn hay không)

Kiểm thử giao diện (Interface Testing)

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

Kiểm thử hệ thống (Systems Testing)

Kiểm thử hồi quy (Regression Testing)

Kiểm thử chấp nhận (Acceptance testing)

Kiểm thử phi chức năng là gì?

Ứng dụng làm việc trong điều kiện bình thường như thế nào?

Ứng dụng hành xử như thế nào khi quá nhiều người dùng đăng nhập đồng thời?

Ứng dụng có thể chịu được tải lớn không?

Ứng dụng bảo mật tới mức nào?

Ứng dụng có thể phục hồi từ bất kì sự cố nào hay không?

Ứng dụng có thể hành xử đồng nhất trong nhiều môi trường hay OS khác nhau không?

Đưa ứng dụng lên hệ thống khác nhau có dễ dàng không?

Tài liệu/Hướng dẫn sử dụng được cung cấp kèm ứng dụng có dễ hiểu hay không?

2. Kiểm thử tải lượng: Đánh giá xem liệu hiệu suất của hệ thống có được như mong đợi trong điều kiện bình thường và điều kiện thử nghiệm hay không. Những điểm mấu chốt là:

3. Kiểm thử áp lực: Đánh giá xem liệu hiệu suất của hệ thống có được như mong đợi sử dụng hết tài nguyên hay không. Những điểm mấu chốt là:

Áp dụng một lượng lớn dữ liệu và kiểm tra giới hạn nơi các phần mềm bị lỗi.

Kích thước cơ sở dữ liệu tối đa được tạo ra và nhiều truy vấn của khách hàng vào cơ sở dữ liệu hoặc tạo báo cáo lớn hơn.

Ví dụ: Nếu ứng dụng đang xử lý cơ sở dữ liệu để tạo ra một báo cáo, một bài kiểm thử quy mô sẽ thường là sử dụng một tập kết quả lớn và kiểm tra báo cáo được in một cách chính xác hay không.

5. Kiểm thử tính khả dụng: Xem xét tính dễ sử dụng cho người dùng. Những điểm mấu chốt là:

6. Kiểm thử giao diện người dùng: Đánh giá GUI. Những điểm mấu chốt là:

7. Kiểm thử tính tương thích: Đánh giá xem ứng dụng có tương thích với phần cứng/phần mềm khác mà có cấu hình tối thiểu hoặc tối đa hay không. Những điểm mấu chốt là:

Ngắt điện ở máy khách trong khi ứng dụng đang làm việc.

Con trỏ và khóa trong cơ sở dữ liệu không hợp lệ.

Tiến trình Cơ sở dữ liệu bị hủy bỏ hoặc chấm dứt trước khi hoàn thành.

Con trỏ, các trường và giá trị của Cơ sở dữ liệu bị phá hoại thủ công và trực tiếp từ server.

Ngắt kết nối dây mạng, tắt bật các router và máy chủ mạng.

9. Kiểm tra tính ổn định: Đánh giá và xác nhận rằng phần mềm được cài đặt và tháo gỡ một cách chính xác. Những điểm mấu chốt là:

Xác nhận rằng các thành phần hệ thống được cài đặt đúng trên phần cứng được chỉ định.

Xác nhận có thể điều hướng trên máy tính mới, cập nhật các bản cài đặt hiện có và các phiên bản cũ.

Xác nhận rằng nếu thiếu không gian đĩa thì cũng không xảy ra hành vi khó chấp nhận.

10. Kiểm tra tài liệu: Đánh giá các tài liệu và hướng dẫn sử dụng.

Xác nhận rằng các tài liệu được tuyên bố có sẵn trong sản phẩm.

Xác nhận tất cả những gì hướng dẫn sử dụng, hướng dẫn cài đặt, file ghi chú, thay đổi cập nhật và trợ giúp trực tuyến đều sẵn sàng.

Kết luận:

Kiểm thử phi chức năng là khía cạnh rất quan trọng của việc đảm bảo chất lượng và giống như Kiểm thử chức năng, Kiểm thử phi chức năng cũng đòi hỏi chiến lược và lập kế hoạch. Chúng ta có thể bao gồm thông tin chi tiết về Kiểm thử phi chức năng trong kế hoạch kiểm thử hoặc có thể viết ra một chiến lược riêng biệt và lên kế hoạch cho nó. Trong cả hai trường hợp, mục tiêu là để có thể bao quát được tất cả các khía cạnh phi chức năng của phần mềm.

All Rights Reserved

Giới Thiệu Về Kiểm Thử Phi Chức Năng

Functional: Kiểm thử chức năng Non – Functional: Kiểm thử phi chức năng Maintenance: Bảo trì

Trong bài viết này mình xin tập trung giới thiệu về kiểm thử phi chức năng (non-functional)

Kiểm thử phi chức năng là gì?

Kiểm thử phi chức năng (non-functional) được định nghĩa là một loại kiểm thử phần mềm để kiểm tra các khía cạnh phi chức năng (hiệu suất, khả năng sử dụng, độ tin cậy, v.v.) của ứng dụng phần mềm. Nó được thiết kế để kiểm tra sự sẵn sàng của một hệ thống theo các tham số không thuộc về chức năng và không bao giờ được giải quyết bằng kiểm thử chức năng.

Một ví dụ về kiểm thử phi chức năng đó là kiểm tra xem có bao nhiêu người có thể đăng nhập đồng thời vào một hệ thống phần mềm.

Kiểm thử phi chức năng cũng quan trọng không kém như kiểm thử chức năng và ảnh hưởng đến sự hài lòng của khách hàng.

Mục tiêu của kiểm thử phi chức năng

Kiểm thử phi chức năng tăng khả năng sử dụng, hiệu quả, khả năng bảo trì và tính di động của sản phẩm.

Tối ưu hóa cách cài đặt sản phẩm, thiết lập, thực thi, quản lý và giám sát.

Thu thập và sản xuất các phép đo, và số liệu cho nghiên cứu và phát triển nội bộ.

Cải thiện và nâng cao kiến thức về hành vi và công nghệ sản phẩm đang sử dụng.

Đặc điểm của kiểm thử phi chức năng

Kiểm thử phi chức năng nên được đo lường, vì vậy không có chỗ cho đặc tính chủ quan như tốt, tốt hơn, tốt nhất, v.v.

Số chính xác không có khả năng được biết khi bắt đầu quá trình yêu cầu.

Quan trọng để ưu tiên các yêu cầu.

Đảm bảo rằng các thuộc tính chất lượng được xác định chính xác trong Kỹ thuật phần mềm.

Các thông số của kiểm thử phi chức năng

1. Security (Bảo mật): Tham số xác định cách hệ thống được bảo vệ an toàn trước các cuộc tấn công có chủ ý và đột ngột từ các nguồn bên trong và bên ngoài.2. Reliability (Độ tin cậy): Mức độ mà bất kỳ hệ thống phần mềm nào liên tục thực hiện các chức năng được chỉ định mà không gặp sự cố.3. Survivability (Khả năng sống sót): Tham số kiểm tra rằng hệ thống phần mềm tiếp tục hoạt động và tự phục hồi trong trường hợp lỗi hệ thống.4. Availability (Tính sẵn có): Tham số xác định mức độ mà người dùng có thể phụ thuộc vào hệ thống trong quá trình hoạt động.5. Usability (Khả năng sử dụng): Người dùng có thể dễ dàng học hỏi, vận hành, chuẩn bị đầu vào và đầu ra thông qua tương tác với một hệ thống.6. Scalability (Khả năng mở rộng): Thuật ngữ này đề cập đến mức độ mà bất kỳ ứng dụng phần mềm nào cũng có thể mở rộng khả năng xử lý của nó để đáp ứng nhu cầu gia tăng.7. Interoperability (Khả năng tương tác): Tham số phi chức năng này kiểm tra giao diện hệ thống phần mềm với các hệ thống phần mềm khác.8. Efficiency (Tính hiệu quả): Mức độ mà bất kỳ hệ thống phần mềm nào cũng có thể xử lý dung lượng, số lượng và thời gian đáp ứng.9. Flexibility (Tính linh hoạt): Thuật ngữ này đề cập đến sự dễ dàng mà ứng dụng có thể hoạt động trong các cấu hình phần cứng và phần mềm khác nhau. Giống như RAM tối thiểu, yêu cầu CPU.10. Portability (Tính di động): Tính linh hoạt của phần mềm để chuyển từ môi trường phần cứng hoặc phần mềm hiện tại của nó.11. Reusability (Tái sử dụng): Nó đề cập đến một phần của hệ thống phần mềm có thể được chuyển đổi để sử dụng trong một ứng dụng khác.

Các loại kiểm thử phi chức năng

Performance Testing (Kiểm thử hiệu năng)

Load Testing (Kiểm thử tải)

Failover Testing (Kiểm thử chuyển đổi dự phòng)

Compatibility Testing (Kiểm thử tương thích)

Usability Testing (Kiểm thử khả năng sử dụng)

Stress Testing (Kiểm thử về áp lực)

Maintainability Testing (Kiểm thử bảo trì)

Scalability Testing (Kiểm thử khả năng mở rộng)

Volume Testing (Kiểm thử khối lượng)

Security Testing (Kiểm thử bảo mật)

Disaster Recovery Testing (Kiểm thử khắc phục thảm họa)

Compliance Testing (Kiểm thử tuân thủ)

Portability Testing (Kiểm thử tính di động)

Efficiency Testing (Kiểm thử hiệu quả)

Reliability Testing (Kiểm thử độ tin cậy)

Baseline Testing (Kiểm thử cơ bản)

Endurance Testing (Kiểm thử độ bền)

Documentation Testing (Kiểm thử tài liệu)

Recovery Testing (Kiểm thử phục hồi)

Internationalization Testing (Kiểm thử quốc tế hóa)

Localization Testing (Kiểm thử nội địa hóa)

Trong những bài viết sau, mình sẽ giới thiệu kĩ hơn về các thông số của kiểm thử phi chức năng và một số loại kiểm thử phi chức năng. Cảm ơn các bạn đã đọc!

All Rights Reserved

Kiểm Thử Phần Mềm: Các Loại Kiểm Thử (Test Types) Và Kiểm Thử Bảo Trì

Tiếp tục series tóm tắt từ cuốn sách: FOUNDATIONS OF SOFTWARE TESTING ISTQB CERTIFICATION của tác giả Dorothy Graham, Erik van Veenendaal, Isabel Evans và Rex Black và một số kinh nghiệm của cá nhân trong quá trình làm việc nhằm cung cấp cho các bạn một cái nhìn tổng quan về kiểm thử phần mềm và các kiến thức cơ bản về kiểm thử, các kỹ thuật dùng trong kiểm thử và các công cụ hỗ trợ.

Ở bài viết trước mình đã giới thiệu với các bạn một số loại kiểm thử phần mềm phổ biến mà kỹ sư kiểm thử thường thực thi Kiểm thử phần mềm: Các mức kiểm thử (Test levels). Để tiếp nối Chương 2 trong tài liệu FOUNDATIONS OF SOFTWARE TESTING bài viết lần này mình sẽ giới thiệu Các loại kiểm thử (Test types) và kiểm thử bảo trì (Maintenance Testing) trong kiểm thử phần mềm.

1. Kiểm thử chức năng (functional testing).

Kiểm thử chức năng là một loại kiểm thử hộp đen (black box) và test case của nó được dựa trên đặc tả của ứng dụng phần mềm/thành phần đang test. Các chức năng được test bằng cách nhập vào các giá trị và kiểm tra kết quả đầu ra, ít quan tâm đến cấu trúc bên trong của ứng dụng.

Kiểm thử chức năng có thể được thực hiện từ 2 góc nhìn: dựa trên yêu cầu và dựa trên quy trình nghiệp vụ.

2. Kiểm thử phi chức năng (non-functional testing).

Kiểm thử phi chức năng cùng giống kiểm thử chức năng ở chỗ là thực hiện được ở mọi cấp độ kiểm thử,Kiểm thử phi chức năng xem xét các hành vi bên ngoài của phần mềm . Kiểm thử phi chức năng bao gồm:

Kiểm thử hiệu năng (performance testing).

Kiểm thử khả năng chịu tải (load testing).

Kiểm thử áp lực(stress testing).

Kiểm thử khả năng sử dụng (usability testing).

Kiểm thử bảo trì (maintainability testing).

Kiểm thử độ tin cậy (reliability testing)

Kiểm thử tính tương thích(portability testing)

Những đặc điểm phụ tương ứng:

Độ tin cậy (reliability): được xác định rõ hơn từ các đặc trưng phụ đã được tính toán cẩn thận(độ bền), khả năng chịu lỗi(fault tolerance), phục hồi (recoverability) và tuân thủ (compliance).

Khả năng sử dụng (usability): được chia thành các đặc trưng dễ hiểu, khả năng học hỏi (learnability), khả năng hoạt động (operability), sự thu hút (attractiveness) và tính tuân thủ (compliance).

Tính hiệu quả (efficiency): được chia thành hành vi về thời gian(hiệu suất), sử dụng tài nguyên (resource utilization) và tuân thủ (compliance).

Khả năng bảo trì (maintainability): bao gồm 5 đặc điểm phụ: phân tích, khả năng thay đổi, tính ổn định, khả năng kiểm tra và tuân thủ.

Tính tương thích (portability): bao gồm 5 đặc điểm phụ: khả năng thích ứng, khả năng cài đặt, cùng tồn tại, khả năng thay thế và tuân thủ.

3. Kiểm thử cấu trúc/kiến trúc phần mềm(structural testing).

Kiểm thử cấu trúc có thể xảy ra ở bất kỳ mức độ kiểm thử nào, được áp dụng chủ yếu ở kiểm thử thành phần, tích hợp.

Phương pháp kiểm thử cấu trúc cũng có thể áp dụng ở các mức độ như kiểm thử tích hợp hệ thống hoặc kiểm thử chấp nhận.

Kỹ thuật kiểm thử cấu trúc được sử dụng tốt nhất sau các kỹ thuật dựa trên các đặc điểm kỹ thuật( specification-based). Giúp đo lường kỹ lưỡng kiểm thử thông qua đánh giá độ bao phủ của loại cấu trúc.

Độ bao phủ là phạm vi mà một cấu trúc đã được thực hiện bởi một bộ kiểm thử, tính theo phần trăm của các mục đã được bao phủ. Nếu độ bao phủ không phải là 100% các kiểm thử sẽ được thiết kế để kiểm tra các mục đã bị bỏ lỡ để tăng độ bao phủ.

Các ký thuật được sử dụng để kiểm thử cấu trúc là: các kỹ thuật hộp trắng và các mô hình luồng điều khiển(Control flow models).

4. Kiểm thử xác nhận(confirmation testing) và kiểm thử hồi quy(regression testing)

Kiểm thử xác nhận.

Sau khi một lỗi được phát hiện và sửa chữa, phần mềm được kiểm thử lại để xác nhận lỗi ban đầu đã được khắc phục gọi là kiểm thử xác nhận (Confirmation testing).

Khi thực hiện kiểm thử xác nhận phải đảm bảo rằng các thử nghiệm được thực hiện giống như lần đầu tiên sử dụng, sử dụng các inputs, dữ liệu và môi trường giống nhau.

Kiểm thử hồi quy:

Mục đích của kiểm thử hồi quy là xác minh rằng sửa đổi trong phần mềm hoặc môi trường không gây ra các phản ứng phụ không mong muốn và hệ thống vẫn đáp ứng các yêu cầu.

Kiểm thử hồi quy là các kiểm thử lặp đi lặp lại của một chương trình đã được kiểm thử, sau khi sửa đổi.

Kiểm thử hồi quy được thực hiện bất cứ khi nào trong phần mềm hoặc là kết quả của các bản sửa lỗi, chức năng mới được thay đổi

Kiểm thử hồi quy dựa vào các bộ test case. Khi thêm chức năng mới thì phải thêm các testcase mới hoặc là các chức năng cũ được thay đổi hay xóa bỏ thì test case cũng phải được thay đổi hoặc xóa bỏ.

Kiểm thử hồi quy có thể được thực hiện tại tất cả mức độ kiểm thử , bao gồm kiểm thử chức năng, phi chức năng và kiểm thử cấu trúc.

5. Kiểm thử bảo trì (Maintenance testing).

Phân tích tác động và kiểm thử hồi quy:

Thông thường kiểm thử bảo trì gồm 2 phần: kiểm thử các thay đổi và Kiểm thử hồi quy để cho thấy phần còn lại của hệ thống không bị ảnh hưởng bởi công việc bảo trì.

Hoạt động chính và quan trọng trong việc kiểm thử bảo trì là việc phân tích các tác động. Từ việc phân tích sẽ quyết định được những phần nào của hệ thống có thể bị ảnh hưởng không mong muốn.

Phân tích rủi ro sẽ giúp quyết định được nơi cần tập trung kiểm thử hồi quy.

Khởi động cho kiểm thử bảo trì:

Kiểm thử bảo trì được thực hiện trên hệ thống đã tồn tại và được thực hiện khi có sự thay đổi, di chuyển hoặc rút lui của phần mềm hoặc hệ thống.

Kiểm thử bảo trì cho việc thay đổi: Các cải tiến bao gồm thay đổi tăng theo kế hoạch, khắc phục những thay đổi khẩn cấp và thay đổi môi trường.

Kiểm thử bảo trì cho sự chuyển đổi: Bao gồm kiểm tra hoạt động của môi trường mới , các phần mềm đã thay đổi. Kiểm thử di chuyển ( kiểm thử chuyển đổi) cũng cần thiết khi dữ liệu từ một ứng dụng khác sẽ được di chuyển vào hệ thống đang được bảo trì.

Kiểm thử bảo trì đối với hệ thống đã ngưng hoạt động: bao gồm kiểm thử việc chuyển đổi dữ liệu hoặc lưu trữ, nếu cần lưu trữ dữ liệu lâu dài.

Từ quan điểm của việc chuyển đổi thì có 2 loại:

Chuyển đổi theo kế hoạch bao gồm: Chuyển đổi hoàn thiện(phần mềm thích nghi được với mong muốn người dùng), Chuyển đổi thích nghi ( phần mềm thích nghi được với sự thay đổi của môi trường như phần cứng mới, phần mềm hệ thống mới), Chuyển đổi điều chỉnh theo kế hoạch ( sửa chữa lỗi).

Những chuyển đổi bột phát không thể lên kế hoạch được: đối với những lỗi như thế này cần phân tích rủi ro của hệ thống hoạt động để xác định chức năng hoặc chương trình gây lỗi.

Bạn đang xem bài viết Kiểm Thử Chức Năng Và Kiểm Thử Phi Chức Năng Là Gì trên website 3mienmoloctrungvang.com. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!