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)
Sat, Jun 25, 8:39 AM
Unknown Object (File)
Thu, Jun 23, 5:12 PM
Unknown Object (File)
Wed, Jun 15, 8:04 AM
Unknown Object (File)
May 25 2022, 12:26 PM
Unknown Object (File)
May 25 2022, 12:26 PM
Unknown Object (File)
Apr 14 2017, 3:13 AM
Unknown Object (File)
Apr 6 2017, 2:39 AM
Unknown Object (File)
Mar 16 2017, 7:37 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 4346
Build 4359: [Placeholder Plan] Wait for 30 Seconds

Unit TestsFailed

198 msArcanistLibraryTestCase::testLibraryMap
29 msPhpunitTestEngineTestCase::testSearchLocations
41 msArcanistLibraryTestCase::testEverythingImplemented
50 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