繁体   English   中英

在 dbfit 中运行 .Net 和 SQL 测试时出错

[英]Error running .Net and SQL tests in dbfit

我有一个简单的 C# Column 夹具类,它独立测试得很好。 我有一个 sql server 表,它再次独立测试得很好。 如果我同时测试两者,首先测试 SQL 表,那么一切都还可以。 但是,如果我先测试 C#,则 SQL 测试失败“在程序集中找不到类型‘连接’”

所以这工作正常......

!define COMMAND_PATTERN {%m -r fitnesse.fitserver.FitServer %p}
!define TEST_RUNNER {fitsharp\Runner.exe}
!define PATH_SEPARATOR {;}

!path fitsharp/fit.dll
!path fitsharp/dbfit.sqlserver.dll

!|dbfit.SqlServerTest|
!|Connect|Data Source=localhost;integrated security=SSPI;Initial     Catalog=Test2|
!|Query| select Colour from dbo.Colour|
|Colour|
|yellow-orange|

!path Fixtures.dll

!|Fixtures.SampleDo|
|firstPart|secondPart|together?|totalLength?|
|Hello|World|Hello, World|10|
|Houston|We Have a Problem|Houston, We Have a Problem|24|

...但是这通过简单地移动 Fixtures.dll 测试而失败......

!define COMMAND_PATTERN {%m -r fitnesse.fitserver.FitServer %p}
!define TEST_RUNNER {fitsharp\Runner.exe}
!define PATH_SEPARATOR {;}

!path Fixtures.dll

!|Fixtures.SampleDo|
|firstPart|secondPart|together?|totalLength?|
|Hello|World|Hello, World|10|
|Houston|We Have a Problem|Houston, We Have a Problem|24|

!path fitsharp/fit.dll
!path fitsharp/dbfit.sqlserver.dll

!|dbfit.SqlServerTest|
!|Connect|Data Source=localhost;integrated security=SSPI;Initial     Catalog=Test2|
!|Query| select Colour from dbo.Colour|
|Colour|
|yellow-orange|

更新:下面描述的原始解决方案不适用于 DbFit。 这是一个解决方法:

在您的SampleDo ,您可以包含以下内容,让SqlServerTest处理测试中的其余表:

public override bool IsVisible { get { return false; } }

原答案:

使用 DbFit 时,表

!|dbfit.SqlServerTest|

通常是测试中的第一个表,因此它成为“被测系统”和随后的表,如

!|Connect|Data Source=localhost;integrated security=SSPI;Initial     Catalog=Test2|

被解释为要在SqlServerTest上执行的方法。

如果它不是第一个表,则其他内容将是“被测系统”,在您的情况下, SampleDo和 FitNesse 将在SampleDo上查找方法Connect 要在测试过程中使SqlServerTest成为“被测系统”,请使用 with 关键字:

!|with|new|dbfit.SqlServerTest|

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM