使用 Visual Studio 2019 对 BizTalk 2020 工件进行单元测试会导致 Intellisense 问题

Unit test BizTalk 2020 artefacts using Visual Studio 2019 leads to Intellisense issue

我在 Visual Studio 2019 年尝试对 BizTalk 2020 工件使用单元测试时遇到问题。

以下是我遵循的步骤:

using Testing.Pipelines;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;

namespace _Test
{
    
    /// <summary>
    ///This is a test class for Test_ppr_Testing and is intended
    ///to contain all Test_ppr_Testing Unit Tests
    ///</summary>
    [TestClass()]
    public class Test_ppr_Testing
    {

        private TestContext testContextInstance;

        /// <summary>
        ///Gets or sets the test context which provides
        ///information about and functionality for the current test run.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

        /// <summary>
        ///A test for ppr_Testing Constructor
        ///</summary>
        [TestMethod()]
        public void Test_ppr_TestingConstructor()
        {
            ppr_Testing target = new ppr_Testing();

            var lDocuments = new System.Collections.Specialized.StringCollection();
            lDocuments.Add(@"C:\MyTestDirectory\SomeFile.xml");

            var lParts = new System.Collections.Specialized.StringCollection();
            var lSchemas = new System.Collections.Generic.Dictionary<string, string>();

            try
            {
                target.TestPipeline(lDocuments, lParts, lSchemas);
                var lTmp = this.TestContext;
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.ToString());
            }
        }
    }
}

结果:

是我做错了什么,还是我的 Visual Studio 2019 安装损坏了?

我正在从 BizTalk 2010 迁移到 BizTalk 2020,有了 BizTalk 2010 和 Visual Studio 2010,事情变得更容易了:

在此先感谢您的帮助。

在构建其中包含 BizTalk 工件的 BizTalk 项目时 (btm/btp/xsd),BizTalk 将为项目中的这些文件生成 .cs 文件。生成的 .cs 文件不会自动添加到项目本身,这会导致单元测试项目中的 Intellisense 无法“看到”类型。 如果您包含 .cs 文件并重建,该问题应该会消失。 但是请注意,将生成的 cs 文件添加到项目和代码存储库中可能会由于锁定文件而在构建时引入问题。