Мне нужно использовать nunit3-console v3.9.0 на Windows 7 для запуска NUnit тестов . Проблема в том, что в наших тестах используются константы с относительными путями (.. \ Testing.TestingUtils \ Resources \ etc.), И они терпят неудачу. Это происходит потому, что когда вы запускаете консоль, она берет путь по умолчанию из своего местоположения (C: \ Program Files (x86) \ NUnit.org \ nunit-console) и относительные пути больше не являются правильными.
Та же проблема возникла при попытке запустить тесты NUnit с VS2017 с NUnit 3.11.0 (последняя версия). Это работало с предыдущей версией NUnit 2.6 (я знаю, что она старая, но это то, что мы использовали).
Мне нужно найти способ, как я могу указать «путь по умолчанию» консоли, который будет общим для проектов, поэтому относительные пути приведут к тому же каталогу, что и в тестах.
Я нашел решение, чтобы тесты могли выполняться в VS2017, но это не будет работать с нашей Непрерывной интеграцией, которая использует nunit-console 3.9, и они не пройдут. Решение было использовать:
Path.Combine (TestContext.CurrentContext.TestDirectory + SomeConstantForSpecificDirectory)
Я также пытался открыть Командную строку разработчика и перейти к папке NUnit Tests и оттуда запустить консоль и выполнить тесты, но это не сработало:
"C: \ Program Files (x86) \ NUnit.org \ nunit-console \ nunit3-console.exe" ' DirectoryPath ' .dll
Я нашел две опции для nunit-console, которые могут быть полезны, но я не уверен, правда ли это и как их применять:
ShadowCopy
Указывает .NET копировать загруженные сборки в каталог shadowcopy.
(этот был изменен, чтобы быть отключенным по умолчанию от v3
https://github.com/nunit/nunit/issues/521)
Траектория
Путь к исполнителю консоли NUnit3: nunit3-console.exe
Я уже пытался найти ответ в других темах, но ни у одного из них не было той же проблемы, что и у меня, или не было решения, которое мне нужно.
Есть ли кто-нибудь, кто сталкивался с подобными проблемами или просто может потратить некоторое время, чтобы помочь мне решить эту проблему?