Page MenuHomePhabricator

Add support for xUnit.NET 2 and improve build / test performance

Authored by hach-que on Feb 5 2015, 6:06 AM.
Referenced Files
Unknown Object (File)
Tue, Aug 2, 11:21 PM
Unknown Object (File)
Mon, Jul 18, 2:14 PM
Unknown Object (File)
Thu, Jul 14, 1:53 AM
Unknown Object (File)
Jun 25 2022, 8:39 AM
Unknown Object (File)
Jun 23 2022, 5:12 PM
Unknown Object (File)
Jun 15 2022, 8:04 AM
Unknown Object (File)
May 25 2022, 12:26 PM
Unknown Object (File)
May 25 2022, 12:26 PM


Group Reviewers
Blessed Reviewers

This adds support for xUnit.NET 2 and improves the performance of building and testing. Building is improved by getting MSBuild to build everything in parallel, rather than invoking MSBuild for each project, and testing is improved because xUnit.NET 2 supports testing multiple assemblies in parallel. This means that the Arcanist unit test runner only needs to exec two processes for the whole operation, instead of two processes per assembly.

This also depends on D11688 landing in libphutil first.

Test Plan

Ran it against a code base using xUnit.NET 2.

Diff Detail

rARC Arcanist
Lint Skipped
Test Failures
Build Status
Buildable 4345
Build 4358: [Placeholder Plan] Wait for 30 Seconds

Unit TestsFailed

196 msArcanistLibraryTestCase::testLibraryMap
27 msPhpunitTestEngineTestCase::testSearchLocations
40 msArcanistLibraryTestCase::testEverythingImplemented
47 msArcanistLibraryTestCase::testMethodVisibility
0 msPhutilUnitTestEngineTestCase::testFailSkip
View Full Test Results (2 Failed · 6 Passed)

Event Timeline

hach-que retitled this revision from to Add support for xUnit.NET 2 and improve build / test performance.
hach-que updated this object.
hach-que edited the test plan for this revision. (Show Details)
hach-que added a reviewer: epriestley.
hach-que edited edge metadata.
  • Remove "Discovered" test notifications
epriestley edited edge metadata.

New test engines should wait for T5568.

This revision now requires changes to proceed.Aug 8 2015, 6:40 PM