Ошибка запуска.Net и SQL тестов в dbfit

У меня есть простой класс C# Column, который независимо тестирует нормально. У меня есть таблица сервера SQL, которая снова, независимо тестирует нормально. Если я тестирую оба, сначала проверяю таблицу SQL, снова все в порядке. Однако, если я сначала тестирую C#, то тест SQL завершается неудачно: "Тип" Connect "не найден в сборках".

Так что это работает нормально...

!define COMMAND_PATTERN {%m -r fitnesse.fitserver.FitServer %p}
!define TEST_RUNNER {fitsharp\Runner.exe}
!define PATH_SEPARATOR {;}

!path fitsharp/fit.dll
!path fitsharp/dbfit.sqlserver.dll

!|dbfit.SqlServerTest|
!|Connect|Data Source=localhost;integrated security=SSPI;Initial     Catalog=Test2|
!|Query| select Colour from dbo.Colour|
|Colour|
|yellow-orange|

!path Fixtures.dll

!|Fixtures.SampleDo|
|firstPart|secondPart|together?|totalLength?|
|Hello|World|Hello, World|10|
|Houston|We Have a Problem|Houston, We Have a Problem|24|

... но это не сработает, просто переместив тест Fixtures.dll...

!define COMMAND_PATTERN {%m -r fitnesse.fitserver.FitServer %p}
!define TEST_RUNNER {fitsharp\Runner.exe}
!define PATH_SEPARATOR {;}

!path Fixtures.dll

!|Fixtures.SampleDo|
|firstPart|secondPart|together?|totalLength?|
|Hello|World|Hello, World|10|
|Houston|We Have a Problem|Houston, We Have a Problem|24|

!path fitsharp/fit.dll
!path fitsharp/dbfit.sqlserver.dll

!|dbfit.SqlServerTest|
!|Connect|Data Source=localhost;integrated security=SSPI;Initial     Catalog=Test2|
!|Query| select Colour from dbo.Colour|
|Colour|
|yellow-orange|

1 ответ

Решение

Обновление: оригинальное решение, описанное ниже, не работает для DbFit. Вот обходной путь:

В вашем приспособлении SampleDo, вы можете включить следующее, чтобы SqlServerTest обработайте остальные таблицы в тесте:

public override bool IsVisible { get { return false; } }

Оригинальный ответ:

При использовании DbFit, таблица

!|dbfit.SqlServerTest|

обычно это первая таблица в тесте, поэтому она становится "тестируемой системой", а последующие таблицы

!|Connect|Data Source=localhost;integrated security=SSPI;Initial     Catalog=Test2|

интерпретируются как методы, которые будут выполняться на SqlServerTest,

Если это не первая таблица, в вашем случае что-то еще будет "Тестируемая система", SampleDo, и FitNesse будет искать метод Connect на SampleDo, Делать SqlServerTest "Тестируемая система" на полпути теста, используйте ключевое слово with:

!|with|new|dbfit.SqlServerTest|
Другие вопросы по тегам