nunit-console вылетает после запуска тестов - PullRequest
0 голосов
/ 14 марта 2012

Я использую nunit-console для модульного тестирования приложения Mono на Debian.Он запускает все тесты и затем вылетает после сообщения о неудачных тестах.TestResult.xml не генерируется.Если я использую nunit-console с аргументом -out или -err, он запускает тесты, а затем вылетает, прежде чем сообщать о результатах.

Еще одна странная вещь заключается в том, что если я урежу количество тестов (соколо 800 до 100) это иногда не будет сбой.Выбрасывание еще большего количества тестовых сценариев снижает вероятность сбоя.

Платформа: Debian 6, Mono 2.6.7, NUnit 2.4.7

Подробности ошибок:

ERROR:../../mono/io-layer/handles-private.h:362:_wapi_handle_share_release: assertion failed: (info->handle_refs > 0)
Stacktrace:

at (wrapper managed-to-native) System.IO.MonoIO.Close (intptr,System.IO.MonoIOError&) <0x00050>
at (wrapper managed-to-native) System.IO.MonoIO.Close (intptr,System.IO.MonoIOError&) <0x00050>
at System.IO.FileStream.Dispose (bool) <0x000b7>
at System.IO.Stream.Close () <0x0001b>
at System.IO.StreamWriter.Dispose (bool) <0x000c8>
at System.IO.StreamWriter.Close () <0x0001b>
at NUnit.ConsoleRunner.ConsoleUi.Execute (NUnit.ConsoleRunner.ConsoleOptions) <0x007ed>
at NUnit.ConsoleRunner.Runner.Main (string[]) <0x00487>
at NUnit.ConsoleRunner.Class1.Main (string[]) <0x0000f>
at (wrapper runtime-invoke) <Module>.runtime_invoke_int_object (object,intptr,intptr,intptr) <0x00054>

Native stacktrace:

/usr/bin/cli() [0x487ad6]
/lib/libpthread.so.0(+0xeff0) [0x7fdd0379aff0]
/lib/libc.so.6(gsignal+0x35) [0x7fdd031da1b5]
/lib/libc.so.6(abort+0x180) [0x7fdd031dcfc0]
/lib/libglib-2.0.so.0(g_assertion_message+0x131) [0x7fdd03e175d1]
/lib/libglib-2.0.so.0(g_test_timer_start+0) [0x7fdd03e17b50]
/usr/bin/cli() [0x59d649]
/usr/bin/cli() [0x597658]
/usr/bin/cli() [0x597774]
/usr/bin/cli() [0x5095fc]
[0x4135b410]

Debug info from gdb:

=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================


** (/usr/lib/nunit/nunit-console.exe:7436): WARNING **: process_set_termination_details: error looking up process handle 0x403

Ответы [ 2 ]

0 голосов
/ 15 марта 2012

Это старая ошибка https://bugzilla.novell.com/show_bug.cgi?id=318809. Мне не удалось найти актуальную ошибку xamarin этого.

См. Также, https://stackoverflow.com/questions/4513928/handling-single-file-with-multiple-threads-in-mono.

Так что попробуйте запустить nunit с /nothread или, что еще лучше, попробуйте моно 2.10.8.

0 голосов
/ 14 марта 2012

Попробуйте запустить NUnit с /noshadow, я помню, это помогло, давным-давно.

...