Non-functional testing

Page loading sign with a smiling face

In non-functional testing, a tester checks performance, security, reliability, and other quality attributes of a system.

Let’s cover:

Non-functional requirements

Non-functional requirements describe characteristics and constraints that are not directly related to functionality and focus on the quality aspects of a system.


Performance

Assessing how fast and efficiently the system performs operations under different loads

Security

Protecting data and meeting security requirements

Reliability

Ensuring the system runs without failures for a certain period of time and under different conditions

Scalability

The system’s ability to increase throughput as the load grows

An example of non-functional requirements

Just like functional requirements, non-functional requirements are usually documented in a specification.


2. Non-functional requirements

2.1 Performance

Server response time must not exceed 500 milliseconds.

2.2 Security

Authentication must use a JWT token signed with the HMAC SHA-256.

Data transfer between the client and the server must be secured with TLS 1.2 or higher.

2.3 Reliability

The system must be available at least 99.0 % of the time per calendar month, excluding scheduled maintenance. Total downtime must not exceed 7 hours and 18 minutes per month.

2.4 Scalability

As the load increases, the system must automatically scale out by increasing the number of application instances.

DevTools Timing

DevTools Timing helps you analyse the performance of network requests.

  1. Open DevTools:
    • Windows/Linux — F12 or Ctrl + Shift + I
    • macOS — F12 or Cmd + Option + I
  2. Go to the Network
  3. Reload the current page
  4. Select the required request
  5. Go to the Timing

Pay attention to the Waiting for server response this is the server response delay (latency).

DevTools Timing
Task
Task available to premium users!
Sidebar arrow