При использовании IObjectFactory в TestNG все ли классы теста должны быть созданы заранее? - PullRequest
1 голос
/ 26 января 2011

Я запускаю несколько тестов Selenium 2 через TestNG и пытаюсь использовать модули Guice для автоматического добавления настроенного браузера (драйвера) в мои тесты.Я использую метод IObjectFactory, описанный в книге TestNG и реализованный testnguice , но я столкнулся с проблемой.

Кажется, что все мои тестовые классы создаются,и экземпляр браузера инициализируется, как только запускается набор тестов.Это не было бы такой проблемой, если бы в моих классах были только легкие объекты, но в моем случае это означает, что я запустил полдюжины браузеров и сидел без дела, пока их тест не будет запущен.

Можно ли сказать TestNG создать тестовый класс непосредственно перед его запуском?

, для справки вот testng.xml, используемый для запуска тестов.Я запускаю все в затмении.

<suite name="Suite1" verbose="1"  object-factory="com.corp.Testing.ObjectFactory.LocalFirefox">

LocalFirefox одинаково ничем не примечателен

package com.corp.Testing.ObjectFactory;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class LocalFirefox extends GuiceObjectFactory {

 @Override
 protected void configure() {
  bind(WebDriver.class).to(FirefoxDriver.class);
 }

}
...