Bri*_*nan 6 c++ testing fitnesse
我正在尝试使用Fitnesse与一些C++代码进行交互,但fitnesse.org网站上提供的Fit Cpp项目文件不起作用(它是VC++ 6,我没有,但我有Visual Studio 2005和2008) ).我甚至无法在VS2005或VS2008中打开解决方案文件(可能是因为它是在VC++ 6中创建的?).
有没有人能够使这个工作?有没有办法在C#中编写一个与C++代码通信的测试夹具?如果是这样,我该怎么做呢.
这是带有代码的网站:http: //fitnesse.org/FrontPage.FitServers.CppFit.CppTestTools.SetUpCppTestTools
理想情况下,我希望能够在Visual Studio中处理此问题并避免使用cygwin.我应该咬紧牙关和cygwin一起去......不确定它是否会起作用......没试过.
任何帮助都感激不尽.提前致谢.
使用 C++/CLI 是一种选择。这样您就可以使用 fitSharp 作为从 FitNesse 到您的装置代码的桥梁,但您的装置代码可以直接调用 C++。
这是测试 Calculator 类的简单示例。首先,这是我们要测试的 C++ 代码:
class Calculator
{
public:
int Add(int x, int y)
{
return x + y;
}
};
Run Code Online (Sandbox Code Playgroud)
这是 C++/CLI 夹具代码:
public ref class CalculatorFixture
{
public:
property int X;
property int Y;
property int Z;
void Execute()
{
Calculator calculator;
Z = calculator.Add(X,Y);
}
};
Run Code Online (Sandbox Code Playgroud)
FitNesse 维基页面如下所示:
!define TEST_SYSTEM {slim}
!define COMMAND_PATTERN {%m -r fitSharp.Slim.Service.Runner,C:\fitnesse\fitsharp\fitsharp.dll %p}
!define TEST_RUNNER {C:\fitnesse\fitsharp\Runner.exe}
!path c:\CalculatorFixture.dll
!|CalculatorFixture|
|X |Y |Z? |
|2 |2 |4 |
|3 |4 |7 |
Run Code Online (Sandbox Code Playgroud)
需要注意的一个问题是,C++/CLI DLL 通常是 32 位或 64 位,而 fitSharp 运行程序是“任何 cpu”。因此,如果您将 C++/CLI DLL 构建为 32 位并尝试在 64 位操作系统上使用 fitSharp,您将收到“格式不正确”错误。在这种情况下,要么将 C++/CLI DLL 构建为 64 位,要么使用 corflags 强制 Fitsharp 运行程序 (Runner.exe) 为 32 位。
| 归档时间: |
|
| 查看次数: |
1807 次 |
| 最近记录: |