3

Visual Studio DOM と対話し、読み込まれたソリューションを修正する Visual Studio アドインを開発しました。
DOM と対話し、単体テストを介して他のビジネス ロジックを単体テストできるコードを分離するために努力しましたが、VS DOM 対話機能とカスタム メニュー項目を追加するアドイン初期化コードを単体テストする方法はありますか?ヴィジュアルスタジオ?

4

1 に答える 1

1

これは、これに答える方法になるかもしれません... DTE VSインスタンスを作成するためのコードサンプルがあります。これを単体テストで使用して、VSと対話するクラスに挿入し、できれば DTE オブジェクトを分析して、テストの成功基準を確認してください。テストで試してみることはできませんでしたが、有望に見えます。

        DTE2 dte = null;
        try
        {
            Type type = System.Type.GetTypeFromProgID("VisualStudio.DTE.10.0");
            object inst = System.Activator.CreateInstance(type, true);
            dte = (EnvDTE80.DTE2)inst;

            dte.Solution.Open(@"C:\Demo.sln");

            // Inject into class under test

            // Perform the test

            // Analyse the DTE to test for success.

        }
        finally
        {
            if (dte != null)
            {
                dte.Quit();
            }
于 2011-03-31T08:41:50.237 に答える