Non-functional testing

Chuyên đề thảo luận về kiểm thử hộp đen (Black-box Testing)
Forum rules
Chuyên đề này chỉ thảo luận về Black-box Testing.
Để có kết quả nhanh, các bạn nên search trước khi tạo chủ đề mới.
Post Reply
hoangliensonmt
Jr. Tester
Posts: 88
Joined: Mon 26 Jul, 2010 5:42 pm
Contact:

Non-functional testing

Post by hoangliensonmt »

Phần 6: Kiểm thử phi chức năng



6. Non-functional testing

Special methods exist to test non-functional aspects of software. In contrast to functional testing, which establishes the correct operation of the software (correct in that it matches the expected behavior defined in the design requirements), non-functional testing verifies that the software functions properly even when it receives invalid or unexpected inputs. Software fault injection, in the form of fuzzing, is an example of non-functional testing. Non-functional testing, especially for software, is designed to establish whether the device under test can tolerate invalid or unexpected inputs, thereby establishing the robustness of input validation routines as well as error-handling routines. Various commercial non-functional testing tools are linked from the software fault injection page; there are also numerous open-source and free software tools available that perform non-functional testing.


6.1 Software performance testing and load testing

Performance testing is executed to determine how fast a system or sub-system performs under a particular workload. It can also serve to validate and verify other quality attributes of the system, such as scalability, reliability and resource usage. Load testing is primarily concerned with testing that can continue to operate under a specific load, whether that be large quantities of data or a large number of users. This is generally referred to as software scalability. The related load testing activity of when performed as a non-functional activity is often referred to as endurance testing.

Volume testing is a way to test functionality. Stress testing is a way to test reliability. Load testing is a way to test performance. There is little agreement on what the specific goals of load testing are. The terms load testing, performance testing, reliability testing, and volume testing, are often used interchangeably.

6.2 Stability testing

Stability testing checks to see if the software can continuously function well in or above an acceptable period. This activity of non-functional software testing is often referred to as load (or endurance) testing.

6.3 Usability testing

Usability testing is needed to check if the user interface is easy to use and understand.

6.4 Security testing

Security testing is essential for software that processes confidential data to prevent system intrusion by hackers.

6.5 Internationalization and localization

Internationalization and localization is needed to test these aspects of software, for which a pseudolocalization method can be used. It will verify that the application still works, even after it has been translated into a new language or adapted for a new culture (such as different currencies or time zones).

6.6 Destructive testing

Destructive testing attempts to cause the software or a sub-system to fail, in order to test its robustness.



tvn
Admin
Posts: 4900
Joined: Tue 10 Aug, 2010 10:11 am
Location: HCM
Contact:

Kiểm thử phi chức năng - Non-functional testing

Post by tvn »

Phần 6: Kiểm thử phi chức năng

6 Non-functional testing
6.1 Software performance testing and load testing
6.2 Stability testing
6.3 Usability testing
6.4 Security testing
6.5 Internationalization and localization
6.6 Destructive testing


6. Non-functional testing – Kiểm thử phi chức năng

Các phương pháp đặc biệt tồn tại để test các khía cạnh phi chức năng của phần mềm. Trái ngược với việc kiểm thử chức năng của phần mềm (functional testing), điều này tạo ra phần mềm hoạt động đúng (hoạt động đúng là hoạt động theo các hành vi mong đợi đã được định nghĩa trong bảng thiết chi tiết yêu cầu), kiểm thử phi chức năng chứng thực rằng các chức năng của phần mềm có thể hoạt động bình thường ngay cả khi nó nhận được các dữ liệu đầu vào không mong đợi hoặc không hợp lệ. Software fault injection và fuzzing testing là một ví dụ về kiểm thử phi chức năng. Kiểm thử phi chức năng – đặc biệt đối với phần mềm – thì được thiết kế để kiểm chứng xem phần mềm trong điều kiện kiểm tra có thể chịu đựng được các dữ liệu đầu vào không hợp lệ hoặc không mong đợi hay không, theo cách đó chứng minh độ bền của của các thủ tục xác nhận dữ liệu đầu vào tốt như các thủ tục xử lý lỗi. Nhiều công cụ kiểm tra phi chức năng thương mại khác được liên kết từ trang tiêm lỗi phần mềm (software fault injection page); phần lớn chúng là các công cụ phần mềm miễn phí mã nguồn mở có thể thực thi kiểm thử phi chức năng.


6.1. Software performance testing and load testing – Kiểm thử hiệu năng và khả năng chịu tải của phần mềm

Performance testing được thực hiển để xác định hệ thống hoặc hệ thống phụ hoạt động nhanh như thế nào trong từng lượng công việc (workload) đặc thù riêng biệt. Nó cũng có thể phục vụ việc validate (kiểm tra tính hợp lệ) và verify (xác minh/chứng thực) các thuộc tính chất lượng khác của hệ thống, ví dụ như khả năng mở rộng (scalability), mức độ tin cậy (reliability) và cách sử dụng tài nguyên (resource usage). Load testing liên quan chính tới việc kiểm thử phần mềm có thể tiếp tục hoạt động dưới một lượng công việc riêng, một số lượng lớn dữ liệu hoặc số lượng lớn người dùng hay không. Việc này thường liên quan đến tính mở rộng của phần mềm. Hoạt động liên quan đến load testing khi thực thi hoạt động phi chức năng thường liên quan đến kiểm thử mức độ chịu đựng (endurance testing).

Volume testing là một cách để kiểm thử các đặc tính phi chức năng của phần mềm. Stress testing là một cách để kiểm thử mức độ tin cậy (reliability) của phần mềm. Load testing là một cách để kiểm thử hiệu năng (performance). Chúng có một sự phù hợp nhỏ so với các mục tiêu của load test. Các thuật ngữ load testing, performance testing, reliability testing, và volume testing thường có thể sử dụng thay thế cho nhau.

6.2. Stability testing – Kiểm thử tính ổn định

Thực hiện kiểm thử tính ổn định để xem các chức năng của phần mềm có thể hoạt động liên tục trong một khoảng thời gian có thể chấp nhận được hay không. Hoạt động này của kiểm thử phi chức năng thường liên quan đến kiểm thử tải (hoặc kiểm thử độ bền) của phần mềm.

6.3. Usability testing – Kiểm thử tính khả dụng

Kiểm thử tính khả dụng là cần kiểm tra giao diện người dùng có dễ sử dụng và dễ hiểu hay không (xem giao diện có thân thiện với người dùng không – nếu giao diện khó sử dụng, khó hiểu thì phần mềm sẽ ít được khác hàng chấp nhận).

6.4. Security testing – Kiểm thử bảo mật

Kiểm thử bảo mật là yếu tố cần thiết cho phần mềm đang xử lý dữ liệu bảo mật để ngăn chặn việc hacker xâm nhập trái phép vào hệ thống.

6.5. Internationalization and localization – Kiểm thử ở mức toàn cầu và cục bộ

Việc quốc tế hóa và nội địa hóa là cần thiết để kiểm thử các khía cạnh của phần mềm, với mục đích sử dụng phương pháp nội địa hóa giả (giả lập môi trường nội địa để chạy chương trình). Nó sẽ chứng thực rằng ứng dụng sẽ làm việc, thậm chí khi nó được dịch sang ngôn ngữ khác hoặc thích nghi với một nền văn hóa mới (như là các múi giờ hay các đơn vị tiền tệ khác).

6.6. Destructive testing – Kiểm thử phá hủy

Kiểm thử phá hủy cố gắng tìm ra nguyên nhân mà hệ thống phần mềm hoặc hệ thống phụ của nó bị lỗi (fail) để kiểm thử độ bền của nó (phần mềm).



haitvn
Hoc Tester
Posts: 8
Joined: Tue 26 May, 2015 8:51 am
Contact:

Re: Non-functional testing

Post by haitvn »

Hi, mình mới tìm hiểu về tester, đọc post này mình thấy rất hữu ích, nhưng khi làm mình lại ko biết test phi chức năng thì test ntn, vì post chủ yếu nói về khái niệm nên mình chưa hình dung được testcase của nó. Nên nếu ai có mẫu testcase phi chức năng cho mình xin xem với ah. Cảm ơn nhiều ạ!



tvn
Admin
Posts: 4900
Joined: Tue 10 Aug, 2010 10:11 am
Location: HCM
Contact:

Re: Non-functional testing

Post by tvn »

Bạn có thể tham khảo một số trường hợp sau.

Usability Test Scenarios:
  • Web page content should be correct without any spelling or grammatical errors
    All fonts should be same as per the requirements.
    All the text should be properly aligned.
    All the error messages should be correct without any spelling or grammatical errors and the error message should match with the field label.
    Tool tip text should be there for every field.
    All the fields should be properly aligned.
    Enough space should be provided between field labels, columns, rows, and error messages.
    All the buttons should be in a standard format and size.
    Home link should be there on every single page.
    Disabled fields should be grayed out.
    Check for broken links and images.
    Confirmation message should be displayed for any kind of update and delete operation.
    Check the site on different resolutions (ex. 1024x768)
    Check the end user can run the system without frustration.
    Check the tab should work properly.
    Scroll bar should appear only if required.
    If there is an error message on submit, the information filled by the user should be there.
    Title should display on each web page
    All fields (Textbox, dropdown, radio button etc) and buttons should be accessible by keyboard shortcuts and the user should be able to perform all operations by using keyboard.
    Check if the dropdown data is not truncated due to the field size and also check whether the data is hardcoded or managed via administrator.
Nguồn: https://www.guru99.com/complete-web-app ... klist.html



haitvn
Hoc Tester
Posts: 8
Joined: Tue 26 May, 2015 8:51 am
Contact:

Re: Non-functional testing

Post by haitvn »

tvn wrote:Bạn có thể tham khảo một số trường hợp sau.

Usability Test Scenarios:
  • Web page content should be correct without any spelling or grammatical errors
    All fonts should be same as per the requirements.
    All the text should be properly aligned.
    All the error messages should be correct without any spelling or grammatical errors and the error message should match with the field label.
    Tool tip text should be there for every field.
    All the fields should be properly aligned.
    Enough space should be provided between field labels, columns, rows, and error messages.
    All the buttons should be in a standard format and size.
    Home link should be there on every single page.
    Disabled fields should be grayed out.
    Check for broken links and images.
    Confirmation message should be displayed for any kind of update and delete operation.
    Check the site on different resolutions (ex. 1024x768)
    Check the end user can run the system without frustration.
    Check the tab should work properly.
    Scroll bar should appear only if required.
    If there is an error message on submit, the information filled by the user should be there.
    Title should display on each web page
    All fields (Textbox, dropdown, radio button etc) and buttons should be accessible by keyboard shortcuts and the user should be able to perform all operations by using keyboard.
    Check if the dropdown data is not truncated due to the field size and also check whether the data is hardcoded or managed via administrator.
Nguồn: https://www.guru99.com/complete-web-app ... klist.html
Thank you!



Post Reply

Return to “Black box Testing - Kiểm thử hộp đen”