2014-09-26 75 views
0

在使用Google地圖的應用程序中通過JMeter錄製一些問題。JMeter使用谷歌地圖錄制應用程序

每當我在Firefox(localhost:8080)上啓用代理時,Google地圖將停止在代理處於活動狀態時導航到的任何頁面上顯示。

這使我產生了一些問題,因爲我希望記錄在我的應用程序中的大部分功能都駐留在頁面上的Google地圖窗口中,並且將顯示爲空白的白色窗口。

幫助表示讚賞,感謝 ,

回答

1

我敢打賭,你有一堆Received fatal alert: unknown_caSoftware caused connection abort: recv failed消息。這就是Google從MITM攻擊中保護自己的方式。

一般來說我不會推薦Google地圖自己進行性能測試,它應該由Google工程師測試,所以常見做法是exclude external sites並專注於您的應用程序。

如果您仍然需要記錄Google Maps操作並將它們轉換爲JMeter請求,那麼仍然有可能,但這通常不是性能測試領域通常所做的事情,您可以使用JMeter Chrome Extension或以下其中一種嗅探器工具:

的d基於嗅探器輸出手動構建相關請求。

+0

嗨德米特里,感謝您的及時答覆。我收到的錯誤如下:「ReferenceError:google未定義。」我需要測試的不是GoogleMaps本身,而是GoogleMaps之上的疊加層,它是由我們的軟件生成的。如果不能測試這些覆蓋圖,那麼我無法測試大約80%的應用程序,因爲功能依賴於這些覆蓋圖。 BlazeMeter插件是否花錢,並將它記錄到我的錄音控制器,還是會轉到某個雲端?猜猜周圍沒有其他辦法嗎?謝謝 – 2014-09-29 12:09:09

+0

'google is not defined'對我來說看起來像一個JavaScript錯誤。 JMeter不是瀏覽器,它不能執行客戶端JavaScript。關於插件 - 可以自由使用,並且可以將記錄的數據導出到JMeter的.jmx文件中。 – 2014-09-29 14:10:00

1

當通過JMeter代理記錄腳本時,我發現了同樣的問題,我們通過google API獲取了自動建議位置的文本框從未呈現過。我們還看到「ReferenceError:google未定義」JavaScript錯誤。這是我做的解決方法

  1. 安裝了一個chrome插件(BlazeMeter)來捕獲通過瀏覽器發送的所有HTTP請求,頭文件和cookie,而不需要代理服務器。 (請確保您關閉所有標籤,只保留您的應用程序一個開放)
  2. 手動創建在JMeter的腳本中的取樣器,並轉化爲交易的所有請求,我試圖執行
  3. 手動添加標題和cookie信息作爲每個請求都需要
  4. 使用JMeter java API以編程方式分別通過參數化讀取請求/響應頭和cookie集。
相關問題