【问题标题】:Length cannot be less than zero. (NUNIT GUI RUNNER)长度不能小于零。 (NUNIT GUI RUNNER)
【发布时间】:2015-04-23 04:14:20
【问题描述】:

我正在使用 NUnit GUI Runner 来执行我在 Selenium Webdriver C# 中开发的测试套件。

每次我收到错误 长度不能小于零。

如果我用绝对路径更改相对路径,那么它工作正常。相对路径是否有任何限制。请指教。

NUNIT 版本:2.6.4.14350 框架版本:Net 3.5 视觉工作室 2013

我的代码是这样的:

String relativePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); relativePath = relativePath.Substring(0, relativePath.IndexOf("TestResults"));

因此,如果我将 relativePath 的值更改为“C:\demo\”,那么它工作正常。

【问题讨论】:

    标签: user-interface nunit runner


    【解决方案1】:

    这很可能是因为 relativePath 不包含“TestResults”子字符串,因此 IndexOf() 调用返回 -1。子字符串调用不能接受负值作为其第二个参数(子字符串的长度)。

    【讨论】:

    • 感谢您的回复,但 TestResults 文件夹在那里,所以 Substring 没有问题。事实上,当我在 Watch 部分添加代码时,它的返回值为 68。
    • 问题已解决。更新了我的代码并包含了 Math.Max。 relativePath = relativePath.Substring(0, Math.Max(0,relativePath.IndexOf("TestResults")));
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-06
    • 1970-01-01
    • 2022-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多