gpt4 book ai didi

java - 使用 ApprovalTest 验证多个图像

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:29:37 24 4
gpt4 key购买 nike

我有一个生成一些图像(1.jpg、2.jpg...)并将它们写入文件系统的方法。我想用 ApprovalTest 验证这个方法的结果。问题是 Approvals.verify(image) 将接收和批准的文件命名为测试方法的名称。所以我无法通过一次测试验证多张图像。

如何在一次测试中验证多张图片?

最佳答案

您可以使用 NamerFactory 更改附加到文件末尾的信息。为下次测试。

[TestFixture]
class Program
{
[Test]
[UseReporter(typeof(WinMergeReporter))]
public void Test1()
{
var image1 = @"firstImage.png";
var image2 = @"secondImage.png";

NamerFactory.AdditionalInformation = Path.GetFileNameWithoutExtension(image1);
ApprovalTests.Approvals.Verify(image1);

NamerFactory.AdditionalInformation = Path.GetFileNameWithoutExtension(image2);
ApprovalTests.Approvals.Verify(image2);
}
}

Approval Tests 在结束前创建了两个带有 firstImagesecondImage 的文件。为清楚起见,请参阅屏幕截图:

enter image description here

我的对象是字符串,但对于您的图像,所有对象都是一样的。您可以像以前一样调用 Approvals.Verify(image),但只需像示例中那样更改 AdditionalInformation

注意:我不太建议在一次测试中验证两个图像,因为如果一个验证失败 - 下一个验证将不会执行。并且 Approval Tests 无法连接图像并一步验证它们,至少如果您自己执行此操作。

编辑:为Java尝试使用,位于NamerFactory

public static void asMachineSpecificTest(Function0<String> environmentLabeller)
{
additionalInformation = environmentLabeller.call();
}

并提供适当的函数,它将返回您的图像的名称

关于java - 使用 ApprovalTest 验证多个图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14155409/

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