मुझे एक परीक्षण (सिद्धांत) मिला है जो धीमा है और इसके लिए परीक्षण मामलों का एक गुच्छा है। तो मैं उन्हें एक साथ चलाने के लिए चाहता हूँ।सिद्धांत को समानांतर चलाने के लिए xUnit कैसे बनाएं?
"\packages\xunit.runner.console.2.0.0\tools\xunit.console" "\Projects\xUnitTest\xUnitTest\bin\Debug\xUnitTest.dll" -parallel all > xUnitResult.txt
और परिणाम:
xUnit.net console test runner(64-bit.NET 4.0.30319.42000)
Copyright(C) 2015 Outercurve Foundation.
Discovering: xUnitTest
Discovered: xUnitTest
Starting: xUnitTest
21:55:39.0449 - Starting 2 - Sleeping 2000
21:55:41.0627 - Finished 2 - Sleeping 2000
21:55:41.0783 - Starting 1 - Sleeping 5000
21:55:46.0892 - Finished 1 - Sleeping 5000
21:55:46.0892 - Starting 3 - Sleeping 4000
21:55:50.0989 - Finished 3 - Sleeping 4000
Finished: xUnitTest
=== TEST EXECUTION SUMMARY ===
xUnitTest Total: 3, Errors: 0, Failed: 0, Skipped: 0, Time: 11,137s
कौन सा सुंदर धारावाहिक है
[Theory]
[MyTestData]
public void MyTheory(int num, int sleep)
{
Console.WriteLine("{0:HH:mm:ss.ffff} - Starting {1} - Sleeping {2}", DateTime.Now, num, sleep);
Thread.Sleep(sleep);
Console.WriteLine("{0:HH:mm:ss.ffff} - Finished {1} - Sleeping {2}", DateTime.Now, num, sleep);
}
[AttributeUsage(AttributeTargets.Method)]
public class MyTestDataAttribute : DataAttribute
{
public override IEnumerable<object[]> GetData(MethodInfo testMethod)
{
yield return new object[2] { 1, 5000 };
yield return new object[2] { 2, 2000 };
yield return new object[2] { 3, 4000 };
}
}
कमांड लाइन परीक्षण चलाने के लिए:
मैं एक साधारण उदाहरण बना लिया है। मुझे यकीन है कि इसे समानांतर बनाना संभव है।
https://xunit.github.io/docs/running-tests-in-parallel.html –
बीटीडब्ल्यू, '[सदस्यदाटा (नाम (MyTestData))]' मेरी राय में कस्टम विशेषता बनाने से क्लीनर है। –