Как вы проводите свои тесты?
Мы используем (TestDriven.net -> Run Tests).
По моему опыту, некоторые участники тестирования (например, Junit в Netbeans) не будут автоматически копировать любые дополнительные текстовые файлы, которые могут вам понадобиться для тестирования. Так что в вашем случае вам, возможно, придется выполнить полную сборку, а затем снова попробовать запустить тесты.
И правильный способ доступа к текстовым файлам из тестов - это способ, которым вы пытаетесь это сделать. (Настройка файлов на «всегда копировать» и «содержимое» и доступ к ним из скомпилированного каталога).
Кроме того, не уверен, откуда люди берутся за мысль, что тестирование основано на файлах - это плохо. Это не так.
Во всяком случае, имея отдельные тестовые файлы, только очистит ваши тесты и сделает их более читабельными. Рассмотрим метод анализа XML, который возвращает большую строку:
String expectedOutput = fileOperator.ReadStringFromFile("expectedFileContents.xml");
String result = systemUnderTest.Parse(somethingtoparse);
Assert.Equals(expectedOutput, result);
Представьте себе, если бы вывод был длиной в 30 строк, вы бы загромождали свой тестовый код одной гигантской строкой? или просто прочитайте это из файла.