Как использовать параметр skip_test_fail задачи nunit в Albacore?

В примечаниях к выпуску Albacore говорится, что задача xunit поддерживает параметр skip_test_fail, который

«предотвращает прерывание сборки rake при сбое теста xunit. Это полезно в сценариях непрерывной интеграции, таких как работа с TeamCity».

Пример не был показан, и моя попытка использовать его (ниже) не увенчалась успехом. Как это должно работать?

desc "XUnit Test Runner Example"
xunit :xunit do |xunit|
  xunit.command = "../xunit-1.8/xunit.console.clr4.exe"
  xunit.assembly = "Islambox.Web.Test/bin/Debug/Islambox.Web.Test.dll"
  xunit.skip_test_fail
end

person najam    schedule 02.01.2012    source источник
comment
Синтаксис нового метода находится в ветке dev, скоро будет релиз. Вы можете сделать xunit.skip_test_failures сейчас!   -  person Anthony Mastrean    schedule 23.10.2012
comment
Наджам, у меня есть твой ответ и новый релиз Альбакора, приходи и получай! И принять ответ.   -  person Anthony Mastrean    schedule 04.12.2012


Ответы (1)


Я просмотрел задание xunit исходный код и увидел что параметр действительно существует. Это обычное «свойство», которому можно присвоить какое-то значение.

attr_accessor :html_output, :skip_test_fail

Он используется в постфиксном условии if, которое возвращает false, если значение свойства равно false или nil. Любое другое значение вернет true.

if !result && (!@skip_test_fail || $?.exitstatus > 1)

Итак, просто установите его с любым значением! Я рекомендую true, чтобы было более понятно, что происходит. Я обновил вики этой информацией.

xunit.skip_test_fail = true
person Anthony Mastrean    schedule 27.09.2012
comment
Я зарегистрировал Issue, чтобы получить метод (как вы вызвали его изначально), чтобы он более интуитивным. - person Anthony Mastrean; 08.10.2012