Fitnesse试图将“defaultPath”加载为程序集

时间:2009-10-01 14:02:55

标签: fitnesse fitsharp fitnesse-slim

我正在尝试通过指定custom converter to Slim来指定suite configuration

当我手动追加?test时(由于某种原因没有出现按钮),我得到以下异常:

  

__ EXCEPTION __:System.IO.FileNotFoundException:无法加载文件或程序集'file:/// C:\ Path \ To \ fitnesse \ __defaultPath__'

知道为什么会尝试从当前工作目录加载“defaultPath”作为程序集吗?

以下是我的套件配置:

<?xml version="1.0" encoding="utf-8" ?>
<suiteConfig>
  <ApplicationUnderTest>
    <AddAssembly>C:\Path\To\TestsAssembly.dll</AddAssembly>
    <AddNamespace>Tests_Namespace</AddNamespace>
    <AddAssembly>C:\Path\To\fitSharp.dll</AddAssembly>
  </ApplicationUnderTest>

  <fitSharp.Machine.Application.Settings>
    <Runner>fitSharp.Slim.Service.Runner</Runner>
  </fitSharp.Machine.Application.Settings>

  <fitSharp.Slim.Service.Service>
    <AddOperator>NamespaceToConverter.NullableDecimalConverter</AddOperator>
  </fitSharp.Slim.Service.Service>

</suiteConfig>

我的Fitnesse维基页面如下所示:

!define TEST_SYSTEM {slim}
!define COMMAND_PATTERN {"%m" -c c:\Path\To\SlimConfig.xml %p}
!define TEST_RUNNER {C:\Path\To\fitsharp\Runner.exe}

|import|
... etc

2 个答案:

答案 0 :(得分:4)

如果您没有!路径,则默认为'defaultPath',因此这是作为%p参数传递的内容。如您所发现的,如果您没有!路径,则应删除%p。

答案 1 :(得分:0)

我能够通过从COMMAND_PATTERN中删除classpath参数(%p)来解决此问题:

!define COMMAND_PATTERN {%m -c c:\Path\To\SlimConfig.xml}