Я использую Hudson в качестве CI-сервера для создания нескольких различных проектов .Net 3.5. Фактический сборочный материал прекрасно работает.
Однако я запускаю тесты MbUnit v2, используя Gallio.Echo как часть сборки, и хотя тесты, кажется, работают нормально, Хадсон утверждает, что тесты не выполнялись.
У меня есть следующий шаг сборки сразу после шага «Построить проект Visual Studio или решение с использованием MSBuild»:
Тип: выполнить пакетную команду Windows
Команда:
"C: \ Program Files \ Gallio \ bin \ Gallio.Echo.exe" TestLibrary \ bin \ Release \ TestLibrary.dll / rt: Xml / rnf: mbunit-result / rd :.
выход 0
Когда сборка запущена, это дает следующий вывод в журнале консоли:
Gallio Echo - Version 3.1 build 313
Get the latest version at http://www.gallio.org/
Start time: 09:06
Initializing the runtime and loading plugins.
Verifying test files.
Initializing the test runner.
Running the tests.
[ignored] Test TestLibrary/ConfigTests/LoadAndSaveTest
Generating reports.
Disposing the test runner.
Stop time: 09:07 (Total execution time: 10,210 seconds)
64 run, 64 passed, 0 failed, 0 inconclusive, 1 skipped (1 ignored)
Так что, на мой взгляд, нет никаких сомнений в том, что тесты действительно выполняются - и файл mbunit-result.xml находится в нужном месте и выглядит хорошо.
Я также настроил проект на «Опубликовать отчет о результатах теста Gallio», просто указав значение «XML отчета о тестировании» как «mbunit-result.xml».
Чтобы попытаться понять это, я настроил плагин Gallio (через файл config.xml заданий), чтобы оставить файлы jUnit (которые плагин Gallio создает из результатов теста MbUnit), и я посмотрел в файле junitResult.xml - странно то, что каждый элемент «case» каждого комплекта пуст. То есть комплект может выглядеть так:
<suite>
<file>C:\Documents and Settings\Administrator\.hudson\jobs\TestProject\workspace\temporary-junit-reports\TEST-TestLibrary.Encryption_Tests.xml</file>
<name>TestLibrary.Encryption_Tests</name>
<duration>0.0</duration>
<cases/>
</suite>
Насколько я знаю, в этом разделе должны находиться отдельные модульные тесты. Кроме того, продолжительность не должна быть 0,0.
Как вы можете видеть выше, моя версия Gallio - версия 3.1 build 313. Может ли это быть вызвано изменениями в формате отчета этой версии Gallio (только предположение, я не знаю о таких изменениях)?
Я работаю на Hudson v1.323 с плагином Gallio v0.52. Любое понимание того, как заставить Хадсона увидеть результаты теста, будет высоко оценено!