How to perform Network Throttling in Safari?
By Sanghita Ganguly, Community Contributor - August 10, 2022
Network Throttling is a method that most developers use intentionally to slow down the speed of the internet on web browsers like Safari. It’s also known as network condition emulation which checks the browser performance in different bandwidths like 2G, 3G, 4G, etc. However, know that simulator/emulator vs real devices testing differ in accuracy when it comes to real world usage.
This guide will cover everything about network throttling and three useful methods to perform network throttling in Safari and test performance poor network conditions on real device-broswer combination.
What is Network Throttling and its Benefits?
Network Throttling is a technique software developers use to test the web performance on different network conditions/bandwidths, including 2G, 3G, 4G, Edge, abd WiFi. This method helps to throttle your browser and conduct an initial bit of performance testing
Also, if you’re a true blue thorough tester and you’re testing websites from different countries, network throttling should be on the top of your list.
Here’s how network throttling with BrowserStack App Live benefits and enhances the realtime web experience in stable/unstable/ low networks bandwidths:
- Check bandwidth consumption during runtime and inactivity.
- Monitor upload and download speeds.
- Achieve maximum efficiency by identifying and eliminating bandwidth bottlenecks.
- Profile web app performance and behaviour over varying network conditions like poor connectivity and fluctuating or throttled network.
Here are three main methods for Throttlling network in Safari:
Method 1: Using Network Link Conditioner in iOS Device
Here’s the step-by-step process to perform network throttling in Safari for testing purposes:
Step 1 – Open Mac App Store and install “XCode”
- First, open the Mac App Store on your Mac.
- Search for “XCode” and install it on your Mac.
Step 2 – Connect your iPhone to Mac
- Use a USB cable to connect your iPhone to Mac.
- Click (confirm/yes) for any requests on your Mac or iPhone.
Step 3 – Open XCode
Once the XCode is installed successfully, launch the application.
Step 4 – Go to Developer Settings
- Now, go to your iPhone setting. You’ll find a new option, “Developer” in your iPhone’s settings.
If you cannot see this option, try to rerun the XCode in Mac and reconnect your iPhone with Mac to search for the option in your iPhone setting.
Step 5 – Turn on “Network Link Conditioner” on iPhone
- Then, click on the “Developer” option and scroll down below.
- You’ll see an option “Network Link Conditioner” which you will have turn it on.
- Now you’ve different bandwidth options to throttle your internet connection on Safari.
Note: Don’t forget to turn off the “Network Link Conditioner” after the testing is done.
Method 2: Using Network Link Conditioner in MacOS
According to Apple’s official website, network simulation can be done for testing by “Network Link Conditioner.”
Here’s the step-by-step process to install and use Network Link Conditioner in Mac:
Step 1 – Download the “XCode” Package on your Mac
To download and install XCode on your Mac, you’ve two options:
- First, you can download XCode via Mac App Store (latest version)
- Or, you can go to Apple’s Developer Site to download any specific version of the XCode Package.
Step 2 – Install “Additional Tools for XCode”
- Once you’ve installed XCode as per your suitability, go to XCode on your Mac, click “Open Developer Tool,” and select “More Developer Tool.”
- Now, search for “Additional Tools for XCode.” (You need to download the version as per your XCode version)
Step 3 – Use “Network Link Conditioner”
- Once you’ve downloaded the “Additional Tools for XCode, open the DMG file and go to the Hardware directory.
- Here you’ll see an icon of “Network Link Conditioner.prefPane” that you need to install by double-clicking.
Step 4 – Use Safari Throttle Network (MacOS)
Now, you’ve different bandwidth options:
- 100% Loss
Developers can conduct Safari throttle network by using Network Link Conditioner on Mac.
Method 3: Network Throttling using App Live (Real iOS Device)
The most accurate way for developers to use network throttling and test performance in different bandwidths in mobile browsers is through BrowserStack. Similar to how developer would conduct network throttling in Chrome seamlessly, we can follow a similar approach while throttling network speeds on iOS Safari.
BrowserStack App Live is the industry leading choice for developers to test web performance on different bandwidths to achieve maximum efficiency by identifying and eliminating bandwidth bottlenecks.
Step 1 – Create a Free Account with BrowserStack App Live
Click Here to create a free account to use BrowserStack App Live.
Once you Sign up /Log in, you can access the App Live Dashboard for Network Throttling.
Once you’ve created an account on BrowserStack, click on App Live for network throttling. BrowserStack offers both Android and iOS.
Step 3 – Select an iOS Device
To test the Safari browser, you can select an iOS device of your choice.
iPhone 13 with iOS v15 Selected
Step 4 – Click on “Throttle Network”
Now, it’s time to use BrowserStack’s Throttle Network feature to test web performance on different bandwidths as and when needed as per the test case.
Click on “Throttle Network” and select any network options:
- 4G – high latency
- Custom value options
With BrowserStack App Live, developers can easily conduct network throttling because of its user-friendly interface, fast response and many Safari throttle network options to test web app performance for real user conditions.
You can also enable network tracking that uses proxy to monitor HTTP(S) request and response in realtime.
An accurate way of validating how web pages load in poor network connections is to test them on real browsers installed on real devices. BrowserStack’s real device cloud enables developers and QAs to test their websites in real user conditions, including different internet bandwidths.
Testers and teams can access:
- Multiple browser versions of Chrome, Safari, Opera, Edge etc.
- DevTools for Chrome and Safari for accurate web elements inspection
- Latest and legacy versions of real Android smartphones from vendors like Samsung, OnePlus, Motorola, etc.
- Latest and legacy versions of real Apple devices like iPhone 13, iPhone 12, iPhone X, iPhone 11, iPad, iPhone 6, etc.