尽管您可以使用某些格式化程序将任何文本文件或长文字转换并嵌入为Java字符串(例如,使用换行符,必要的转义符等),但我真的无法想到经常需要使用这些功能的情况。
软件的趋势通常是将代码与 *** 作数据分开。大文本部分,即使仅用于显示或比较,也是数据,因此通常存储在外部。读取文件(甚至将结果缓存在内存中)的成本相当低。国际化更容易。改变更容易。版本控制更容易。其他工具(例如拼写检查器)也可以轻松使用。
我同意,在单元测试中,您想将内容与模拟进行比较,则需要进行大规模文本比较。但是,当您处理如此大的文件时,通常会具有可以在多个不同的大型输入上工作以产生多个大型输出的测试,那么为什么不让测试仅加载适当的文件而不是内联呢?
XML也是如此。实际上,对于XML,我认为在很多情况下,您都希望读取XML并构建一个DOM树,然后将其进行比较,而不是进行可能受到空格影响的文本比较。在单元测试中手动创建XML树是很丑陋的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)