Тест не может быть найден в сборке

Я пытался выполнить типовые тесты PNunit, но он терпит неудачу со следующей ошибкой

The test xxx couldn't be found in the assembly xxx.dll

Я следил за документом Pnunit, но это не помогло.

Проект Refs

Вот тестовый пример

using NUnit.Framework;

namespace TestLibraries
{
    [TestFixture]
    public class PuniTest
    {
        [Test]
        public void EqualTo19()
        {
            Assert.AreEqual(19, (15 + 4));
        }
    }
}

и файл test.conf

<TestGroup>
  <Variables>
    <Variable name="$agent_host" value="localhost" />
  </Variables>

  <ParallelTests>
      <ParallelTest>
        <Name>Testing</Name>
        <Tests>
          <TestConf>
            <Name>Testing</Name>
            <Assembly>pnunit35.dll</Assembly>
            <TestToRun>TestLibraries.PuniTest.EqualTo19</TestToRun>
            <Machine>$agent_host:8080</Machine>
          </TestConf>
        </Tests>
      </ParallelTest>
    </ParallelTests>

</TestGroup>

Я скомпилировал код, скопировал файлы "pnunit35.dll" и "test.conf" в папку " NUnit.Runners.Net4.2.6.4 \ tools " для запуска тестов.

И выполните следующие команды (в пакетном файле), чтобы запустить агент и запустить сценарии из папки тестового запуска Nunit.

start pnunit-agent 8080 .
pnunit-launcher test.conf

При запуске пакетных сценариев тесты не выполняются со следующей ошибкой

The test TestLibraries.PuniTest.EqualTo19 couldn't be found in the assembly pnunit35.dll

Может ли какое-нибудь тело, пожалуйста, посмотреть на это?, Заранее спасибо

3 ответа

Возможно, у вас несоответствие архитектуры процессора. Если ваш проект 64-битный, перейдите в тест -> настройки теста -> архитектура процессора по умолчанию -> x64.

Спасибо всем,

Наконец, я нашел основную причину проблемы, это версии pNunit, которые несовместимы с NUnit-3.6.0 и Nunit.Runner-4.2.6.4, которые я использовал в своем проекте.

Когда я погуглил о проблеме, я обнаружил, что pNunit-2.6.4 не совместим с последней версией Nunit-3.6.0. Итак, я изменил Nunit и NUnit.Runners на 2.6.4. Тогда тесты работали без проблем.

Обновление: используйте.Net Framework 3.5

Обновление 2: [.Net Framework 4.5], если вы работаете с.Net Framework 4 и выше, запустите PNunit-agent в режиме совместимости.

Отредактируйте файл "pnunit-agent.exe.config" в текстовом редакторе и добавьте следующий код в "конфигурацию"

<startup>
    <supportedRuntime version="v4.0.30319" />
</startup>

Закройте pnunit-agent и повторно запустите, чтобы решить проблему

Возможно, вам не хватает тестового адаптера NUnit в Visual Studio.

Другие вопросы по тегам