To build and run tests in Visual Studio on local machine:
.\lang\cs\Org.Apache.REEF.sln
-Trait:Environment
to filter out tests which are supposed to run on Yarn. If not filtered out, these tests will fail.To build REEF.NET from command line, execute
msbuild .\lang\cs\Org.Apache.REEF.sln
To run .NET tests on local machine from command line, execute
msbuild .\lang\cs\TestRunner.proj
TestRunner.proj
already has a filter set up to exclude Yarn tests.
We use AppVeyor to run continuous integration for REEF .NET code (i.e. build code and run tests for all pull requests and commits to master branch).
It can be convenient to set up AppVeyor for your fork of REEF repository, for example, to reproduce a test failure which can't be reproduced locally or to get AppVeyor test run results earlier than the official ones.
reef
repository.To isolate a specific test or group of tests, you can modify test_script
section of appveyor.yml
. For example, to run only one test Org.Apache.REEF.Tests.Functional.IMRU.IMRUCloseTaskTest.TestTaskCloseOnLocalRuntime
modify test_script
section as follows:
test_script: - cmd: cd .\lang\cs - cmd: .\.nuget\nuget.exe restore .\.nuget\packages.config -o .\packages - cmd: .\packages\xunit.runner.console.2.1.0\tools\xunit.console.exe .\bin\x64\Debug\Org.Apache.REEF.Tests\Org.Apache.REEF.Tests.dll -method Org.Apache.REEF.Tests.Functional.IMRU.IMRUCloseTaskTest.TestTaskCloseOnLocalRuntime
nuget restore
is necessary to install xunit.runner.console
package, which by default is installed in TestRunner.proj
.
Here is a step-by-step guide, if the instructions above didn't work and/or you prefer to build REEF .NET from Windows Command Prompt/PowerShell.
Install Java Development Kit 7 or 8. Set JAVA_HOME
as an Environment Variable
JAVA_HOME
and set the value to be your jdk installation dir, like C:\Program Files\Java\jdk1.8.0_91Path
by adding %JAVA_HOME%\bin
Install Maven 3.3.9. Set M2_HOME
and M2
as Environment Variables
M2_HOME
and set the value to be your unzip location, like C:\Program Files\Apache\apache-maven-3.3.9M2
and set the value to be %M2_HOME%\bin
Path
by adding %M2%
and %M2_HOME%
Install Protocol Buffer 2.5. Add its path as an Environment Variable
Path
by adding the unzip location, like C:\protobuf-2.5.0\src\protoc-2.5.0-win32Git clone the repo to your local machine: git clone git@github.com:apache/reef.git
To build REEF.NET from command line, execute: msbuild .\lang\cs\Org.Apache.REEF.sln