Это не похоже на испытание для меня.Тесты, как правило, не содержат параметров (если вы не используете [TestCase]
s), и обычно достаточно запустить его в контексте одного прибора - он либо проходит один раз, и это хорошо, либо нет, и это неработающий тест.
Если у вас просто есть метод, который выполняет некоторую проверку строки, вы можете установить его как статический метод для некоторого класса (например, TestHelpers
) и вызывать его из любых тестов (в нескольких тестовых приборах), которые вам нужныэто.
Вот еще одна идея: наследование.У вас может быть базовое приспособление, в котором есть все ваши тесты, а затем наследники от него, которые устанавливают любые переменные, которые вам нужны.Тесты будут выполняться для каждого прибора.Я не знаком с Selenium RC, но вы должны быть в состоянии адаптировать приведенный ниже код для настройки любых переменных, которые вам нужны в различных приборах.
[TestFixture]
public class BaseFixtureTests
{
protected IMyClass _myClass;
[TestFixtureSetUp]
public void FixtureSetup()
{
_myClass = ConfigureMyClass();
}
protected virtual IMyClass ConfigureMyClass()
{
// fixtures that inherit from this will set up _myClass here as they see fit.
}
[Test]
public void MyClassTest1()
{
// test something about _myClass;
}
}
[TestFixture]
public class MySpecificFixture1 : BaseFixtureTests
{
protected override IMyClass ConfigureMyClass()
{
return new MySpecificMyClassImplementation();
}
}
public class MySpecificMyClassImplementation : IMyClass
{
//some implementation
}
Вы также можете добавить дополнительные тесты в каждый прибор.которые не проверяют общую функциональность и не нуждаются в повторном использовании в приборах.