Share via


バグを報告する場合と方法を教えてください

ヒント

Visual Studio の [問題を報告する] メニュー項目を使用して、問題の解決に役立つ診断情報をバグ レポートと共に送信します。

Visual Studio 2019 または Visual Studio 2017Visual Studio for Mac 向けの詳細な手順が用意されています。

既存のレポートについては、Visual Studio Developer Community Web サイトで検索できます。

バグを報告するタイミング

エンジニアが問題を再現するために使用できると思われる一連の手順がある場合。

OR

問題の明らかな兆候を丁寧に説明できる場合。特に、問題に関連する正確な状況についても説明できる場合は報告が有効となります。[1]

バグに迅速かつ効果的に対処するためのベスト プラクティス

  1. Visual Studio Developer Community や Web で、問題に直接対処できる可能性がある既存のバグ レポートや使用状況についての提案がないか検索します。[2][3]

  2. 問題を可能な限り明確かつ簡潔に説明します。説明には、実際に発生した問題と、発生すると予想されていた問題についての説明も含めます。

  3. 関連するスタック トレース、エラー メッセージ テキスト、またはクラッシュ ログを追加します ([問題を報告する] 機能を使用すると、これらを自動的に追加することができます)。 [4]

  4. スクリーンショットの添付ファイルにプレーン テキスト形式で表示される重要なエラー メッセージを書き留めておきます。

  5. 可能な限り少ないコードでバグを再現する、自己完結型の小さなテスト ケースを追加します。 (組み込みテンプレートのいずれかを使用して作成された) 新しいプロジェクトの問題を再現できない場合は、問題を示すプロジェクトを圧縮し、バグ レポートに添付してください。 サンプル プロジェクトは、できるだけシンプルにしてから添付します。[5][6]

  6. バグが発生した環境 (Xamarin のオペレーティング システムとバージョン、依存関係など) について説明します。

追加情報

  1. ^「明らかな兆候」の説明には、他のユーザーが同じ問題 (同じエラー メッセージ、同じパフォーマンス低下、クラッシュからの同じスタック トレースなど) が表示されているかどうかを確認できるように、十分な詳細情報を含めておくのが理想的です。 「正確な状況」について説明する1つの良い例として、「通常は全時間の75%で問題に直面しますが、これを 1 つ変えるだけで問題を完全に回避することができます」と言うことができます。「正確な状況」についての別の例として、「以前のバージョンの Xamarin にダウングレードすると問題は起こりません」と言うこともできます。

  2. ^ご想像どおり、通常は、エラー テキスト (またはその他の一意の説明テキスト) のスニペットが最適な検索用語となります。 既存のバグレポートが不完全な場合は、詳細を追加したり、新しく改善されたバグ レポートを提出したりできます。

  3. ^Java、Objective-C、Swift アプリでも同じ問題が報告されているのではないかと疑問を持つのも良いことです。 この場合、問題は Xamarin ではなく、Android または iOS 自体にある可能性が非常に高くなります。

  4. ^追加する情報の例を一部次に示します。

    1. プロジェクトのビルド時に発生するエラーについては、バグ レポートに完全な 診断ビルドの出力を含めてください。

    2. Visual Studio から iOS プロジェクトをビルドまたはデバッグするときに発生するエラーについては、エラーが発生した後に [ヘルプ] > [Xamarin]> [Zipログ] を実行し、結果の.zip ファイルをバグ レポートに含めてください。

    3. Android または iOS アプリで例外またはクラッシュが発生している場合は、関連する Xamarin.Android アプリと Xamarin.iOS アプリのデバッグ ログを含めてください。

  5. ^特定の問題に対して可能であれば、元のソリューションから新しいソリューションに少量のファイルを追加して問題を再作成する方法があります。 Xamarin チームであれば、(再現する手順が明確に説明されていると仮定して) 大規模なテスト ケースでも問題を調査できることがよくありますが、テスト ケースが単純な方が、バグが迅速に解決される可能性が最も高くなります。

  6. ^新しいソリューションに少量のファイルを追加しても問題を再現 "できない" 場合は、完全版のアプリに対するソリューション フォルダー全体を圧縮して添付できます。 binobjComponentspackages フォルダーは削除し、ZIP ファイルのサイズを小さくしてください (通常は、IDE およびビルド プロセスで必要に応じてこれらのフォルダーの内容が復元または再作成されます)。また、結果のソリューションで元の問題が示されている場合は、コード ファイルとリソース ファイルをプロジェクトから好きなだけ削除できます。