Microsoft によるオープンな
Web デバッグ環境
尾崎 義尚
2015/9/26
尾崎 義尚 Ozaki Yoshihisa
• Microsoft MVP for Internet Explorer
• @yoshioms
• Web開発でよく使う、特に使えるChromeデベロッパー・ツー
ルの機能
• http://www.buildinsider.net/web/chromedevtools/01
• Web制作で使いこなしたいIE開発者ツールの最新機能
• http://www.buildinsider.net/web/ief12devtools/01
オープンソースじゃないけど
オープンな Edge
どんな感じでオープンか
デバッグ環境がオープン
開発の進捗がオープン
F12 開発者ツール
どんな感じでオープンか
デバッグ環境がオープン
開発の進捗がオープン
F12 開発者ツール
VORLON.JS
Vorlon.js
• http://vorlonjs.com/
• オープンソース
• 拡張可能プラグイン アーキテクチャ
• Node.js と Socket.io を利用
• リモート デバッグ可能なマルチ プラットフォーム開発者ツー
ル
Vorlon.js
• Vorlon.js サーバーのセットアップ、実行
$ npm i –g vorlon
$ vorlon
<script src=“http://localhost:1337/vorlon.js”></script>
• アプリで Vorlon.js を有効に
Vorlon.js
Vorlon.js
接続元クライアント一覧
Vorlon.js
ダッシュボード サイドは、送られてき
た情報でコマンド パネルを生成する
クライアント サイドは、デバイスの
情報を送信する
Vorlon.js
• デフォルト プラグイン
• Console
• Modernizr
• DOM Explorer
• Object Explorer
• サンプル プラグイン
• https://github.com/MicrosoftDX/Vorlonjs/tree/master/Plugins/Vorl
on/plugins/sample
• Console
• Modernizr
• DOM Explorer
• Object Explorer
• XHR Panel
• ngInspector (Angular.js)
• Network monitor
• Resource Explorer
Vorlon.js
息を吹き返した?
WebDriver
WebDriver
• ブラウザ テストの自動化
• W3C WebDriver 標準
• https://w3c.github.io/webdriver/webdriver-spec.html
• Microsoft WebDriver
• http://www.microsoft.com/en-us/download/details.aspx?id=48212
• Borland Silk
• http://online.borland.com/windows10
WebDriver
Microsoft WebDriver のインストール
http://www.microsoft.com/en-us/download/details.aspx?id=48212
1
Selenium のダウンロード
http://docs.seleniumhq.org/download/
2
Visual Studio コンソール アプリで、② を参照
3
WebDriver Status
Status Count
Complete 51
Partial 4
Not Yet 34
WebDriver Status
https://dev.modern.ie/platform/status/webdriver/details/
Build 10532 時点
Build/Priority Count
10240 36
10532 18
Priority 1 8
Priority 2 9
Priority 3 15
Priority 4 2
WebDriver ドキュメント
• Microsoft Edge 用 WebDriver
• https://msdn.microsoft.com/ja-jp/library/mt188085(v=vs.85).aspx
dev.modern.ie
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
Microsoft によるオープンなweb デバッグ環境 comm tech festival-
RemoteApp - HTML5TEST
環境 スコア
IE11 (Windows 10) 348
IE11 with EdgeHTML(RemoteApp) 402
Edge (Windows 10 10547) 458
Chrome 45 526
仮想マシン
https://dev.modern.ie/tools/vms/windows/
XP_IE6
Vista_IE7
XP_IE8
Win7_IE8
Win7_IE9
Win7_IE10
Win8_IE10
Win8.1_IE11
Win7_IE11
Win10_Microsoft Edge
それぞれサポートされている仮想
化環境が異なる
VMWare
Hyper-V 2008R2
Hyper-V 2012
VirtualBox
VPC
ブラウザのスクリーンショット
https://dev.modern.ie/tools/screenshots/
どんな感じでオープンか
デバッグ環境がオープン
開発の進捗がオープン
F12 開発者ツール
UserVoice
• https://wpdev.uservoice.com/forums/257854-internet-
explorer-platform/category/84475-f12-developer-tools
デスクトップ IE 開発者ツールを使って
Windows Phone の IE mobileをデバッグ
• 412 votes
• MacOS / iOS の Safari みたいに Windows Phone の IE mobile
のデバッグができるようにして欲しい。
>>> VS できるよ。
• http://blogs.msdn.com/b/visualstudioalm/archive/2014/04/
04/diagnosing-mobile-website-issues-on-windows-phone-8-
1-with-visual-studio.aspx
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6510481-debug-for-ie-mobile-on-windows-
phone-using-desktop
デバッガーでシンタックス エラーを表示
• 145 votes
• JavaScript ファイルにシンタックス エラーがあったとき、赤の
波線でエラーを表示して欲しい。
>>> Backlog に登録しました。
• そのうち実装します。
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6225699-show-syntax-errors-in-debugger
Edit and Continue
• 122 votes
• デバッガーで JavaScript をデバッグ中にコードを変更したら、
その場で反映して、実行を継続して欲しい。
>>> 実装中
• 複雑な機能なので、ちょっと時間がかかります。
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6225599-edit-and-continue
開発者ツールをドックできるように
• 64 votes
• 現在のウィンドウに開発者ツールをドックする機能が欲しい
>>> 実装中
• Edge のアップデートに追加できるように作業中です。
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/9160582-dock-tools
[ESC] キーでコンソールを表示
• 26 votes
• Ctrl + ` でコンソール表示ってわかりにくい。Chrome とか
Firefox みたいに Esc キーで表示してよ。
>>> 作業中
• ガッテン
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6709603-make-the-escape-key-open-the-console-
when-using-th
デバッグの中止
• 15 votes
• [デバッグの中止] できる機能が欲しい。デバッグを中止すると、
後続のブレークポイントで停止しないようにして欲しい。
>>> 作業中
• デバッガーを切断 (Disconnected) できる機能を実装中です。
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6225650-stop-
debugging
Web View で F12 のサポート
• 12 votes
• Web View (ストア アプリ) や Web Browser (.NET) アプリケー
ションをデバッグできるツールがない。JavaScript のメモリ
リークや Hang、Crash のデバッグが可能になる機能が欲しい。
>>> 作業中
• Windows 10 の 1月プレビューで、組み込み Web コントロール
にアタッチできる F12Chooser.exe の早期リリースが含まれて
います。
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6823388-f12-support-for-web-browser-and-
web-view-controls
F12Chooser.exe
要望
F12Chooser.exe
要望
リモートデバッグ プロトコルを使ったデバッ
グ機能
• 38 votes
• Chrome で実装されているデバッグ プロトコル
(https://developer.chrome.com/devtools/docs/debugger-
protocol) を使えるようにして欲しい。
>>> 作業中
• 早期プロトを公開中
要望
https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6511301-debugging-capabilities-using-the-remote-
debugging
IE Diagnostics Adapter
• https://github.com/Microsoft/IEDiagnosticsAdapter
• MITライセンス
• Chrome remote debugging protocol
(https://developer.chrome.com/devtools/docs/debugger-
protocol) を使ったデバッグ
• Pre Alpha
• DOM と基本的なスクリプト デバッグのみ
• Microsoft Edge はまだ
IE Diagnostics Adapter
IE Diagnostics Adapter
IE Diagnostics Adapter
オワコン?
Boom! It’s done(実装済み)
採用されたアイディア
ネットワークの記録を自動的に開始してほしい
Ctrl + R でリフレッシュ
Chrome みたいにソースタブに CSS を
Cookie の検証と編集を可能に
Dart VM をサポートしないでほしい
Boom! It’s done
Chrome みたいにソースタブに CSS を
• JavaScript
• CSS
• ローカル ストレージ
• セッション ストレージ
• クッキー
Boom! It’s done
Cookie の検証と編集を可能に
Boom! It’s done
Cookie、セッション ストレージ、ローカル ストレージ
の値を参照、編集が可能に
どんな感じでオープンか
デバッグ環境がオープン
フィードバックと進捗がオープン
F12 開発者ツール
F12 開発者ツール
ドキュメントがオープンソースに (ただし英語だけ)
https://github.com/MicrosoftEdge/MicrosoftEdge-Documentation
DOM Explorer
DOM Explorer
変更箇所
ノードにバインドさ
れたイベント
Margin、Paddingなど
最終的に適用された
スタイル
ノードに適用されて
いるスタイル
疑似状態
DOM Explorer
• LESS、SASS をサポート
ソース切り替え
Web Essentials
F12 開発者ツールで変更した内容を Visual Studio に反映
コンソール
コンソール
フィルター
デバッガー
デバッガー
• JavaScript
• CSS
• ローカル ストレージ
• セッション ストレージ
• クッキー
デバッガー
• Cookie
• ローカル ストレージ
• セッション ストレージ
の内容確認・編集が可能
デバッガー
• マイコードのみをデバッグ (Just My Code)
• デバッグ済みのライブラリー コードにス
テップインしない
• jQuery, Bootstrap, 社内共通ライブラリーなど
デバッガー
• 後続のブレークポイントで止まらないようにする
デバッガーのデタッチ
デバッガー
• 比較
• 保存
• 整形出力 (Prettify)
• 右端で折り返す
• ライブラリー コードとしてマークする
• ソースの切り替え
デバッガー
• TypeScript, CoffeeScript のデバッグが可能
マップファイルを使って
元のファイルを読み込み
デバッガー
関数、オブジェクトを
参照しているソースを表示
関数、オブジェクトの
定義に移動
デバッガー
処理を止めることなく、コンソールに
状態を出力
デバッガー (そのうち)
• Time Travel Debugging
• Visual Studio にある Intellitrace みたいなもの
• 実行状態を記録
• たとえば、例外が発生したときに発生前の状態まで戻る
• MSR の研究結果
ステップバック
http://channel9.msdn.com/Events/WebPlatformSummit/2015/Whats-new-in-the-F12-Developer-Tools
http://channel9.msdn.com/blogs/Marron/Time-Travel-Debugging-for-JavaScriptHTML
ネットワーク
タブの切り替えが不要に
ネットワーク
ネットワーク
• デフォルト オン
ネットワーク
ネットワーク
レスポンス ボディー
整形も可能
HTTP ヘッダー
ネットワーク
Cookie
リクエストからレスポン
スまでの時間
遅い場合はチューニング
を検討する
• サーバーサイド処理
• CDN を検討リクエスト パラメータ
パフォーマンス
「UI の応答」と「プロファイラー」が統合
パフォーマンス
イベント
CPU 使用率
FPS
タイムライン
タイムライン詳細
パフォーマンス
空白の時間がある
処理がブロックされている
ように見える
パフォーマンス
イベントの詳細を見ると、Facebook プラグインのダウンロードから、
読み込みまでの時間が空いていることがわかる
パフォーマンス
読み込みに時間がかかって、
後続の処理まで待っていた
処理時間の配分
詳細まで切り分け可能
パフォーマンス
描画に時間がかかっているエレメントを
選択して、ハイライト
右クリックで DOM Explorer に切り替え
パフォーマンス 範囲内で実行された JavaScript
コードを表示
メモリ
メモリ
スナップショット作成時のメモリ状態を取得
• 使用量
• オブジェクト数
• 差分
メモリ
2 点間の比較
オブジェクトを参照しているオブジェクト
→参照されているということは、GC で回収されない
オブジェクト名をクリックすると
「デバッガー」のソースに切り替わる
エミュレーション
ドキュメント モードの切り替えが消滅
エミュレーション
緯度・経度、GPS なしをシミュレート
試験的機能
試験的な JavaScript 機能を有効にする
ES2015 Destructuring
ES2016 Async Functions
ES2016 Exponentiation operator

More Related Content

PDF
Internet Explorer 11 の F12 開発者ツール
PPTX
Microsoft Edge F12 開発者ツール
PDF
Windows 10 の あたらしい Web ブラウザー について
PDF
Microsoft edge deep dive
PDF
Microsoft Edgeで サポートされる 新しい API について
PDF
Windows 10 のあたらしい Web ブラウザーの F12 開発者ツール
PDF
酒と泪と Edge と IE
PDF
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
Internet Explorer 11 の F12 開発者ツール
Microsoft Edge F12 開発者ツール
Windows 10 の あたらしい Web ブラウザー について
Microsoft edge deep dive
Microsoft Edgeで サポートされる 新しい API について
Windows 10 のあたらしい Web ブラウザーの F12 開発者ツール
酒と泪と Edge と IE
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成

What's hot (20)

PDF
Microsoft Edge 最新アップデートとこれから
PDF
Internet Explorer 10 概要と変更点
PDF
Windows 10のWebブラウザ Microsoft EdgeとInternet Explorer 11
PDF
Internet Explorer 9 の新機能「固定サイト」 (Pinned sites)
PPTX
Selenium2(web driver) ide編
KEY
ここが変わったTizen sdk2.0alpha
PPTX
Selenium2(web driver)
PDF
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
PPT
20060419
PDF
JenkinsとSeleniumの活用事例
PDF
View customize pluginを使いこなす
PDF
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
PPTX
Internet Explorer サポート提供終了で変わること変わらないこと
PPTX
XPagesジャンプスタート
PDF
View customize1.2.0の紹介
PDF
マイクロソフトにとってのWebって?
PDF
ハードコア デバッギング : サポート直伝! Windows カーネルモード デバッグ活用編!!
PDF
Introducing Windows Terminal
PDF
めとべや東京10 Universal Windows Platform appの新しいバインディング
PPTX
WindowsにおけるUIスレッドの基礎
Microsoft Edge 最新アップデートとこれから
Internet Explorer 10 概要と変更点
Windows 10のWebブラウザ Microsoft EdgeとInternet Explorer 11
Internet Explorer 9 の新機能「固定サイト」 (Pinned sites)
Selenium2(web driver) ide編
ここが変わったTizen sdk2.0alpha
Selenium2(web driver)
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
20060419
JenkinsとSeleniumの活用事例
View customize pluginを使いこなす
Movable Type から BOT を作ろう! ~ Data API と Microsoft BOT Framework ~
Internet Explorer サポート提供終了で変わること変わらないこと
XPagesジャンプスタート
View customize1.2.0の紹介
マイクロソフトにとってのWebって?
ハードコア デバッギング : サポート直伝! Windows カーネルモード デバッグ活用編!!
Introducing Windows Terminal
めとべや東京10 Universal Windows Platform appの新しいバインディング
WindowsにおけるUIスレッドの基礎
Ad

Similar to Microsoft によるオープンなweb デバッグ環境 comm tech festival- (20)

PDF
DEV-008_Developing on the Edge. ~Web プラットフォームと Cordova~
PDF
最新開発支援ツールを使ったデバッグ対応
PDF
Devtools.next
PDF
Chrome DevTools.next
PPTX
(Web に関わる人に知っておいてほしい)Web ブラウザー 最新事情
PPTX
A 2-1 gitwebmatrix 2 から使う node.js on windows azure
PDF
Chrome Developer Toolsを使いこなそう!
PDF
すごいぞ!Google Chrome
PDF
Adobe Edge Inspectを利用してデバッグ
PDF
Edge と IE、来年からの Web 制作
PDF
IT エンジニアのための 流し読み Windows 10 - IE11 のサポート終了と Microsoft Edge について
PDF
Firefox DevTools
PDF
Firefox os hackathon
PDF
Web is the OS (KDDI mugen Labo)
PDF
Chromeでjavascriptデバッグ!まず半歩♪
PDF
Firefox OS - Blaze Your Own Path
PPTX
見せてもらおうか、新しい Microsoft Edge の性能とやらを
PDF
組み込みでも使えるFirefox OS
PDF
for Developer、 Microsoft Edge とInternet Explorer で 新しくサポートされるAPI
PPTX
超効率的フロントエンドデバッグ術
DEV-008_Developing on the Edge. ~Web プラットフォームと Cordova~
最新開発支援ツールを使ったデバッグ対応
Devtools.next
Chrome DevTools.next
(Web に関わる人に知っておいてほしい)Web ブラウザー 最新事情
A 2-1 gitwebmatrix 2 から使う node.js on windows azure
Chrome Developer Toolsを使いこなそう!
すごいぞ!Google Chrome
Adobe Edge Inspectを利用してデバッグ
Edge と IE、来年からの Web 制作
IT エンジニアのための 流し読み Windows 10 - IE11 のサポート終了と Microsoft Edge について
Firefox DevTools
Firefox os hackathon
Web is the OS (KDDI mugen Labo)
Chromeでjavascriptデバッグ!まず半歩♪
Firefox OS - Blaze Your Own Path
見せてもらおうか、新しい Microsoft Edge の性能とやらを
組み込みでも使えるFirefox OS
for Developer、 Microsoft Edge とInternet Explorer で 新しくサポートされるAPI
超効率的フロントエンドデバッグ術
Ad

More from Yoshihisa Ozaki (11)

PDF
Microsoft edge insider channelsがリリースされました
PDF
Microsoft新しいブラウザーのウワサ
PDF
Internet Explorer 11 August Updateの F12 開発者ツール
PDF
Visual studio 14 CTP2 概要
PDF
Windows 8.1 Update 1で更新されたInternet Explorer 11のF12開発者ツールアップデート
PDF
Internet Explorer 11 概要
PDF
C#coding guideline その2_20130325
PDF
CLRの基礎 - プログラミング .NET Framework 第3版 読書会
PDF
C# コーディングガイドライン 2013/02/26
PPTX
Ie10正式リリース版のhtml5 css3
PPTX
Code Pack の話
Microsoft edge insider channelsがリリースされました
Microsoft新しいブラウザーのウワサ
Internet Explorer 11 August Updateの F12 開発者ツール
Visual studio 14 CTP2 概要
Windows 8.1 Update 1で更新されたInternet Explorer 11のF12開発者ツールアップデート
Internet Explorer 11 概要
C#coding guideline その2_20130325
CLRの基礎 - プログラミング .NET Framework 第3版 読書会
C# コーディングガイドライン 2013/02/26
Ie10正式リリース版のhtml5 css3
Code Pack の話

Microsoft によるオープンなweb デバッグ環境 comm tech festival-