未経験からエンジニアとして現場に入り、
「画面が動かない」「原因が分からない」という場面で
Chrome DevToolsを開いたものの、何を見ればいいのか分からない
と感じたことはないでしょうか。
実務では、コードを書くこと以上に
「なぜ動かないのかを調べる力」が求められます。
そして、その調査の中心になるのが Chrome DevTools です。
この記事では、新人エンジニアが
最初に押さえるべきDevToolsの使い方と調査の考え方を、
実務目線で分かりやすく解説します。
Contents
Chrome DevToolsでのバグ調査とは何をする作業か
実務におけるバグ調査は、「正解を当てる作業」ではありません。
Chrome DevToolsを使って、画面や通信、エラーの状態を確認しながら
「何が起きているのか」「どこまで分かっているのか」を整理していく作業です。
ここでは、新人エンジニアがDevToolsでつまずきやすい理由と、
バグ調査において本当に求められている考え方を整理します。
新人がDevToolsで戸惑いやすい理由
研修では、あらかじめ用意された課題を
「正解に向かって実装する」経験が中心になります。
一方、実務では次のような状況が日常的に発生します。
-
どこでエラーが起きているか分からない
-
エラーは出ていないが画面が動かない
-
原因がフロントなのかバックエンドなのか判断できない
DevToolsを開いても、
Console・Network・Elementsなどタブが多く、
「結局どれを見ればいいのか分からない」状態になりがちです。
バグ調査で求められているのは実装力ではない
新人に求められているのは、
いきなり原因を特定することではありません。
実務で重視されるのは、
-
どこまで調べたか
-
何が分かっていて、何が分からないか
-
次に何を確認しようとしているか
といった「調査の過程」です。
DevToolsは、その過程を整理するための道具にすぎません。
DevToolsを開いたら最初にやるべきこと
バグが起きたとき、すぐにDevToolsを操作し始めてしまいがちですが、
やみくもにタブを開いても原因にたどり着くことはほとんどありません。
まずは「何を確認するべき状況なのか」を整理してから調査を始めることが重要です。
ここでは、DevToolsを本格的に触る前に、
新人エンジニアが必ず押さえておきたい前提条件を紹介します。
まず確認すべき3つの前提
DevToolsを触る前に、次の3点を頭に入れておきましょう。
-
その不具合は再現するか
-
どの操作をしたときに起きるか
-
画面の問題か、通信の問題か
これを整理せずに調査を始めると、
タブを切り替えるだけで時間が過ぎてしまいます。
バグ調査は「当たりをつける作業」
新人のうちは、
すべてを正確に把握しようとしなくて大丈夫です。
まずは
「Consoleを見た方がよさそう」
「通信が怪しそう」
といった 当たりをつけること が重要です。
Console(コンソール)で確認すべきポイント
Chrome DevToolsの中でも、Consoleは最初に目に入りやすいタブです。
エラーが表示されるため重要そうに見えますが、
すべてを理解しようとしてしまうと、かえって混乱しやすいポイントでもあります。
ここでは、新人エンジニアがConsoleを見るときに意識すべき考え方と、
最低限押さえておきたい確認ポイントを整理します。
エラーメッセージの読み方
Consoleには、赤文字のエラーが表示されます。
ここで大切なのは、
-
エラー全文を理解しようとしない
-
ファイル名と行番号を見る
という点です。
行番号が示す場所をコード上で確認し、
「この処理の直後で問題が起きているかもしれない」
と考えられれば十分です。
新人が見落としやすいポイント
よくあるのが、
-
表示されているエラーが「結果」であって原因ではない
-
同じエラーが複数回出ている
といったケースです。
Consoleは
「ヒントを拾う場所」
という意識で使うと、混乱しにくくなります。
Networkタブで通信を確認する
画面のボタンを押しても何も起きない、表示が更新されないといった場合、
原因が画面の処理ではなく、裏側の通信にあることも少なくありません。
そのようなときに確認すべきなのが、DevToolsのNetworkタブです。
ここでは、新人エンジニアが実務でまず確認しておきたい、
通信エラーの見分け方と最低限のチェックポイントを整理します。
画面が動かないときに疑うべき通信エラー
ボタンを押しても画面が変わらない場合、
Networkタブを開いて通信を確認します。
最低限見るポイントは次の2つです。
-
リクエストが飛んでいるか
-
ステータスコードが200かどうか
通信自体が発生していなければ、
JavaScript側の処理が疑われます。
レスポンスを見ると分かること
通信が成功していても、
返ってきたデータが想定と違うケースがあります。
-
件数が0件
-
必要な項目が含まれていない
この時点で
「バックエンド側のデータかもしれない」
という判断ができれば十分です。
Elementsで画面表示の問題を切り分ける
画面が崩れている、要素が表示されないといった問題は、
JavaScriptの処理ではなく、HTMLやCSSが原因になっていることも多くあります。
このような表示まわりの不具合を確認する際に役立つのが、Elementsタブです。
ここでは、新人エンジニアが画面表示の問題に直面したときに、
まず何を確認すればよいのかという基本的な考え方を整理します。
画面崩れ・表示されないときの考え方
画面に表示されない場合、
-
HTML自体が存在しない
-
CSSで非表示になっている
このどちらかであることがほとんどです。
新人が最低限できれば十分な確認内容
Elementsタブでは、
-
対象の要素が存在するか
-
想定どおりのクラスが付いているか
これだけ確認できればOKです。
CSSを完璧に理解する必要はありません。
バグ調査が行き詰まったときの整理方法
DevToolsを使って調査を進めていても、
どうしても原因が特定できず、手が止まってしまうことは珍しくありません。
そのようなときに重要になるのが、技術力よりも「状況を整理する力」です。
ここでは、調査が行き詰まったときに新人エンジニアが意識したい、
考え方の切り替え方と情報の整理方法について解説します。
「分からない」をそのままにしない
調査が止まったら、次を整理します。
-
どこまで確認したか
-
何が分かっているか
-
どこが分からないか
これを言葉にできるだけで、
質問の質が大きく変わります。
先輩に質問するときの伝え方
良い質問は、
-
再現手順
-
確認した箇所
-
仮説
がセットになっています。
DevToolsでの調査内容は、そのまま質問材料になります。
新人がやりがちなNG調査パターン
バグ調査がうまく進まないとき、
実はDevToolsの使い方そのものではなく、
調査の進め方に原因があるケースも少なくありません。
ここでは、新人エンジニアが無意識のうちにやってしまいがちな
代表的なNG調査パターンを取り上げ、改善のヒントを整理します。
闇雲にDevToolsを触る
タブを開いて閉じてを繰り返すだけでは、
調査にはなりません。
エラー文を読まずに検索する
検索は有効ですが、
「何が起きているか」を整理せずに行うと
解決につながりにくくなります。
まとめ|DevToolsは「慣れれば武器になる」
Chrome DevToolsは、
最初から使いこなせる必要はありません。
-
見る順番を持つ
-
分からなくても調べた過程を残す
これを意識するだけで、
調査力は確実に伸びていきます。
DevToolsは、新人エンジニアにとって
最も早く成長を実感できる武器の一つです。
焦らず、少しずつ慣れていきましょう。