簡體   English   中英

FitNesse或FitSharp是否支持通用配置文件?

[英]Does FitNesse or FitSharp support a general-purpose configuration file?

我知道有一個plugins.properties文件,用於配置FitNesse環境並對其進行自定義,並且FitSharp支持某些環境設置的套件配置文件。 但是FitNesse或FitSharp是否支持用於設置符號或標記變量的通用配置文件?

我問的原因是我正在使用RestFixture,這是一個允許調用RESTful Web服務的插件。 RestFixture表將主機URL作為fixture參數。 我想將主機URL從測試頁面移到配置文件中,以便在不同的環境(例如開發,測試和生產)中測試頁面完全相同。

在根頁面中定義標記變量可以幫助我解決大部分問題,但是我希望將變量完全移出所有頁面。

順便說一句,我正在使用RestFixture的.NET端口,RestFixture.Net,所以我真的在尋找適用於.NET / FitSharp的解決方案。

通過使用符號鏈接可以在不同的環境中運行相同的測試。

如您所知,您可以通過將其放在套件頁面上來為西裝中的所有測試設置變量:

---
Suite
Help: Suite to contain tests for local testing
---
!define targetenvironment {http://localhost:8080}

像這樣構建此套件,因此沒有任何嵌套頁面。 還構建另一個具有相同屬性但值不同的套件頁面。

---
Suite
Help: Suite to contain tests for local testing
---
!define targetenvironment {http://192.168.10.1:8080}

現在,在第三個套件中構建您的測試用例,並根據您的示例將此屬性用作目標。

最后,返回您的第一個套件頁面並轉到頁面屬性,您可以在其中填充符號鏈接,基本上可以實例化測試套件。 現在,在運行此套件頁面時,將在測試中填充目標屬性。 當對第二個套件頁面執行相同操作時,您會發現在測試中,使用該值填充了目標屬性。

Suite .wiki文件現在看起來像這樣:

---
Suite
Help: Suite to contain tests for local testing
SymbolicLinks
  TestSet: .SuiteContainingTests
---
!define targetenvironment {http://localhost:8080}

在瀏覽器中可以看到包含測試的套件。

但是,測試是相同的,並且無論您在何處進行編輯(從套件1、2或3),您都將始終編輯相同的文件。

事實證明,plugins.properties文件通用配置文件。

我已經閱讀了關於Plugin.properties文件的《 FitNesse用戶指南》頁面: http : //www.fitnesse.org/FitNesse.UserGuide.AdministeringFitNesse.ConfigurationFile我認為它是指plugin.properties文件僅支持指定的內置文件。屬性。 但是,我在底部錯過了一個小字條:

其他特性

還有更多可用於調整FitNesse零件的屬性:

...

  • 可以在Wiki頁面上定義的任何變量。

我進行了實驗,發現文件中的任何鍵值對(形式為key=value )都可以在測試頁中讀取。

有關用法的一些注意事項:

1)似乎plugins.properties文件中的行以 (哈希), // (兩個正斜杠)、;開頭 (分號)或 :(兩個冒號)都被視為注釋。 或者,更有可能的是,它們本身並不是評論,只是不會引起任何錯誤;

2)plugins.properties文件中的反斜杠需要通過加倍來轉義。 例如“ C:\\ FitNesse”應該寫為C:\\\\FitNesse ;

3)要使用FitNesse測試頁中的plugins.properties文件引用屬性,請使用FitNesse標記變量語法: $ {property name}
例如$ {Theme}

4)使用FitNesse標記變量語法,可以將環境變量包含在plugins.properties文件中。 例如FitNessePluginsDirectory=${FITNESSE_HOME}\\\\Plugins ,其中FITNESSE_HOME是環境變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM