Я попробовал немного другой подход, потому что основная проблема заключается в том, что имена каналов являются проблемой. Поэтому я сделал поддельный пайп, выведенный из того, который я использую в программе. И назвал трубу с именем испытаний.
[TestClass]
public class PipeCommunicationContractTests {
private PipeDummy pipe;
/// <summary>
///Gets or sets the test context which provides
///information about and functionality for the current test run.
///</summary>
public TestContext TestContext { get; set; }
[TestInitialize]
public void TestInitialize() {
pipe = new PipeDummy(TestContext.TestName);
pipe.Start();
}
[TestCleanup]
public void TestCleanup() {
{
pipe.Stop();
pipe = null;
}
...
[TestMethod]
public void CallXxOnPipeExpectResult(){
var result = pipe.Xx();
Assert.AreEqual("Result",result);
}
}
Это выглядит немного быстрее, так как мы можем работать на нескольких ядрах и потоках ...