Skip to main content
All CollectionsEducational MaterialTesting Tools
Understanding the Structure of URLs for Manual Exploratory Testing
Understanding the Structure of URLs for Manual Exploratory Testing

A beginner’s guide to website URL structure for easy navigation and bug understanding.

Charlie avatar
Written by Charlie
Updated over a week ago


As a manual exploratory tester, navigating websites effectively is a crucial skill. Understanding URL structure can significantly aid in efficiently exploring websites, especially when testing scenarios require navigating back to specific pages or analyzing parameters on search results pages.

This article will delve into the significance of URL structure for manual exploratory testers and provide practical tips to enhance your website navigation skills.

URL Structure

  1. Protocol: The protocol is the first part of a URL and indicates the communication protocol between the web browser and the web server. The most common protocol is http:// (Hypertext Transfer Protocol), used for standard web pages. Another commonly used protocol is https:// (Hypertext Transfer Protocol Secure), which provides a secure, encrypted connection for sensitive information transmission.

  2. Subdomain: A subdomain is an optional component that precedes the domain name in a URL. It is a way to organize and categorize different sections or functions of a website. For example, in the URL, the academy is the subdomain. Subdomains can be used for various purposes, such as hosting a blog, a help centre, or a separate version of a website for a different region.

  3. Domain Name: The domain name is the central part of a URL and represents the unique identifier for a website. It typically consists of two parts: the second-level domain (SLD) and the top-level domain (TLD). In the URL, the test is the SLD.

  4. Top-Level Domain (TLD): The top-level domain (TLD) is the last part of a domain name in a URL. It represents the highest level in the hierarchical domain name system. Common TLDs include .com, .org, .net, .edu, and .gov. In the URL, the io is the TLD.

  5. Path: The path is an optional component after the domain name and represents the specific location or file on a web server. It denotes the structure of directories or files within the website's file system. The path can include multiple directories separated by slashes (/) and may end with a specific file or a trailing slash (/) to indicate a directory. For example, in the URL, en/articles/2541949-bug-report-requirements is the path.

Graphically, this is how these elements build a basic URL structure:

What's the purpose of URLs in testing?

The role of URL structure is website navigation. URLs help as a roadmap that guides us testers through a website's various pages and sections so we can retrace steps by allowing us to manually modify the URL to go back to a specific page we were testing.

Another helpful way to understand URL structure is by analyzing the parameters on Search Results Pages. Search queries often generate dynamic URLs with parameters. Examining these parameters in the URL allows you to gain insights into the search functionality and test different scenarios.

URLs also help us identify and stay on track with the environment under testing. For identification, let's look at the URL of our Academy used in the example above. Note that the path part starts with ❝en❞, which refers to English. When a website offers different language versions, including a language code or identifier as part of the URL path is common. This allows the website to serve the content in the desired language. By including the language code in the URL path, the website can differentiate between different language versions and display the appropriate content to the user.

Staying on track with the environment under testing is easy now that you know what the URL should look like, and comparing it with the URL provided on the Overview of the test cycle prevents you from submitting out-of-the-scope bugs for having tested a different environment.

If any of the domains or the path of the URL of the bug differs from the given one, then it's most likely that you've left the environment in scope.

Tips for Navigating Websites Using URL Structure

To harness the power of URL structure in your manual exploratory testing, consider the following tips:

a. Observe and Decode URLs: Pay close attention to the URLs displayed in the browser's address bar. Analyze the patterns, query parameters, and other components to decipher the website's structure.

b. Modify URLs for Backtracking: When you need to return to a previous page, manually edit the URL to remove sections or parameters that direct you to subsequent pages. This allows you to navigate directly to the desired page you want to retest.

c. Test Search Functionality: Experiment with different search queries and observe the resulting URLs. By manipulating the parameters in the URL, you can explore variations of search results and validate the behaviour of the search feature.

d. Understand Query Parameters: URL parameters are vital in generating dynamic content. Gain familiarity with common query parameters and their meanings, such as sorting, filtering, and pagination. Test various combinations to ensure the website handles them correctly.

e. Analyze URL Changes: Pay attention to how URLs change as you interact with different elements on the website, such as submitting forms, clicking on links, or applying filters. This helps you understand the underlying mechanisms and aids in identifying potential issues.

Here, you'll learn how URL understanding is applied to the below Search Results Page example.

As a manual exploratory tester, understanding URL structure empowers you to navigate websites effectively, retrace your steps, and test various scenarios. By leveraging URL manipulation techniques and decoding URL components, you can enhance your website exploration skills and effectively communicate findings to your team. Embrace the power of URL structure and unlock new possibilities in your testing endeavours.

Did this answer your question?