gpt4 book ai didi

c# - 从夹具中杀死 FitNesse

转载 作者:搜寻专家 更新时间:2023-10-30 20:27:40 24 4
gpt4 key购买 nike

我正在使用 FitNesse 对用 C# 编写的 Fixtures 进行一些测试。我的一个固定装置启动了一些测试套件,以便在 Unix 环境中的 Ab Initio 中运行。如果其中的一个测试失败,我希望能够终止整个测试套件。我想我需要某种来自测试套件(在 unix 机器上)的返回值,然后返回到我的 fixture,这将杀死 FitNesse(从我的 C# fixture 中)。这就是我的 KickOff() 方法现在的样子:

public string KickOff()
{
var data = new Dictionary<string, string>();
foreach (var row in System.IO.File.ReadAllLines(unixConfigFile))
data.Add(row.Split('=')[0], String.Join("=", row.Split('=').Skip(1).ToArray()));

string server = data["servername"];
string userId = data["username"];
string password = data["password"];

StringEncryptor3DES encryptor = new StringEncryptor3DES("fitnesse");
password = encryptor.Decrypt(password);

UnixScriptRunner runner = new UnixScriptRunner(server, userId, password, unixPath, scriptName,EtlType.AbInitio);


return runner.Run() & EtlStatus.IsEtlSuccessful(runner.LogFile,EtlType.AbInitio) ? "True":"False";
}

我想我需要一些东西来捕获 EtlStatus.IsEtlSuccessful() 的值,如果它为假,它将终止 FitNesse。我的两个问题是:

这个推理正确吗?

终止/终止 FitNesse(或者如果有更优雅的方式则结束测试套件)所需的代码是什么?

编辑:我做了更多的研究,看起来它是我必须杀死的“运行者”。仍然不确定如何执行此操作...

最佳答案

如果你正在使用 Slim,你可以抛出一个在类名中带有“StopTest”的异常来停止测试。

http://www.fitnesse.org/FitNesse.UserGuide.WritingAcceptanceTests.SliM.ExceptionHandling

如果您使用的是 Fit,则可以抛出 AbandonStoryTestExecption 来停止测试。

http://fitsharp.github.io/Fit/AbandonStoryTest.html

下一个版本(现在任何一天!)都​​会有一个新的 Fit 功能,可以抛出 AbandonTestSuiteException 来停止整个测试套件。 Slim AFAIK 没有可比的功能。

关于c# - 从夹具中杀死 FitNesse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23549780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com