2016-03-01 74 views
0

我使用創建變量時出現問題。 我使用RestFixture獲取/從http位置後,我也想在其他設備進行使用這樣的回答:在其他fitnesse燈具中使用let創建變量

  1. 我使用
  2. 通過後
  3. 節約身體變量中獲取數據
  4. 打印我的註釋行變量,看是真正的工作

|!-CustomRestFixture-!| http://addres | CONFIG |
| setHeader | Content-Type:application/json |
| setBody | {一些JSON正文} |
|發佈| | 200 |內容類型:text/plain | |
| let | myvariable | body | // * | |
|評論|這是我的變量:%myvariable%|

  • 然後我想用它在另一個(定製)夾具是比較兩個串(第二固定件是相同的測試頁內):
  • | DecTable |
    |我的第一個值|我的第二個值|是否相等?
    | aaa | aaa | true |
    |%myvariable%| nothing | ture |

    1. 我能注意到的是我的變量在RestFixture中沒有其他地方工作。我不能通過任何進一步的,但它假設是全球

    有沒有解決方案呢?在此先感謝

    回答

    0

    標籤是全局標籤,可以在其他夾具實例間共享。

    但是,如果你想在自己的自定義夾具使用標籤,您可以將數據保存到一個變量如下面和在任何其他自定義燈具

    |let|card_number1|js |response.jsonbody.card.number|$card=| 
    

    這將節省卡號使用到一個全局可用於其他表格的變量

    有一點我想提醒大家,雖然您不必編寫單獨的夾具來比較來自其他夾具的響應。如果您有json響應,則可以使用response.jsonbody.element1訪問響應的內容,如果您有xml響應,則可以使用/ root/element1/text()訪問響應的內容。因此,在終點發布請求和驗證都可以一次完成。下面是一個例子

    |Table: RestFixture|${protocol}://${baseuri}:${port}/${resource_path}|longtimeoutconfig                  |  
    |setBody           |$req0                                 | 
    |setHeader          |Content-Type: application/json                           | 
    |POST            |             |200|             |     | 
    |let            |amount1           |js |response.jsonbody.amount       |${amount}      | 
    

    一些非常好的例子可以在https://cloud.github.com/downloads/smartrics/RestFixture/RestFixture-3.0.pdf

    +0

    的使用示例的最新版本中找到,文檔[在RestFixtureLiveDoc可用(https://github.com/smartrics/RestFixtureLiveDoc/tree/master/src/main/resources/FitNesseRoot/RestFixtureTests)項目在GitHub上 – smartrics

    相關問題