Skip to content
RTILA Web Business Automation
  • Home
  • Features
  • Pricing
  • Marketplace
  • Support
    • Documentation

Cart

RTILA Web Business Automation
  • Home
  • Features
  • Pricing
  • Marketplace
  • Support
    • Documentation
Free Download
Free Download

Billing & Licensing

10
  • Change License’s registered email address
  • Upgrade a License
  • Manage License Activation Count
  • RTILA Studio local database
  • Standalone Exe Antivirus False Positive Alert
  • Team Member Activation URL & License
  • AppSumo Codes Redemption
  • Download & Activate RTILA Studio
  • AppSumo Code Stacking & Upgrade
  • Mac OS Installation Warning

Custom Commands

36
  • WordPress Posts via API (beta)
  • Webhook Send Request
  • Target Text Before After
  • Download File to Folder
  • Clipboard Copy & Paste
  • ChatGPT API Full Control
  • Generate Random Numbers and Text
  • Regex & JS Filters
  • API Bridge Get Post Requests
  • WhatsApp API send MSG
  • GET HTML
  • Slack Notification Command
  • Target Elements With Text Value
  • Directory Get Files Path
  • Folder and File Monitoring
  • Get iFrame URL
  • Get File Content
  • Verify License Easy Digital Downloads
  • Save Variable to File
  • Rename File
  • Move File to New Directory
  • Delete File
  • Mouse Events
  • Get System Info
  • Airtable Get & Update Records
  • Email Send Via SMTP
  • Wait For Element to disappear
  • OCR Passport Reader
  • Target Element in Shadow Dom
  • Airtable Get Records
  • Airtable Update Records
  • Sanitize URL
  • Email Verification
  • Get Hardware ID HWID
  • Timestamp Unix and UTC
  • Switch Tab Focus Command

How-To & Tutorials

42
  • How to target a CSS element
  • Change default Browser
  • Export Results to a CSV file
  • Profile Session Feature
  • OCR Feature: read text from images
  • Auto Download Pinterest Images
  • Save current URL using JavaScript
  • Search & Filter Projects
  • Error handling Strategy
  • Working with Arrays and Objects in RTILA
  • Auto Comment On WordPress Posts
  • Run Automations in Silent Mode
  • License Check for Standalone Executables
  • Trigger Standalone Bots via Command lines
  • How To Find Custom Collections For List type Datasets
  • Correcting & Completing Auto-Recorder Commands
  • RTILA WordPress Plugin installation & configuration
  • Using Developer Tools In RTILA Studio
  • Create A Project From Scratch
  • Bring back disappearing commands & properties
  • Export & share an RTILA project file
  • Install Browser Extensions using Profile Session
  • How To Fill a Form Using Generic Form Filler Child-Project
  • Project Settings: Import URLs manual entry, From File, From Project, and Read XML Sitemap
  • Project Settings: Import URLs manual entry
  • Use Local Storage Variable to scrape Do-follow Links
  • Schedule Launch of Automations
  • Email Results File via Gmail
  • Read from Google Sheets & Post on WordPress
  • Website Load Testing Automation
  • Read data from a txt or csv file
  • Downloading files
  • Open in a New tab
  • Using filters to complete a URL
  • Choosing the right collection
  • Set a Counter with JavaScript
  • Setup reCAPTCHA Resolution
  • Woo Categories & ChatGPT API
  • Login to Google Account & share profile session
  • Google Search Baby Steps
  • Auto-Recorder as a 1st step
  • Standalone Executable Bots

Official Commands

58
  • List Command
  • Incogniton Anti-detect browser
  • Save results to file command
  • RTILA Cloud API Documentation
  • FTP / SFTP Command
  • Custom Commands
  • Integrations
  • RPA & Desktop OS Commands
  • Add And Configure Dataset Properties
  • Inspection Panel Interface & Elements
  • Config & binaries files for Standalone
  • Focus On Element Command
  • Go To Url Command
  • Scroll Element Command
  • Execute JavaScript Code command
  • Reload Page Command
  • Compare Variables Condition
  • Take Screenshot Command
  • Smart Variable (ChatGPT API)
  • Child Projects
  • Confirm (Dialog Box) Command
  • Populate Text Field Command
  • Hover Mouse On Element Command
  • Download Page Command
  • Stop Automation Command
  • Log Message Command
  • Input (prompt box) Variable
  • Extract Results Command
  • Wait for Element to Appear Command
  • Selector (DOM element)
  • Check Radio Input Command
  • Dynamic Variable (JavaScript Code)
  • Static Variables
  • Set Checkbox State Command
  • Set Dropdown Value Command
  • Press a Keyboard Key Command
  • Upload File Command
  • Double Click On An Element Event
  • Click On An Element Event
  • Switch Browser Identity Command
  • Slack Notification Command
  • Save as Pdf Command
  • Go Back To Previous Page Command
  • Go Forward To Next Page Command
  • Proxies Built-In Rotation
  • External Proxy Rotation API
  • Regular Expressions
  • Mock Location Command
  • Close Page Command
  • Desktop Notification Command
  • Command Folder
  • Clear Cookie Command
  • Change Page Size Command
  • Break Loop Command
  • DataSet Types
  • Link Crawler Command
  • Alert Message Command
  • Wait Commands
  • Home
  • Docs
  • How-To & Tutorials
  • Website Load Testing Automation
View Categories

Website Load Testing Automation

4 min read

Use case #

For those who are interesting in testing the load capacity of their website and or web hosting infrastructure without breaking the bank, we have developed a Public Template and documentation on how to automate and test the TTFB (Time To First Byte) and the Fully Loaded Time (FLT) in milliseconds for a website of your choice. For our example we will do the Load test on WordPress.com

Specify the source of URLs to test #

For this example we are using the sitemap of WordPress.com to crawl through a number of pages and open them simultaneously. This automation can be modified to open the same URL multiple times, or load a specific list of URLS from a csv file for instance. See below where to modify the URL of the WordPress website sitemap that we are using in our demo/test.

Configure the number of concurrent tabs #

Before starting you can configure the number of concurrent connections you want to have. We advise to start with 10 concurrent tabs and increase slowly if the website is able to hold that traffic. You can change this value from the Project Settings see below screenshot.

JavaScript to load before opening the browser #

In this case of testing the loading time, we need to be able to initiate our measurement of response time before or at the very start of the connection to the website. For this reason we are using a JavaScript code that is added in the project settings so that this code is executed before opening each URL to initiate the measurement variables, and then during the automation run our variable commands will catch back the results of those measurements. Follow the screenshot below to find out where to place the JavaScript in the project settings

Below is the code we use at the project settings level, so that you can modify, improve or learn from it.

Copy CodeCopiedUse a different Browser
var timerStart = Date.now();
window.addEventListener('load', () => {
  const FLT_VALUE = Date.now()-timerStart; // Time after everything has been loaded
  window.localStorage.setItem('flt-value', FLT_VALUE); // save FLT value into a local storage variable named flt-value
  console.log(`FLT: ${FLT_VALUE } ms`);
});

fetch(window.location.href)
  .then(response => {
    const url = response.url;
    const resourceTiming = performance.getEntriesByName(url)[0];
    const responseStart = resourceTiming.responseStart;
    const roundedResponseStart = Math.ceil(responseStart);
    window.localStorage.setItem('ttfb-value', roundedResponseStart);
    console.log(`Response start time: ${roundedResponseStart} ms`);
  })
  .catch(error => {
    console.error(error);
  });

Variable Commands used to catch the measurements #

On the Automation Panel side, we are calling a number of Variable Commands and saving the time spent between the moment the variable was initiated (from Project setting JavaScript code execution) and the moment the Variable Command is called.

Within a Dynamic Variable command we are catching the result from the local storage variable flt-value which was initiated at project settings level before the launch of the browser. See below the JavaScript code used to catch this value.

Copy CodeCopiedUse a different Browser
VALUE=window.localStorage.getItem('flt-value');

Then we do the same with a second Dynamic Variable command which we have named Dynamic-ttfb and which uses the JavaScript below to catch the local storage variable for the TTFB, see code below.

Copy CodeCopiedUse a different Browser
VALUE=window.localStorage.getItem('ttfb-value');

Visualize Results in RTILA #

You can use our rudimentary but useful visualization tool which is in the Project settings, to have an illustration of the results of the Load test. You can see in dark blue the TTFB (Time To First Byte) and in grey the Fully Loaded Time (FLT) expressed in milliseconds (ms).

Export results to CSV File #

You can also export the load time results into a CSV file for further analysis and reporting, including using Power BI to create more advanced visual reports. To do so just go to the RESULTS TAB, click on PREVIEW & EXPORT

You will now see the table of results with a pagination option. And you can click on EXPORT ALL RESULTS, choose the location where you want to save this CSV file as well as the file name, then click save.

Download, edit, enhance and learn from this template #

You can find this Template in the Public Template section inside RTILA Studio (New Project > Public Templates) or you can download it from this link. You are free to use, edit, improve and reverse-learn from this template.

    Still stuck? How can we help?

    How can we help?

    Updated on 25/03/2023
    Read from Google Sheets & Post on WordPressRead data from a txt or csv file

    Powered by BetterDocs

    Table of Contents
    • Use case
    • Specify the source of URLs to test
    • Configure the number of concurrent tabs
    • JavaScript to load before opening the browser
    • Variable Commands used to catch the measurements
    • Visualize Results in RTILA
    • Export results to CSV File
    • Download, edit, enhance and learn from this template

    INFO & LEGALS

    PRICING
    PAYMENTS & REFUND
    COOKIES - PRIVACY
    LICENSE AGREEMENT

    DOWNLOADS

    BOT LAUNCHER
    RTILA STUDIO ON GITHUB
    BOT & TEMPLATES
    PARTNERSHIPS

    RESOURCES

    VIDEO TUTORIALS
    DOCUMENTATION
    SUPPORT PORTAL
    FB COMMUNITY SUPPORT

    stay in touch

    Subscription Form

    follow us on

    • Facebook
    • YouTube
    • RTILA LinkedIn Page
    Copyright © RTILA CORPORATION