2016-10-05 73 views
5

Tôi muốn học fsharp. Vì vậy, tôi nhìn vào exercism.ioLàm thế nào để chạy thử nghiệm fsharp trên Mac từ thiết bị đầu cuối?

Trong readme của họ, họ hướng dẫn sử dụng Xamarin Studio cho chạy thử nghiệm http://exercism.io/languages/fsharp/tests

Nhưng tôi muốn chỉ cần chạy các bài kiểm tra từ nhà ga. Các bài tập từ tập thể dục chỉ bao gồm một tệp F #, ví dụ: HelloWorldTest.fs.

Câu trả lời này Running tests on Mac OS X console using mono/nunit-console/4 hướng dẫn chạy nunit-console với tệp .csproj hoặc .dll. Nhưng những tệp này không có trong tệp tập thể dục. Vì vậy, tôi không rõ ràng phải làm gì.

Tôi đã cài đặt mono bằng homebrew. Làm cách nào để chạy thử nghiệm NUnit từ thiết bị đầu cuối trong OSX?

+0

có thể trùng lặp của [Chạy thử nghiệm trên Mac OS X giao diện điều khiển sử dụng mono/nunit-console/4] (http://stackoverflow.com/questions/33828340/running-tests- on-mac-os-x-console-sử dụng-đơn-nunit-console-4) –

+1

Thật không may là câu trả lời có vẻ là thiếu các bước hoặc không áp dụng cho trường hợp cụ thể này. – Sebastian

Trả lời

0

tôi đã tìm ra cách để làm điều này:

1. cài đặt DotNet như mô tả https://www.microsoft.com/net/core#macos

2. Trong thư mục của tập thể dục chạy

dotnet new --lang f# 

3. Đổi tên Program.fs thành tên của bài tập ví dụ HelloWorld.fs

4. Thay đổi project.json để

{ 
    "version": "1.0.0-*", 
    "buildOptions": { 
    "debugType": "portable", 
    "emitEntryPoint": true, 
    "compilerName": "fsc", 
    "compile": { 
     "includeFiles": [ 
     "HelloWorld.fs", 
     "HelloWorldTest.fs" 
     ] 
    } 
    }, 
    "dependencies": { 
    "NUnit": "3.4.1", 
    "dotnet-test-nunit": "3.4.0-beta-2" 
    }, 
    "tools": { 
    "dotnet-compile-fsc": "1.0.0-preview2-*" 
    }, 
    "frameworks": { 
    "netcoreapp1.0": { 
     "imports": "portable-net45+win8", 
     "dependencies": { 
     "Microsoft.NETCore.App": { 
      "type": "platform", 
      "version": "1.0.1" 
     }, 
     "Microsoft.FSharp.Core.netcore": "1.0.0-alpha-160629" 
     } 
    } 
    }, 
    "testRunner": "nunit" 
} 

này bao gồm các nunit phụ thuộc.

Lưu ý includeFiles, điều này nên bao gồm tệp mã nguồn cho bài tập và tệp thử nghiệm. ví dụ. HelloWorld.fsHelloWorldTest.fs

5. Cài đặt đòi hỏi gói bằng cách làm

dotnet restore 

6. Thêm mã của bạn để các tập tin nguồn đổi tên trước đây ví dụ HelloWorld.fs

7. Finallly, chạy thử nghiệm bằng cách làm

dotnet test 
0

Bạn có thể phải sử dụng xbuild trên dòng lệnh để biên dịch tệp fsproj sau đó dll kết quả có thể được thực hiện với nunit trên dòng lệnh.

Nếu bạn không có fsproj, bạn có thể sử dụng fsharpc trên tệp trực tiếp, sau đó gọi nunit, nhớ sử dụng mono để thực thi nunit.

fsharpc HelloWorldTest.fs

mono nunit-console.exe HelloWorldTest.exe

Xin lỗi tôi không ở một vị trí để kiểm tra điều này, nhưng nên có một cái gì đó như thế này.

Các vấn đề liên quan