I'm using Fitnesse with FitSharp to run integration tests. I'm using the RowFixture to test a table of numerical results and need to be able to test an approximate value to about 3 decimal places. How can I achieve this? I read somewhere about using ~= but this does not appear to work on tables
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
Yes, the Slim Test System in FitNesse offers an approximately equals operator (~=
) as you point out but I agree that it is not available in fitSharp. Two possibilities to consider:
First (though I have not had occasion to use them) fitSharp offers a variety of cell operators--see, in particular, Compare Foating Point on that list.
Second, one technique I have used is this:
That is, my Math fixture lets you specify a precision (defaulting to two places if unspecified). The code-behind for that is quite simple:
private double DoCalculation()
{
. . .
return Math.Round(_result, Precision);
}
回答2:
Does the ~= operator do what you need? It's pretty easy to add to fitSharp.