是否可以将两个图像与不需要比较的区域的掩码进行比较。
我设法让它使用基本文件比较
[UseReporter(typeof(BeyondCompareReporter))]
public void ThenThePageShouldMatchTheApprovedVersion()
{
SaveScreenshot("page1");
Approvals.VerifyFile(@"C:\page1.png");
}
但是我想创建一个我希望改变的区域面具。这是可以使用ApprovalTests还是我需要修改屏幕截图并手动应用掩码,然后再与批准的文件进行比较。或者是否可以编写自己的验证器?
答案 0 :(得分:0)
无法屏蔽该区域,因此比较器不会比较它们。
然而,实际掩盖该区域非常容易(即,在调用Verify之前在该区域上放置黑色方块)
或者,你通常可以模拟出正在改变的变量。
有关比较者的详情: ApprovalsFileComparer是一个非常愚蠢的比较器。它对文件格式一无所知,也不知道图像是什么。它只是比较字节到字节。这种简单性使它可以在任何地方工作,但却消除了对内容进行智能化的能力。这通常不是问题,因为记者非常聪明。能够渲染和比较,并做减色差异等。
快乐测试!