XStudio can execute any kind of tests (scripts, native code, interpreted code, xml etc.). This means that your already existing test suites are usable as they are. The only condition is to have a launcher available.

XStudio is the only Test Management system providing for free nearly 70 ready-to-be-used launchers to run almost any type of automated tests in any language.
Check the detailed list in the left menu.

Most of the existing launchers are listed in the open-source's launchers section and in this documentation chapter.
Among these launchers, some are dedicated to manual testing: 5 different interfaces for manual testing are provided along with XStudio.

In addition, all the launchers for automated testing are provided with their source code. They are delivered as open-source and licensed under GNU General Public License v2 (GPLv2)
open-source launchers for XStudio

But that's not all... if you have developed your own proprietary test framework you can also develop (in Java) a custom launcher yourself! as XQual provides a complete and extremely simple SDK.

List of the main test automation frameworks supported

autoitAutoIT scripts, GUI, Windows
batbatch scripts, Windows
bat_with_paramsbatch scripts, Windows
beanshellBeanshell scripts, Java, Shell
cucumberCucumber, BDD, Gherkin, Ruby, Java, JavaScript, C#, PHP
exeExecutable, Windows
fitnesseFitnesse, Java
gradleGradle, Continuous Integration
jmeterJMeter, Load, Performances
jmeter_sqlJMeter, Load, Performances, SQL, Database
jmeter_webJMeter, Load, Performances, HTTP, Web
junitJUnit, Unit, Java
marathonMarathon, Java
mochaMocha, JavaScipt
neoloadNeoLoad, Web, Load, Performances
nunitNUnit, .NET, Unit
odin_axeOdin, Selenium, Appium, TestStack
odin_axe_resultsOdin, Selenium, Appium, TestStack
offline_genericAny framework that generate parsable result file
pyunitPython, Unit
pytestPython, Unit
qftestQF-Test, GUI, Java, Swing, SWT, JavaFX, AJAX, JQuery, Windows, Linux
ranorexRanorex, Web, GUI, C#, .NET, Java, Qt, Desktop, Web, Windows, Mobile
robot_frameworkRobot Framework, Python, Java, .NET, Keyword Testing
robot_framework_v2Robot Framework, Python, Java, .NET, Keyword Testing
sahiSahi, Web
sahi35Sahi, Web
sahi40Sahi, Web
sahi60Sahi, Web
seleneseSelenese, GUI, Web, Selenium, AJAX
selenium_dotnetSelenium, GUI, Web, Mobile, .NET
selenium_htmlSelenium, GUI, Web, Mobile
selenium_javaSelenium, GUI, Web, Mobile, Java
selenium_pythonSelenium, GUI, Web, Mobile, Python
shellShell, Linux, Unix
sikuliSikuli, GUI, Desktop, Record
sikulixSikuli, GUI, Desktop, Record
silktestSilk, GUI, Desktop, .NET, Java, Swing, SWT, Web, Windows
soapuiSoapUI, SOAP, Web
soapui_loadSoapUI, SOAP, Web, Load, Performances
soapui_securitySoapUI, SOAP, Web, Security
sql_compareSQL, Database
sql_selectSQL, Database
squishSquish, GUI, Mobile, Desktop, Qt, Java, Web
tapeTape, Web, TAP, JavaScript, NodeJs
testcompleteTestComplete, GUI, Windows, Mobile, .NET, Java, Database
testcomplete_v2TestComplete, GUI, Windows, Mobile, .NET, Java, Database
testexecuteTestComplete, GUI, Windows, Mobile, .NET, Java, Database
testexecute_v2TestComplete, GUI, Windows, Mobile, .NET, Java, Database
testngTestNg, Java, Unit
testoptimalTestOptimal, Web, Database, Load, Model-Based, Behavior-Driven, Data-Driven
testoptimal_simpleTestOptimal, Web, Database, Load, Model-Based, Behavior-Driven, Data-Driven
testpartnerTestPartner, GUI, VBA, Windows
teststandSequence, Labview, CVI, .NET, C/C++, ActiveX, HTBasic, ATLAS, VEE, etc.
visualstudioVisualStudio, .NET, Windows
visualstudio_codeduiVisualStudio, GUI, .NET, Windows
waptWAPT, Web, Load, Performances
webuiWebUi, Web, GUI, AJAX
xunit_dotnetXUnit.NET, Unit, .NET, C#

How to use a launcher

A launcher is what makes the "link" between the logical test declared in XStudio and its physical implementation (the script).

The launchers integrate very simply in XStudio's architecture:

launcher architecture

The first thing you need is to let XStudio knows about your automated tests.
To do that, you just need to create some tests in the test tree in XStudio.
This is the logical definition phase:

logical definition of a test in XStudio

The association of the test with a launcher is made through the category. To do this, create a category in the test tree that will host the tests and associate it with a launcher:

associate a category with a launcher

At run-time, XStudio (or XAgent) will be able to find the physical test using all the data associated to the logical test.
This can include the test name, its logical path, any meta-data associated with it (i.e. attributes) or even parameters included in the execution configuration (selected when the user starts the execution):

how XStudio finds an automated test

Then, the execution engine will connect to the automation framework and will execute the physical test exactely the same way as if it was executed normally (through a GUI, or using a command line, manually etc.):

execution of an automated test with XStudio

Results, traces, logs and any other potential useful information is gathered by the launcher and reported to XStudio.
Every information is securely stored in XStudio database:

reporting of the results in XStudio

Execution Configuration

When you start executing some test, you'll need to select an execution configuration.

In practice, it consists in selecting one of the named configuration that you have built (once for all).
This configuration is built initially using a form that is defined by an XML and this XML is provided along with the launcher.

All the parameters in the configuration are passed to the launcher at run-time.

If you're developing your own launcher, you'll need to provide the jar and a configuration XML.

For instance:

<form name="Timing">
  <formItem type="slider"
            name="max time between testcases (ms)"
  <formItem type="boolean"
            name="prerun and postrun take time to execute"
  <formItem type="integer"
            name="time to execute prerun (ms)"
  <formItem type="integer"
            name="time to execute postrun (ms)"

will be embedded in XStudio's GUI as:

launcher parameters

Proprietary/Custom launchers

This mechanism is extremely powerful as it allows you to automate the execution of your proprietary tests very quickly. In most of the cases, only a few tenth of lines of java are sufficient to create your own proprietary launcher.

When you create your own launcher, don't forget to reference it in <Install_folder>/bin/launchers/launchers.xml on the server.

Where are they?

All the launchers (as well as their configuration XML) can be found in <Install_folder>/bin/launchers folder.

To get more information on how to develop your own launcher, read the Developerís guide.