2009-03-17 37 views
5

Tôi đang sử dụng FitNesse làm khung kiểm tra chức năng. Tôi đang gặp rắc rối khi FitNesse chạy mã cần cấu hình.Các tệp cấu hình FitNesse

Nếu tôi cần lấy chuỗi kết nối từ tệp cấu hình, tôi có thể làm cho nó hoạt động bằng cách thêm nó vào FitServer.exe.config. Tuy nhiên, tôi không thích giải pháp đó. Tôi muốn FitNesse tải tập tin cấu hình của riêng tôi, cụ thể là TheNameOfMyApp.dll.config.

Điều này có khả thi không?

Trả lời

5

Chắc chắn, dễ thực hiện. Tôi giả sử bạn đang sử dụng các dotnet hoặc dotnet2 thử nghiệm Á hậu. Tôi đang sử dụng runner thử nghiệm dotnet2 và đây là cách tôi đã thiết lập nó:

Trước tiên, khi bạn xác định COMMAND_PATTERN của bạn, bao gồm -c suite.config. Ví dụ, tôi có điều sau đây trong thư mục gốc:

!define COMMAND_PATTERN {%m -c suite.config %p} 
!define TEST_RUNNER {..\..\bin\Debug\FitServer.exe} 

suite.config đi trong cùng một thư mục như fitnesse.jar:

<suiteConfig> 
    <fit.Settings> 
     <appConfigFile>..\..\MyProjectFolder\fitnesse\MyProjectName.config</appConfigFile> 
    </fit.Settings> 
    <fit.Assemblies> 
    </fit.Assemblies> 
    <fit.FileExclusions> 
     <add>^\.svn$</add> 
    </fit.FileExclusions> 
    <fit.Namespaces> 
    </fit.Namespaces> 
    <fit.CellHandlers> 
    </fit.CellHandlers> 
    <fitlibrary.CellHandlers> 
    </fitlibrary.CellHandlers> 
</suiteConfig> 

MyProjectName.config trông như thế này:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
     <add key="keyname" value="something" /> 
    </appSettings> 

</configuration> 

Bạn có thể làm mọi thứ dễ dàng hơn cho chính mình nếu bạn sử dụng đường dẫn tuyệt đối cho appConfigFile. Tôi bắt đầu với một con đường tuyệt đối, có những thứ làm việc, sau đó chuyển sang một con đường tương đối bằng cách thử và sai.

Lưu ý rằng tôi đang chạy thử nghiệm Á hậu từ một vị trí không chuẩn, sẽ ảnh hưởng đến đường dẫn tương đối trong suite.config. Đường dẫn có liên quan đến vị trí TEST_RUNNER của bạn, KHÔNG cho suite.config hoặc fitnesse.jar.

+1

Mặc dù hoạt động này, bạn cũng có thể sử dụng tùy chọn -a (thay vì tùy chọn -c) như được lưu ý tại http://stackoverflow.com/questions/1849172/fitnesse-app-config - chỉ đơn giản hơn một chút –

0

có thể thực hiện được nhưng có rất nhiều công việc. bạn cần phải xác định một dự án thử nghiệm nơi bạn có các bài kiểm tra của mình trong đó và một "trình bao bọc" - nơi bạn có chức năng cung cấp các bài kiểm tra với các cài đặt dữ liệu và cấu hình.

+0

Bạn có liên kết đến giải pháp hoặc hướng dẫn ví dụ không? – grootjans

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