【背景】
私が現在利用している開発環境はAWS上に存在する。一方クライアント端末(Windowsのみ)は社内に存在している。自身の会社には社内プロキシが存在するため、HTTP通信は社内プロキシを通さないと通信を抜けさせてくれない。SSHでトンネリングさせる方法も最悪使えなくもないが、その場合通常の通信とは経路が若干異なるため出来るだけ通常の通信と同じ方法で接続させたいのと、社内法規上一応アウトなので素直にプロキシを通した通信にてSelenium実行をしている(SSHを許可してくれる時点でなんでもありな気はするが…)。
プロキシを通す事によりうまくいかなかった事が色々あったので、覚えている範囲でさらしておきます(社内プロキシ関係ない部分も記載有り)。
【設定内容】
[Java]
●Javaコントロールパネルの設定確認($JAVA_HOME/bin/javacpl.exe)
・[一般] - [ネットワーク設定] → プロキシ設定が想定通りかの確認
・[セキュリティ] - [例外サイトリスト] → セキュリティプロンプトを出さない様に設定
●(プロキシは直接関係ないが)Basic認証の設定($JAVA_HOME/lib/net.properties)
jdk.http.auth.tunneling.disabledSchemesをコメントアウト
[Jenkins]
●[ノード] - [ノード名] - [起動方法] - [トンネル接続] - localhost:8080 とかに設定
●[グローバルセキュリティの設定] - [Agents] - [TCP port for JNLP agents] → 8080とかに固定化
[IE]
●[ツール] - [インターネットオプション] - [プロキシの設定] → プロキシの設定
(Windows7の場合は)システムの設定や利用しているソフトが知らぬ間に内部的に参照している場合もあるため、IE使ってなくても対応必要有
Windows10に関しては、現時点では知見無
[プロキシ]
● Proxomitron, MAPEなどを利用
FireFoxのプロキシポップアップを回避するために利用(∵FireFoxのプロキシがパスワードを記憶してくれないため)
また、直接接続するより、プロキシソフトを利用して接続した方がログが見れたり、通信レベルでリトライしてくれたり、設定が実は効いてなかったり(主にeclipse)などを吸収できるので便利
[SSH転送]
●RLogin, TeraTermなどを利用
masterとslabeの接続を維持するために必要
(こちらはテスト処理とは関係ない部分なので許容)
[その他]
●各環境の環境変数
http_proxyなどの設定があると、思わぬ挙動をする場合がある
(ex. http_proxyを設定していると、ローカルアドレスの場合でも必ず当環境変数を参照してしまう。MAPEの設定を触っている際に当事象が発生していた。)
【参考リンク】
兵庫県電子入札共同運営システム:HTTPS トンネリングの Basic 認証無効化への対処
https://www.nyusatsu.e-hyogo.jp/hyogo/files/https_tunneling.pdf
[改訂第3版]Jenkins実践入門 ――ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)
- 作者: 佐藤聖規,和田貴久,新井雄介,米沢弘樹,山岸啓,岩成祐樹,川口耕介
- 出版社/メーカー: 技術評論社
- 発売日: 2017/05/24
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
Selenium実践入門 ―― 自動化による継続的なブラウザテスト (WEB+DB PRESS plus)
- 作者: 伊藤望,戸田広,沖田邦夫,宮田淳平,長谷川淳,清水直樹,Vishal Banthia
- 出版社/メーカー: 技術評論社
- 発売日: 2016/02/02
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (4件) を見る
エキスパートが教えるSelenium最前線 (CodeZine Digital First)
- 作者: 戸田広,島根義和,高橋陽太郎,沖田邦夫,松尾和昭,宮田淳平
- 出版社/メーカー: 翔泳社
- 発売日: 2018/05/15
- メディア: オンデマンド (ペーパーバック)
- この商品を含むブログを見る