- Introduction
- Manual testing
- Autoit
- Ant
- Agilitest
- Bat
- Bat With Params
- Beanshell
- Cerberus
- Cucumber
- Cucumber v2 (BDD & Gherkin support)
- eTASQ Motion (Ponant)
- Executable
- FitNesse
- Gatling
- Generic Version-Control
- Git, Gitlab, Github
- Gradle
- Java
- Jar
- JMeter
- JMeter SQL
- JMeter Web
- JUnit
- Katalon
- Katalon v2
- Marathon
- Maven
- Mocha
- NeoLoad
- NUnit
- Odin Axe
- Odin Axe Results
- Offline
- Perl
- PHPUnit
- Postman (Newman)
- Protractor
- Python
- PyUnit
- PyTest
- QF-Test
- Quick Test Pro/UFT
- Ranorex
- Rapise
- RobotFramework
- RobotFramework v2
- RobotFramework v3
- RobotFramework v4
- Sahi
- Sahi 3.5
- Sahi 4.0
- Sahi 6.0
- Selenese
- Selenium HTML
- Selenium 3
- Selenium Java
- Selenium .NET
- Selenium Python
- Shell
- Sikuli
- SikuliX
- SilkTest
- SoapUI
- SoapUI Load
- SoapUI Security
- SOATest
- SQL Compare
- SQL Select
- Squish
- SVN (Subversion)
- Tape
- Tcl
- TestComplete
- TestComplete v2
- TestExecute
- TestExecute v2
- TestNG
- TestOptimal
- TestOptimal Simple
- TestPartner
- TestStand
- VisualStudio
- VisualStudio Coded UI
- WAPT
- WebdriverIO
- WebUI
- XCI
- xUnit.net
- Success (skeleton)
- Random (skeleton)
- Proxy
Custom Launchers
Let�s take a basic example: you have two different types of tests:- native executables (you currently just have to run the executables, logs are printed out on the console, exit code gives the result of the test),
- java class files (these are java class file with a main entry point; all classes inherit from the TestClass class. You usually run them by calling the java interpreter on each test using .bat or .sh scripts).
With a very minimum effort, you can make all these tests (maybe several thousands of tests) manageable by XStudio. To do this, you just have to develop 2 launchers (10 lines of code each).
Figure 12 � Custom Launchers
These launchers will have the responsibility to:
- translate the abstract execution orders from XStudio to real operations (instantiate the test and execute it),
- return results to XStudio.
Of course, the launcher interface/API is wider than just a run() method but the run() method is the principal one.
I�m currently working on the Developer�s Guide that will explain in detail how to develop you own launcher.