The Riverbed Technology SteelCentral portfolio provides comprehensive end-to-end performance management, with quantitative metrics from real end user traffic, application transactions, end user experience, and infrastructure. Because most of the metrics require end user traffic, Synthetic test can suppliment these metrics when there are no users accessing business critical applications.

 

This is were the SteelCentral NetIM Synthetic Testing Engine comes into play. The Testing Engine (TE henceforth) provides the ability to monitor applications and services using:

 

  • TCP Port tests
  • HTTP tests
  • DNS
  • Database
  • Selenium/WebDriver
  • External Scripts

 

This provides a comprehensive platform for testing multiple aspects of an application. In most consulting engagements we will recommend installing the Testing Engine on the NetIM host, as well as any remote sites that the customer would like to run synthetic tests from. The Testing Engine can be installed on Windows and Linux hosts.

 

Installation of the Synthetic Testing Engine

You can find the Windows and Linux installers \Riverbed\NetIM\<NetIM Version>\external\TestEngine

 

Linux

The process for installing on Linux is straight forward. If you want to run Selenium/WebDriver tests you will also need to Firefox or Chrome and have a running X server. In the past for headless installs I have used Xvfb https://en.wikipedia.org/wiki/Xvfb (X Virtual Frame Buffer.)

 

In the below example I have installed the Test Engine to /opt/Riverbed

 

[root@jboss4 ~]# unzip TestEngine-linux.zip -d /opt

Archive:  TestEngine-linux.zip

   creating: /opt/Riverbed/

  ...

[root@jboss4 3.0.2]# cd /opt/Riverbed/TE/3.0.2/

[root@jboss4 3.0.2]# ./install.sh

*** Install started at 08/06/2017 03:42:36

 

**** NOTE: Administrative rights are needed to run this script ****

**** NOTE: Pressing enter uses default value defined within square brackets ****

Please enter the hostname or IP address of your NetIM machine [jboss4.lab.local]:

win-netim.lab.local

Please enter the port number of your NetIM machine [3162]:

 

Please enter location of keystore for HTTP Testing [/opt/Riverbed/TE/3.0.2/TestEngine]:

 

Please enter new keystore password for HTTP Testing [changeit]:

keystore-password

Please verify that Firefox is located at "/usr/bin/firefox" by hitting enter.  If you would like to use a different copy of Firefox, please enter its absolute path:

 

The absolute path to Chrome was not found.  If Chrome is installed, please type in the absolute path to google-chrome.  If Chrome is not installed, please hit enter:

 

Please enter an identifying name for this Test Engine [jboss4.lab.local]:

jboss4

Please enter the user name to which the ownership of the Test Engine files will be set:

root

Please enter the group name to which the ownership of the Test Engine files will be set:

root

*** Exporting env to file: /opt/Riverbed/TE/3.0.2/temp/te.env

...

*** Installing the service

RiverbedTestEngine installed

 

*** Starting the service

Starting RiverbedTestEngine...

Started RiverbedTestEngine.

 

Removing temporary files...

#### Installation has finished.  Please logon to your NetIM machine at http://win-net.lab.local:9190/vnes to verify that this Test Engine was successfully paired.

*** Install completed at 08/06/2017 03:43:24

[root@jboss4 3.0.2]#

 

Windows

Installing the test engine is also completed on the command line.

 

C:\Riverbed\TestEngine-windows\Riverbed\TE\3.0.2>install.bat

*** Install started at 06/08/2017 13:49:23

Could not find service: RiverbedTestEngine

 

Cannot find path to 'firefox.exe'.

Cannot find path to 'chrome.exe'.

**** NOTE: Administrative rights are needed to run this script ****

**** NOTE: Pressing enter uses default value defined within square brackets ****

 

Please enter the hostname or IP address of your NetIM machine [WIN-performance]:

win-netim.lab.local

Please enter the port number of your NetIM machine [3162]:

 

Please enter location of keystore for HTTP Testing [C:\Riverbed\TestEngine-windows\Riverbed\TE\3.0.2\TestEngine]:

 

Please enter new keystore password for HTTP Testing [changeit]:

keystore-password

The absolute path to Firefox was not found.  If Firefox is installed, please type in the absolute path to firefox.exe.  If Firefox is not installed, please hit enter:

 

The absolute path to Chrome was not found.  If Chrome is installed, please type in the absolute path to chrome.exe.  If Chrome is not installed, please hit enter:

 

Please enter an identifying name for this Test Engine [WIN-performance]:

 

*** Exporting env to file: C:\Riverbed\TestEngine-windows\Riverbed\TE\3.0.2\temp\te.env

C:\Riverbed\TestEngine-windows\Riverbed\TE\3.0.2\temp\te.env

Building Synthetic Tests

Below are several of Synthetic Testing. I will cover Database and Selenium/WebDriver testing in another article.

 

DNS

DNS Synthetic tests can be used to determine if DSN is resolving to the correct host from a number of different DNS Servers.

 

Name the synthetic test.

 

Specify the hostname and expected result you wish to look up.

 

 

 

Specify the DNS servers to run the test against.

 

Review test configuration.

 

 

Run the selected test to validate test configuration.

 

HTTP

Simple HTTP tests can include HTTP, HTTPS, Basic and Digest authentication. These tests only target the URL specified and do not download or execute JavaScript on the result. You can use this test to verify the response code, and expected text on the page.

 

 

Optionally specify text in the expected response. If you require authentication or other advanced features, expand the advanced dialog and enter the required configuration.

 

 

 

Review test configuration.

 

Run the selected test to validate test configuration.

TCP Port Test

TCP port test are used to perform a 3 way handshake against a desired port and host.

 

 

Specify the port that is to be tested.

 

Specify the host the test should be run against.

 

Review test configuration.

 

Run the selected test to validate test configuration.

 

 

LDAP

The LDAP test can be used Active Directory.

 

Specify the port and credential details for the LDAP. Often, advanced configuration is required to get the desired output.

 

Specify the LDAP server to run the test against.

 

Review test configuration.

 

Run the selected test to validate test configuration.

 

 

Ping

Simple ping test.

 

Specify the host to ping.

 

Review test configuration.

 

Run the selected test to validate test configuration.

 

External Script

Running external scripts can be simple command line tests, to batch/shell scripts.The test will pass or fail based on the exit code of the script.

 

Upload a batch or shell script, or simply enter a command to run. In this example I have asked the TE to execute the uptime command.

 

Review test configuration.

 

Run the selected test to validate test configuration.