Запускать тесты WebDriver NUnit на нескольких драйверах

Недавно мы начали использовать WebDriver (в пользу Selenium 1) для выполнения тестов браузера с использованием инфраструктуры NUnit. Поскольку мы хотим запускать тесты в различных браузерах, мы определяем драйверы для каждого из них и помещаем их в список во время настройки прибора:

[TestFixtureSetUp]
public void SetupTest()
{
    // Load drivers
    Drivers = new List
            {
                new ChromeDriver(),
                ...
            };

В каждом тесте мы повторяем список следующим образом:

[Test]
public void SomeTest()
{
    foreach (var driver in Drivers)
    {
        driver.Navigate().GoToUrl("...");
...

Это неправильно делать во всех тестовых методах. Методы тестирования не должны касаться того, с каким драйвером они должны работать. В идеале у нас было бы что-то вроде этого:

public void SomeTest(IWebDriver driver)
{
    driver.Navigate().GoToUrl("...");
...

Один из способов решить эту проблему - использовать TestCases:

[TestCase(new ChromeDriver())]
[TestCase(new FireFoxDriver())]
...

Но это много дублирует и переносит проблему правильной инициализации драйверов в атрибуты каждого отдельного теста. Не совсем выигрыш.

Можно ли как-то сказать, что инфраструктура NUnit может выполнять весь набор тестов и вводить разные параметры для отдельных тестов при каждом запуске? Или есть другое хорошее решение для этого?

Ответы на вопрос(3)

Ваш ответ на вопрос