Test the external links on your web app
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


External Link Tester Build Status

Testing external links of your application, like documentation and partner website links, is important since if they break or change you'll probably only find out through your users. You can use External Link Tester in your CI system to make sure the external links your application uses are not broken.

Just add the links you wish to test to the configuration file, have your CI system run the package and point it to the resulting JUnit report.

External Link Tester


Run npm install --global external-link-tester


Pass the name of the configuration file as a command line parameter. Note the configuration file needs to be in the root directory of your application.

Example: external-link-tester extLinksTester.example.config.js

The output is a JUnit report. You can specify the path you want the report to go to in outputFile configuration property in the configuration file.

Usage without global install

Example: node app.js extLinksTester.example.config

When you install it in your project assuming, for example, you created a config file called extLinksTester.config.js in the root you then run the command:

node node_modules/external-link-tester/app.js extLinksTester.config.js


Checkout extLinksTester.example.config.js for a configuration example. The properties you should define in this file are:

  • The path to the outputFile
  • And an array of externalLinks with the timeout value after which the application considers the link is down.

Like so:

module.exports = {
    outputFile: 'results/links-test-result.xml',
    externalLinks: [
            url: 'http://www.google.com111',
            timeout: 3000
            url: 'https://en.wikipedia.org/wiki/List_of_HTTP_status_codes',
            timeout: 3000

Run tests

npm test


  • use timeout
  • be able to specify a path and look for external links
  • be able to specify exclude links


The code in this repository can be used under the MIT License.