無需編譯app切換線上、測試環境

在我們測試過程當中,常常須要切換測試環境和線上環境。大體有以下幾個方案。apache

1、服務器地址編譯到app中

此種方式須要在代碼裏保存兩套配置,一套指向線上,一套指向測試。經過編譯參數分別生成測試包、線上包。記住此種方式必定要經過編譯參數實現,防止將測試環境發到線上。windows

  優勢:簡單暴力無需其它設置及設備支持服務器

  缺點:切換服務器需從新編譯安裝包。app

2、app中留着修改服務器地址的隱藏功能

此種方式debug編譯的狀況下,預留一個能夠修改服務器的入口,進入後能夠隨意切換服務器地址。工具

  優勢:代碼中不會出現測試服務器地址,不會形成測試環境發到線上。測試

  缺點:每次輸入測試服務器地址,比較麻煩而且容易輸入錯誤。spa

3、經過代理方式無需編譯自由切換線上、測試環境

經過工具配置指向測試環境或線上環境,這種又有以下幾種方法。插件

一、利用極路由等硬件設備

一、訪問極路由安裝host插件debug

二、將app中用到的域名,配置相應測試服務器地址代理

三、在app上配置使用此路由上網

此時你再次訪問app即訪問的是測試環境。

解決https沒法獲得數據的問題

因爲app中配置的是線上服務器器,因此有可能爲https協議。當使用https協議時,若是測試環境配置的是私有證書,app將不能拿到返回的數據,也就沒法渲染。下圖就是無效證書

此時app訪問時報以下錯誤

有兩個方式能夠解決https問題

    第一: 另外申請一個正式證書(須要花錢)

    第二:將線上證書複製到測試環境,並將ng或apache配置成線上域名

 二、利用端口轉發工具

利用 porttunnel 或 PortMap 等端口轉發工具,在端口轉發工具上配置一個轉發規則。

一、配置轉發工具,以下圖配置爲 訪問本機88端口的全部請求轉發到3.85的80端口

二、查找本機ip地址

 

三、設置windows防火牆,因爲須要用本機進行轉發因此要開放你的端口,暴力的話能夠停用防火牆

四、手機上設置代理服務器

  找到wifi中的高級設置,將代理設置爲手動,填寫剛纔配置的win ip以及porttunnel設置的端口號

五、配置好後這時候你的app就從線上切換到了測試環境

優勢:只須要一個軟件便可實現轉發

缺點:軟件方式不太穩定,關機等會失效

注意:此方法還有一個問題,我在配置htts請求未能配置成功。

三、360隨身wifi或小米隨身路由

可使用360wifi軟件或小米隨身路由等功能,而後再經過host修改或端口轉發等工具實現測試線上環境切換。

優勢:價格便宜

缺點: 也是相對不穩定,對於https的也是不太好搞定(須要修改手機上的dns指向,而且在360wifi機器上配置dns服務或在其它機器上配置dns,也就是修改dns指向)

相關文章
相關標籤/搜索