2014-10-30 52 views
3

我正在使用LoadUI 2.6.8和SoapUI 5.0。設置測試用例屬性的SoapUI Groovy腳本未反映在LoadUI中

我已經能夠做到財產轉移到了在LoadUI了SoapUI運動員之間順利通過測試案例的屬性如下所述:http://www.loadui.org/soapui-integration/passing-along-testcase-properties.html

我遇到的問題是,我通過設置屬性之一Groovy的腳本是這樣的:

def tc = testRunner.testCase.testSuite.getTestCaseByName("Auth and Start Up") 
tc.setPropertyValue("Cookie","$jsesid") 

不LoadUI更新(Groovy的腳本運行時),因而沒有被正確地傳來傳去。

我必須使用groovy腳本,因爲cookie作爲響應標題的一部分進入,而普通的Property Transfer Step不允許我進行傳輸。

有沒有人遇到過這個?深入瞭解爲什麼會發生這種情況? 謝謝!

更新:我設法通過更新身份驗證API響應來包含cookie作爲響應正文(而不僅僅是頭)的一部分,因此我能夠使用Property Transfer步驟似乎工作。但這仍然是一個解決方法。

+0

如果您在測試用例選項中使用「維護HTTP會話」選項,它會自動爲您傳遞Cookies。 – SiKing 2014-10-30 20:42:47

+0

感謝這個測試在SoapUI中工作正常,但是一旦我在LoadUI中運行它,它看起來並沒有採用在SoapUI的測試用例中設置的屬性值,即使groovy腳本在LoadUI中成功運行的值不會更新......它就像腳本的那部分從未運行或被忽略一樣。我知道腳本的其餘部分運行正常,因爲我爲其餘的調用設置了cookie頭在同一個腳本中使用相同的測試用例,並且它們全部成功運行 – Laura 2014-10-30 21:09:35

+0

假設您嘗試傳遞實際會話Cookie,則無法使用setPropertyValue設置它們。請參閱:htt p://siking.wordpress.com/2013/07/25/soapui-cookie-management/ – SiKing 2014-10-30 21:24:17

回答

0

感謝鏈接SiKing,我想我實際上遇到了這個問題,同時試圖找出cookie,我最終通過使用腳本手動設置標題來設法實現cookie。爲了測試它是否是Cookie問題,我使用了另一個屬性。我在groovy腳本中添加了以下行:

tc.setPropertyValue("testprop","blah") 

在SoapUI中運行它,並且屬性值設置爲ok。然後,我將SoapUI測試用例中的測試用例屬性「testprop」的值手動更改爲「a」並保存了該項目。

在LoadUI中,我運行了SoapUI Runner,該屬性的輸出顯示爲「a」,儘管groovy腳本運行良好。我玩的越多,我認爲它在LoadUI中的某種錯誤就越多:(

+0

現在的問題是,如果這是一個錯誤,那麼如何繞過它,如果我只知道屬性應該在groovy腳本中設置的值? (即不能使用財產轉移步驟) – Laura 2014-10-30 21:54:08

相關問題