Могу ошибаться, но кажется все выглядит сл. образом:
TEstNg -это тестовый фреймворк для запуска тестов (тот самый xml файликполучаем), разработанный на основе Junit и Nunit, только весьма усовершенствованный.
XML файлик используется для запуска теста.
У вас есть dll (C#) или java -class (Java), в котором описаны параметры теста (команды, какие браузеры запускать, что использовать WebDriver или RC). На оснофании этих файлов формируется xml.
главное в xml -это прописывается параллельный ли запуск тестов (4 конфигурации выбора) и количество потоков (думаю неограничено, разве что здравым смыслом). в нем указывается так же имя класса (или библиотек) ,которые тестятся, название браузера и пр. вид файла зависит от того, как и что вы используете.
На том, что я пробую осваивать...
Program - Selenium & Co (Webdriver, Grid)
Language - Java
IDE - Eclipse
FrameWork - TestNg
Тесты , которые запускаю при помощи Grid и TestNG имеют в @BeforeClass дополнительные строчки и @Parameter
Файлик xml по структуре похож на нижеприведенный:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "
http://testng.org/te...estng-1.0.dtd"> //DocTYpe information
<suite name="Same TestCases on Different Browser" verbose="3" parallel="tests" thread-count="4"> //name of test suit, parallels property is Tests (pic. attachment)
<test name="Test5" preserve-order="true"> //test name. name of each tests must be different
<parameter name="browser" value="firefox"/> //browser name
<classes>
<class name="test.Third"/> // the name of class, witch has tests
</classes>
</test>
<test name="Test6" preserve-order="true"> //same information
<parameter name="browser" value="firefox"/>
<classes>
<class name="test.Third"/>
</classes>
</test>
<test name="Test7" preserve-order="true">
<parameter name="browser" value="chrome"/>
<classes>
<class name="test.Third"/>
</classes>
</test>
<test name="Test8" preserve-order="true">
<parameter name="browser" value="chrome"/>
<classes>
<class name="test.Third"/>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
Разьяснения к строкам:
здесь записан файл, в котором есть 4 потока, запуск тестов параллельный
4 теста с разными именами, но все тесты выполняются для одного класса -Third
и из 4 тестов 2 будут запускаться в хроме , а два будут идти в мозиле.
Распределение тестов по нодам (Selenium Grid) идет в зависимости от того, какие ноды у нас объяслены -тут масса вариантов.