Длина не может быть меньше нуля. (NUNIT GUI RUNNER)

Я использую NUnit GUI Runner для выполнения своего набора тестов, разработанного на Selenium Webdriver C #.

Каждый раз я получаю сообщение об ошибке Длина не может быть меньше нуля.

Если я изменю относительный путь на абсолютный, тогда он будет работать нормально. Итак, есть ли какие-либо ограничения с относительным путем. Пожалуйста, порекомендуйте.

Версия NUNIT: 2.6.4.14350 Версия Framework: Net 3.5 Visual Studio 2013

Мой код такой:

String relativePath = Path.GetDirectoryName (Assembly.GetExecutingAssembly (). Местоположение); relativePath = relativePath.Substring (0, relativePath.IndexOf ("TestResults"));

Поэтому, если я изменю значение для relativePath как «C: \ demo \», тогда он будет работать нормально.


person AJIT KUMAR    schedule 22.04.2015    source источник


Ответы (1)


Скорее всего, это происходит из-за того, что relativePath не содержит подстроки TestResults и поэтому вызов IndexOf () возвращает -1. Вызов подстроки не может принимать отрицательное значение в качестве второго аргумента (длины подстроки).

person tyshka    schedule 22.04.2015
comment
Спасибо за ответ, но папка TestResults есть, поэтому с Substring проблем нет. Фактически, когда я добавляю код в раздел Watch, он возвращал значение 68. - person AJIT KUMAR; 24.04.2015
comment
Проблема решена. Обновлен мой код и включен Math.Max. relativePath = relativePath.Substring (0, Math.Max ​​(0, relativePath.IndexOf (TestResults))); - person AJIT KUMAR; 24.04.2015