.NET 帮助

测试控制台应用程序C#(开发者如何使用)

发布 2024年一月14日
分享:

测试在软件开发领域起着举足轻重的作用,是保证应用程序质量的关键因素。在众多可用的框架中,.NET 脱颖而出,成为制作基于 Windows 的应用程序的广泛选择。本文将深入探讨 .NET TestConsole 的复杂性,这是一款专门用于测试 .NET 应用程序的工具。

在整个探索过程中,我们将编写一个全面的代码示例,说明 .NET TestConsole 的实际实现。此外,我们还将介绍与 .NET TestConsole 无缝集成的 C# PDF 库 IronPDF。事实证明,这个库非常有价值,它能让开发人员毫不费力地在 .NET TestConsole 中访问和生成 PDF。 测试控制台环境.加入我们的旅程,了解 .NET TestConsole 和 .NET TestConsole 的协同作用所带来的功能和可能性。 IronPDF.

1.简介:测试控制台

TestConsole 是一个多功能测试库,在 C# 编程语言中引入了一种独特的单元测试方法。传统的单元测试方法在处理大型数据集和复杂断言时往往面临挑战,导致难以识别预期结果和实际结果之间的差异。为此,Test Console 提供了一种新颖的工作流程,从传统的基于预测的方法转变为将格式化输出与指定的 "认可 "标准输出版本进行并排比较。

在这个库中,特别是在 TestConsole 中,".Core "变体扩展了从原始 TestConsole 项目中继承的格式化功能,并在测试结果与预期不符的情况下加入了重要的测试批准功能。TestConsole.Core 与构建服务器无缝集成,可触发测试失败。在开发 PC 上,默认情况下,它提供了重新配置功能,可利用已安装的文件比较工具来显示差异。值得注意的是,这种方法简化了审批流程,允许开发人员在出现预期差异时手动更新已批准的版本。

1.1.为什么使用 TestConsole?

TestConsole.Core 从 ApprovalTests 中汲取灵感,但又与众不同,它同时支持编写完整框架和 .NET Core 测试套件。该库满足了在不同环境中进行测试的需求,与发布时的 ApprovalTests 一样,主要针对完整框架场景。TestConsole.Core 中的语法虽然与 ApprovalTests 有相似之处,但也有区别,特别是在文件比较工具选择和直接批准内容方面。

TestConsole.Core 是为促进 .NET Core 应用程序代码中的测试而开发的,它的出现是为了弥补 ApprovalTests 中缺乏 .NET 标准和 .NET Core 应用程序支持所留下的空白。TestConsole.Core 的测试批准功能专注于实现对大型数据集的有效测试,可容纳使用测试控制台输出对象格式化的数据,并扩展其功能以处理任何纯文本输入,从而为 C# 中的单元测试提供全面的解决方案。

1.2.安装 TestConsole C#

可使用 Visual Studio 中的 NuGet 包管理器表单安装测试控制台,或在 NuGet 包管理器控制台中运行以下命令。

Install-Package TestConsole -Version 2.6.0

或直接从 TestCosole NuGet 页面.

2.测试控制台代码示例

在本节中,我们将了解如何将控制台输出转换成报告。下面的源代码使用测试控制台将可枚举对象转换成格式良好的报告表

using TestConsoleLib;
var output = new Output();
var data = Enumerable.Range(0, 10)
    .Select(i => new { Value = i, Squared = i * i, String = new string('I', i) });
output.FormatTable(data);
string report = output.Report;
Console.WriteLine(report);
using TestConsoleLib;
var output = new Output();
var data = Enumerable.Range(0, 10)
    .Select(i => new { Value = i, Squared = i * i, String = new string('I', i) });
output.FormatTable(data);
string report = output.Report;
Console.WriteLine(report);
Imports TestConsoleLib
Private output = New Output()
Private data = Enumerable.Range(0, 10).Select(Function(i) New With {
	Key .Value = i,
	Key .Squared = i * i,
	Key .String = New String("I"c, i)
})
output.FormatTable(data)
Dim report As String = output.Report
Console.WriteLine(report)
VB   C#

本 C# 代码片段利用 TestConsoleLib 库演示并运行一个使用 TestConsole 的输出类格式化和报告表格数据的简单示例。首先创建一个名为 "output "的输出类实例。随后,它生成一个包含 10 个元素的集合,其中包含匿名对象,这些匿名对象的属性代表一个整数值、其平方和一个长度与整数值一致的 "I "字符串。

输出格式表() 方法将数据格式化为表格。格式化后的结果存储在 "report "字符串变量中,最后使用 Console.WriteLine 将其打印到控制台中。().这展示了 TestConsole 在单元测试或调试过程中轻松格式化和呈现表格数据以提高可读性的能力。

2.1.输出

测试控制台应用程序 C#(如何为开发人员工作):图 1 - 先前代码的输出

3.IronPDF

IronPDF 是一个功能强大的 C# 库,旨在简化和增强在 .NET 应用程序中处理 PDF 文档的过程。IronPDF 提供了一套全面的功能,使开发人员能够在其 C# 项目中毫不费力地创建、处理和提取 PDF 文件中的内容。IronPDF 注重灵活性和易用性,支持广泛的功能,包括从 HTML、图像或现有文档生成 PDF,以及合并动态内容(如图表和表格)。

其功能还包括合并、分割和操作 PDF 页面,以及提取文本和图像等功能。无论是用于报告、文档还是任何与 PDF 相关的任务,IronPDF 都是一款可靠的多功能解决方案,它能以最小的代价将 PDF 功能集成到 C# 应用程序中。

3.1.创建测试控制台报告的 PDF 文件

本节将讨论如何转换 TestConsole 报告的输出。

安装 IronPDF 库

适用于PDF的C# NuGet库

安装使用 NuGet

Install-Package IronPdf
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

适用于PDF的C# NuGet库

安装使用 NuGet

Install-Package IronPdf
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

开始在您的项目中使用IronPDF,并立即获取免费试用。

第一步:
green arrow pointer

查看 IronPDFNuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。

适用于PDF的C# NuGet库 nuget.org/packages/IronPdf/
Install-Package IronPdf

考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip

手动安装到你的项目中

下载DLL

使用 NuGet 软件包管理器安装

要使用 NuGet 包管理器将 IronPDF 集成到 Console 项目中,请按照以下步骤操作:

1.打开 Visual Studio,在解决方案资源管理器中右键单击项目。

2.从上下文菜单中选择 "管理 NuGet 包..."。

3.转到 "浏览 "选项卡并搜索 IronPDF。

4.从搜索结果中选择 IronPDF 库,然后点击安装按钮。

5.接受任何许可协议提示。

如果想通过软件包管理器控制台将 IronPDF 包含到项目中,请在软件包管理器控制台中执行以下命令:

Install-Package IronPdf

它会获取 IronPDF 并将其安装到你的项目中。

使用 NuGet 网站安装

有关 IronPDF 的详细概述,包括其功能、兼容性和其他下载选项,请访问 NuGet 网站 https://www.nuget.org/packages/IronPdf 上的 IronPDF 页面。

通过 DLL 安装

另外,您也可以使用 IronPDF 的 DLL 文件将其直接集成到您的项目中。从以下链接下载包含 DLL 的 ZIP 文件 链接.解压缩后,将 DLL 包含在您的项目中。

安装完成后,我们将重新创建上面的报告示例,但这次不是将其写入控制台,而是创建 PDF 报告。

using TestConsole.OutputFormatting;
using TestConsoleLib;
using IronPdf;
var output = new Output();
var data = Enumerable.Range(0, 10)
    .Select(i => new { Value = i, Squared = i * i, String = new string('I', i) });
output.FormatTable(data);
string report = output.Report;
var htmlContent = $"<pre>{report}</pre>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("test.pdf");
using TestConsole.OutputFormatting;
using TestConsoleLib;
using IronPdf;
var output = new Output();
var data = Enumerable.Range(0, 10)
    .Select(i => new { Value = i, Squared = i * i, String = new string('I', i) });
output.FormatTable(data);
string report = output.Report;
var htmlContent = $"<pre>{report}</pre>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("test.pdf");
Imports TestConsole.OutputFormatting
Imports TestConsoleLib
Imports IronPdf
Private output = New Output()
Private data = Enumerable.Range(0, 10).Select(Function(i) New With {
	Key .Value = i,
	Key .Squared = i * i,
	Key .String = New String("I"c, i)
})
output.FormatTable(data)
Dim report As String = output.Report
Dim htmlContent = $"<pre>{report}</pre>"
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
pdf.SaveAs("test.pdf")
VB   C#

该 C# 代码片段展示了 TestConsoleLib 和 IronPDF 的集成,以生成包含格式化数据表的 PDF 文档。首先,它从 TestConsoleLib 中创建了一个 Output 类实例,并使用从一系列整数生成的数据格式化了一个表格。格式化后的输出存储在 "report "字符串变量中,然后将其括入 HTML 预标记中以保留格式。

随后,代码利用 IronPDF 的 ChromePdfRenderer 将 HTML 内容渲染为 PDF 文档。最后,生成的 PDF 保存为 "test.pdf"。这段代码展示了格式化 TestConsoleLib 和 PDF 生成 IronPDF 的无缝结合,为在 C# 应用程序中将格式化数据纳入 PDF 文档提供了一个直接的解决方案。

3.1.1.输出

测试控制台应用程序 C#(如何为开发人员工作):图 2 - 先前代码的输出

4.结论

.NET TestConsole 是 C# 应用程序的关键测试库,它提供了一种独特的单元测试方法,可减轻与大型数据集和复杂断言相关的挑战。TestConsole.Core变体将其实用性扩展到了不同的环境中,弥补了其他框架的不足,并为并排比较格式化输出提供了高效的工作流程。

它与 IronPDFPDF 测试工具是一个强大的 C# 库,不仅有助于简化测试,还能将其功能扩展到 PDF 生成和操作。这些工具结合在一起,使开发人员能够在其 C# 项目中毫不费力地处理错综复杂的测试问题并增强文档生成能力,从而提供全面高效的解决方案。

有关 IronPDF HTML 到 PDF 转换的详细完整教程,请参见 这里.

< 前一页
RestSharp C#(开发人员的工作原理)
下一步 >
C# Writeline(如何为开发人员工作)

准备开始了吗? 版本: 2024.9 刚刚发布

免费NuGet下载 总下载量: 10,840,061 查看许可证 >