ScriptWorks is completely flexible in the way tests are executed. Tests can be run locally on a users workstation, on networked Selenium or Appium infrastructure or on cloud infrastructure providers such as Saucelabs or Bitbar.
There is a simple client application that facilitates this, shown in the diagram below:
This is a NodeJS Application that can be run on any platform, Windows, MacOS or Linux.
Step 1 – Install NodeJS
NodeJS is a popular platform for cross-platform applications. ScriptWorks uses this for its client component. You may already have NodeJS installed, if not then go to the NodeJS website: https://nodejs.org/
Download the appropriate NodeJS installer for your platform and complete installation, all common OS platforms are supported.
Step 2 – Use Node Package Manager (NPM) to Install Scriptworks Client
The Node Package Manager allows you to install Node based applications using a simple command line process.
Open a Command Line Window or Terminal Window and type:
npm i scriptworks-client -g
You should be presented with a successful install message. You can run the client by simply typing:
You will be presented with a message showing the client running and the port number:
The Client is now up and running ready to relay tests to your selenium server.
Troubleshooting the Install Process
In some environments extra steps may need to be taken to ensure that Global packages are installed.
Installing npm packages globally on some environments requires the use of a package manager, such as nvm: https://github.com/creationix/nvm
NVM will enable global packages to be installed on these environments.
Alternatively Scriptworks can be installed without the Global tag:
npm install scriptworks-client
Then from a CLI, cd to the package folder:
Then run the client using:
This will start up the Scriptworks Client in this environment.
Scriptworks can also be started with a Proxy set if your organisation requires the use of a corporate proxy to receive and send data, the client can be started with a –proxy paramater specifying the URL and port of the proxy:
node main.js –proxy https://184.108.40.206:808
Step 3 – Install Selenium Components and Run Selenium Server
The ScriptWorks client relays tests to a Selenium server, this can be a local server or a hub connected to your network, even a remote infrastructure provider such as Saucelabs or Bitbar. Setting up a Selenium server can be done easily as below:
Download the Selenium Standalone Server from: https://docs.seleniumhq.org/download/
(NB – You may also need to install Java for running the Java Selenium Server).
Selenium Driver Configuration
Selenium Webdriver requires specific Browser Drivers to run tests on the Browser of choice, the Browser Drivers are required to be installed in the same Directory as the Selenium Server is run from.
The Browser specific Drivers can be found below at:
Chrome (ChromeDriver): http://chromedriver.chromium.org
Firefox (GeckoDriver): https://github.com/mozilla/geckodriver/releases
IE (IEDriver): https://www.seleniumhq.org/download/
Edge (Microsoft Wedriver): https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
Safari (AppleSafariDriver): https://developer.apple.com/documentation/webkit/testing_with_webdriver_in_safari
For some Drivers such as Firefox (GeckoDriver) the location of the Driver will need to be registered in the Path Environment Variable, this will require the parent folder of the Selenium components for example:
C:\Program Files (x86)\Selenium
Running the Selenium Server
Copy the downloaded files to a convenient folder and run the Selenium Server from a command line or shell window using:
java -jar selenium-server-standalone-3.xx.x.jar
You should be presented with a message showing the selenium server running:
The Selenium server is now up and running ready to receive commands. You should be all set and ready to Run Tests!