2017-08-24 28 views
0

我試圖用JMeter腳本登錄到我的應用程序。JMeter:重定向後發送不發送餅乾

我有Cookie管理器和緩存管理器添加

我的線程組腳本

  • GET主登錄頁面(/應用)返回會話ID和表單域 和餅乾
  • POST上完成的表單字段與cookie(/ posthandler)與「跟隨重定向

發生什麼是

  • POST發送會話建立初始Cookie(由GET)和表單字段和記錄在確定
    • (我看到了我們的應用程序數據庫中的記錄)
    • 響應是一個新的重定向餅乾
  • JMeter的重定向(GET)到會話URL(/應用程序?會話= XXXXX)
    • 這正好與 「[無餅乾]」(根據至r equest面板)
  • 由於該請求在沒有新的cookie的情況下到達 - 應用程序發出第二次重定向回到登錄頁面。

那麼有沒有辦法在POST響應後強制GET重定向發送cookie?

我的理論是,JMeter是因爲POST和重定向GET的不同URI路徑,JMeter不發送cookie。

我已經試過

回答

0

我的問題是自找的!

我正在運行的環境比平常不同,它有不同的上下文根,/test/app而不是/ app。爲此,我使用「my.domain.com/test」修改了我的$ {Domain}用戶參數,而不是調整所有的路徑設置。

對於發送的請求,此方法似乎以解析爲正確URL的$ {Domain} + $ {Path}的方式工作 - 但由服務器創建的Cookie用於$ {Path}(如在/ test/app中)和JMeter看到這個不同(如在/應用程序)。

我現在已經引入了一個$ {CtxRoot}用戶變量(設置爲/ test /),並將其預設爲所有路徑值 - 而我的登錄現在正在工作。