我最近与模块化结构工程由主组件的(我们将其命名为app
)和多data-provider
的。每个提供程序位于单独的存储库中,并实现一些基本接口,如IDataProvider
。任何人都可以实施自己的提供者我为app
存储库中的主要功能编写了测试套件(NUnit 3.5)。它应该与每个data-provider
一起运行。这个测试套件确保正确的提供者实施运行外部测试套件组装NUnit的测试,在Visual Studio测试运行
因此我需要从特定data-provider
组件运行外部测试。当然有环境变量,runner参数等,但我不知道如何使Visual Studio Test Runner显示并从UI执行这些测试。
Git Submodules或Git Subtrees可以帮助维护从单独的data-provider
回购协议的主要app
存储库的链接。然而这种方法有一些额外的警告。
很明显,我不是要面对这样的问题的第一人。请分享你的经验。
编辑:
我会尽力澄清问题。以下是驻留在“main-app”存储库中的“应用程序”的代码。
// repository "main-app"
namespace MainApp
{
public interface IDataProvider
{
string Concat(params string[] arg);
}
}
namespace MainApp.Tests
{
[TestFixture]
public class SampleTests
{
[Test]
public void GetDataTest(IDataProvider provider)
{
Assert.AreEqual("ab", provider.Concat("a", "b"));
}
}
}
这里是提供者实现(驻留在独立的存储设备)
// repository "simple-provider"
namespace MainApp.SimpleProvider
{
public class SimpleProvider : IDataProvider
{
public string Concat(params string[] arg)
{
return string.Concat(arg);
}
}
}
SimpleProvider项目conatins到编译MainApp.dll
和MainApp.Tests.dll
引用。我需要使用Visual Studio Test Runner在SimpleProvider项目中运行MainApp.Tests.dll
中的测试。
请出示必要的屏幕截图来说明。单词简单干燥。 –