2016-01-20 94 views
1

我創建了一個自定義的比較對FitNesse的,並試圖加載它,但我不能得到它的工作。它在我的腳本表中完全被忽略,並且它直接進行字符串相等比較。如何加載customcomparator在FitNesse的測試

比較:

package com.company; 
import fitnesse.testsystems.slim.CustomComparator; 

public class ContainsComparator implements CustomComparator{ 

    @Override 
    public boolean matches(String actual, String expected) { 
     if(actual != null && actual.contains(expected)){ 
      return true; 
     } 
     else{ 
      return false; 
     } 
    } 
} 

測試頁內容:

!define TEST_SYSTEM {slim} 
!path C:\Path\To\My\Comparator.jar 

!|Import| 
|fitnesse.fixtures| 

!| SetUp | CustomComparators=contains:com.company.ContainsComparator | 

!|Script|com.company.SomeFixture| 
|check| response|contains:something| 

只有最後的檢查失敗,返回:有些東西]預料[包括:東西]。沒有其他異常或故障(例如,安裝程序不會引發錯誤)

我遵循http://fitnesse.org/FitNesse.SuiteAcceptanceTests.SuiteSlimTests.TestCustomComparatorshttp://www.fitnesse.org/FitNesse.UserGuide.AdministeringFitNesse.ConfigurationFile的示例來了解這一點,但我無法在此找到任何進一步的文檔。

+1

我還沒有試過,但:你嘗試過通過plugins.properties文件註冊自定義比較器(而不是在設置夾具,咋一看代碼不給我的印象,這部作品外側的FitNesse自己的驗收測試) ? –

+0

你說得對。將比較器引用添加到plugin.properties文件(並將比較器代碼添加到插件文件夾)中。如果您將您的評論更改爲答案,我會給您信用。謝謝! – user814005

回答

2

嘗試通過plugins.properties文件註冊自定義比較。