Endtest

Endtest

›Web Tests

Web Tests

  • How to create Web Tests
  • Finding elements in Web Applications
  • How to execute Web Tests
  • Assertions for Web Tests
  • IF Statements for Web Tests
  • Web Applications with restricted access
  • How to test in iframes
  • How to test in multiple tabs
  • How to test File Uploads
  • How to test File Downloads
  • How to test Emails
  • How to test PDF files
  • How to test Chrome Extensions
  • Dealing with reCAPTCHA
  • Dealing with Dynamic Locators
  • Dealing with Canvas Elements
  • Performing a Drag and Drop
  • Execute JavaScript
  • Testing WebRTC Applications
  • How to scroll in Web Tests
  • How to test Checkboxes
  • How to test Dropdowns
  • Dealing with Sessions
  • Web Crawler
  • Export Web Tests
  • Migrating from Selenium

Mobile Tests

  • How to create Mobile Tests
  • Finding elements in Mobile Applications
  • How to execute Mobile Tests
  • Assertions for Mobile Tests
  • IF Statements for Mobile Tests
  • How to scroll in Mobile Tests
  • Performing Complex Gestures

Advanced

  • Variables
  • Waits
  • Endtest API
  • Scheduler
  • Drive
  • Adding Collaborators
  • Computer Vision
  • Importing Test Cases
  • Using Loops
  • Data-driven Testing
  • Send API Requests
  • Read SMS
  • Execute SQL queries
  • Self-Healing Tests
  • Email Notifications
  • Slack Notifications
  • PagerDuty Notifications
  • Webhook Notifications
  • Automatic Backup
  • Advanced Settings
  • Multiple environments
  • How to stop a test
  • Utilities
  • Utilities API
  • Team
  • On-Premises

Integrations

  • Atlassian Jira
  • Slack
  • PagerDuty
  • Microsoft Teams
  • Mattermost
  • Jenkins
  • GitHub
  • Azure DevOps
  • GitLab
  • TeamCity
  • CircleCI
  • TravisCI
  • Bitbucket
  • Heroku
  • Bamboo Server
  • Test Case Management
  • SSO
  • BrowserStack
  • Sauce Labs

Web Applications with restricted access

Introduction

How can you test a web application which is only accessible from your workplace or behind a firewall?

There are 4 solutions for this situation.

1. Whitelisting

The easiest way would be to whitelist our list of Secure Gateway IPs:

Secure Gateway IP Addresses
34.211.40.72
35.166.159.89
207.254.40.71
207.254.60.102
52.89.18.176
52.26.12.35
54.187.169.42
52.43.87.222
34.214.85.4
54.184.162.15
44.237.178.201
44.238.105.245
44.228.22.115
35.81.185.74
207.254.52.64
44.241.213.227
52.26.206.66
52.13.40.64
44.238.190.158
207.254.60.6
207.254.41.137
207.254.60.76
34.213.62.124
54.191.53.140
18.237.140.182
52.11.28.247
44.240.94.219

If you want to use Real IP Geolocation in your tests, you'll have to add these entries to the whitelist as well:

GeolocationIP Address
San Francisco, US52.53.118.130
Seattle, US20.64.225.137
Montreal, Canada3.97.155.50
London, UK3.9.107.187
Frankfurt, Germany52.28.171.236
Eemshaven, Netherlands34.90.84.125
Dubai, UAE3.28.26.211
Tel Aviv, Israel51.16.199.215
Tokyo, Japan18.179.93.49
Seoul, South Korea13.209.174.252
Singapore54.151.171.44
Sydney, Australia54.206.130.168

You can also request your own Static Secure Gateway IP address, which will not be listed in our Documentation and it will be available only for your team.

If your Web Application requires HTTP Basic Authentication, just add the username and password in the URL:

http://username:password@example.com

All the user agent strings from our cross-browser cloud contain the string endtest at the end.

You can also configure the Proxy IP setting for each test suite, this allows the traffic from that test to go through a Proxy Server from your side.

It's also worth mentioning that our company has an ISO 27001 Information Security Certification.

More details about our security policies are available in the Security section.

2. Tunneling

Our platform can access local web applications or web applications with restricted access by using ngrok.

ngrok is a tool that exposes a local port to the internet via a secure tunnel.

That tunnel can be used to allow our machines to access your web application and test it.

You will need to sign up for a free ngrok account, then download and unzip the program.

After that, you will need to set your authentication token which is available in your ngrok account.

./ngrok authtoken [TOKEN-HERE]

Your web application is either running locally on your machine (localhost), or it’s running on a private server (with it’s own URL).

If the web application is running locally on your computer, you will need to know which port it’s being served on.

This is typically port 80, but may be something different.

For example, if your web application can be accessed at http://localhost:9000, then the port is 9000.

To open the tunnel, execute this command for the specific port number:

./ngrok http 9000

If your web application is running on a private server then you are likely using a URL like http://private.example.com to access it.

In this case, you’ll create a tunnel to that URL using this command (with the private server URL swapped in):

./ngrok http -host-header=rewrite private.example.com:80

Once ngrok opens the tunnel, it’ll provide a public ngrok.io URL (e.g., https://0b19c52g.ngrok.io) which can be used in your test.

If you open this ngrok.io URL in your browser, you’ll see the website.

Record your tests using this ngrok.io URL and our platform will be able to access your web application and run the tests.

You can exit the ngrok process at anytime to disconnect the tunnel.

When you want to execute your tests again, start ngrok again by using the same command you used earlier.

Each time you restart ngrok, a new URL will be provided.

You should use a variable for the URL in your test, so you can update it in only once place or simply provide it directly in the Endtest API request for starting the test execution.

More details are available in the Variables and Endtest API chapters.

3. Export

The third option would be to Export the test, but you will be able to run it only on your local infrastructure.

More details are available in the Export Web Tests chapter.

4. On-Premises

The fourth option would be to go with our On-Premises version, which is part of our Enterprise Plan.

← IF Statements for Web TestsHow to test in iframes →
  • Introduction
  • 1. Whitelisting
  • 2. Tunneling
  • 3. Export
  • 4. On-Premises
© Endtest Inc.