SideeX WebService is a tool that provides a Web service interface for playing SideeX-recorded test cases. This tool can be hosted as a testing server in a company under a private network to provide testing services. There are three ways to invoke a hosted SideeX WebService server:
The architecture of SideeX WebService
selenium-server-standalone-{version}.jar
and the driversjava -jar selenium-server-standalone-{version}.jar
npm i -g @sideex/webservice
sideex-webservice --config {CONFIG_FILE_PATH}
. See Appendix A for the config file format. The following code shows a simple WebService config file example (serviceconfig.json
):Note that, SideeX WebService and Selenium server/nodes can be run in Docker containers. See Appendix C.
In Postman, open a new tab and then select GET
method. Input http://<webservice-publicURL-hostname>:<port>/sideex-webservice/echo
. Then click on Send
.
Prepare a zip file containing test case information. A zip file should at least contain a config.json
(see Appendix B) and a suites
folder. A variables
folder and an i18n
folder are optional.
POST
method. Input http://<webservice-publicURL-hostname>:<port>/sideex-webservice/runTestSuites
.Body
-> form-data
. Type file
in the Key
field. In the Value
filed, click on Choose Files
to add testcase.zip
. Click on Send
.There are three ways to run the test case zip file:
An example WebService config file: serviceconfig.json
Description
50000
false
""
""
"127.0.0.1"
50000
"test-jobs"
This attribute can be overwritten by the client's config.json
0
: Never delete a test jobn
: Delete a test job n hours later after the job is generated0
mail
Sending reports via an SMTP server. Note that, if you use Gmail as your SMTP server, you need to create an application password first.
All or parts of the following attributes can be overwritten by the client's config.json
0
: No sending1
: Sending on errors2
: Always sending0
, 1
or 2
0
user
should be your own gmail address, the pass
can be generate by generating an App Password, follow this article to generate an app password for mail.undefined
undefined
slack
Sending reports via Slack. You have to prepare a Slack token and channel at first.
All or parts of the following attributes can be overwritten by the client's config.json
0
: No sending1
: Sending on errors2
: Always sending0
, 1
or 2
0
""
""
""
line
Sending reports via Line Notify. You have to prepare a Line Notify token at first.
All or parts of the following attributes can be overwritten by the client's config.json
0
: No sending1
: Sending on errors2
: Always sending0
, 1
or 2
2
""
""
The config file format is the same as the one for SideeX Runner, except the followings:
input
, report.path
, webdriver.i18n
will be ignored by SideeX WebServicetestJobExpireTime
is added. This attibute indicates the expiration time for deleting the generated test job. If the attribute is set in the client config file, it will overwrite the one in the WebService config fileAn Example WebService Client Config File: config.json
The following example shows how to run SideeX WebService container and Selenium Standalone Server/Hub containers on the same host.
Download and run Selenium Hub and Node
More information about the Selenium Docker can be found at Docker images for the Selenium Grid Server
serviceconfig.json
file as Appendix Atest-jobs
folder. This folder will be shared with the SideeX WebService container for temporarily saving the test cases and reports while test execution.webdriver.configs.serverUrl
as follows.