Learn about Non-functional testing (Part 2)

Tram Ho

1. Compliance testing

  • Compliance testing is a non-functional test. Compatibility testing is basically a test of an application or product built with a computer environment. It checks whether the built-in software application or product is compatible with other hardware, operating systems, databases or system software.
  • Compliance testing involves IT standards monitored by the company and it’s a test to find deviations from the company’s prescribed standards. It identifies what we are doing and meets the defined standards.
  • We should be careful in carrying out this test if there are any restrictions on the implementation of the standards in our project and need analysis to improve the standards.

2. Security testing

  • Security testing is basically to check if the application or product is secure. Anyone can hack the system or log into the application without permission. It checks to see if the application is vulnerable, if anyone hacks the system or logs into the application without permission. Security Testing is arguably one of the most important tests for an application.
  • Security testing is performed to check for any information leaks by encrypting applications or using multiple software and hardware and firewalls, etc.
  • Methods of performing security testing:
  1. Tiger Box: made on a laptop which has a collection of operating systems and hacking tools. This test helps to check penetration and security tests to conduct an assessment of vulnerabilities and attacks.
  2. Black Box: Tester is authorized to do testing on everything about network topologies and technologies.
  3. Gray Box: is a combination of black box and white box models
  • Example of a sample test scenario for security testing:
  1. Password must be in encrypted format
  2. Application or system should not allow invalid users
  3. Check the cookie and session time for the application
  4. For financial websites, the Back button of the Browser should not work.

3. Scalability testing

  • This is testing a software application to measure scalability according to any of its non-functional capabilities such as load support, number of transactions, data volume.
  • Scalability testing tests the ability of a system, network, or process to continue working well as it is resized or scaled to meet growing demand.
  • Example: An ecommerce site can process orders for up to 100 users at once but scalability testing can be performed to check whether it can handle higher loads. during the peak shopping season or not.

4. Volume testing

  • Volume testing refers to testing a software application or product with a certain amount of data. For example, if we want to test our application volume with a specific database size, we need to extend our database to that size and then check the performance of the application. above it.
  • The purpose of mass checking is to determine system performance with increasing data volume in the database.
  • Benefits of using Volume Testing:
  1. How to identify download issues, you can save a lot of money that will be spent on application maintenance.
  2. It helps in getting started faster than capacity expansion plans
  3. Help to identify critical issues early
  4. It ensures that your system is now usable in the real world

5. Stress testing

  • Stress testing involves testing beyond the software’s ability to operate normally. It is a form of testing used to determine the stability of a given system. The purpose of this test is to ensure that the software does not crash in the context of insufficient computing resources (such as memory or disk space).
  • Most systems are developed for normal operating conditions, so if the operating conditions become abnormal for example: if multiple users simultaneously access the site beyond the maximum but the system limits If you have undergone stress testing, the error will be negligible even under abnormal conditions.
  • Although stress testing is important, most projects do not perform stress testing until the end of the software development life cycle (SDLC) can have serious consequences if there are performance problems in the application.
  • Purpose of Stress testing:
  1. Stress testing tries to break down a system that is being tested by overwhelming its resources.
  2. The main purpose of Stress testing is to ensure that the system fails and recovers easily, this quality is also known as resilience.
  3. Stress testing can also be used to discover data corruption issues, hardware problems.
  • Types of technical stress testing:
  1. Distributed Stress Testing
  2. Transactional Stress Testing
  3. Application Stress Testing
  4. Exploratory Stress Testing
  5. Systematic Stress Testing

6. Documentation testing

  • Types of documents include testcase, test incident report, test log, test plan, test procedure, test report. Examining all the documents mentioned above is called document inspection.
  • Documentation is any written or photographic information that describes, identifies, assigns, reports, or confirms activities, requirements, procedures, or results. Documentation is just as important for a successful product as the product itself. If the document is poor, does not exist or is false, it reflects the quality of the product and the supplier.
  • This is one of the most effective methods to perform testing. If the documentation is not correct there will be big and costly problems. Documents can be tested in a number of different ways for varying degrees of complexity. They range from running documents through a spelling and grammar checker, to manually reviewing documents to eliminate any ambiguities or inconsistencies.
  • Document testing can start at the beginning of the software process and thus save costs, because the sooner an error is discovered, the lower the cost of repairs.

Conclude

The above are the share of non-functional (P2) tests that can help everyone

Source: http://tryqa.com/what-is-non-functional-testing-testing-of-software-product-characteristics/

Share the news now

Source : Viblo