c# - Visual Studio 2013 : Testing/Assert Strings

标签 c# string testing visual-studio-2013

我有一个问题。我正在测试我的一个库,它生成一些 xml 样式的文本。到目前为止,我正在测试该功能

 Assert.AreEqual(string1, string2);

但是xml样式的字符串长度超过300个字符。当我在一个字符上犯了一点错误时,测试失败并且输出是字符串不相等。但是测试没有说,在哪个位置他们不相等。

所以我的问题是:是否已经有一个实现的函数,它比较两个字符串并告诉我它们在哪个位置不同 + 字符串的输出......?

最佳答案

试试这个

var indexBroke = 0;
var maxLength = Math.Min(string1.Length, string2.Length);
while (indexBroke < maxLength && string1[indexBroke] == string2[indexBroke]) {
   indexBroke++;
}
return ++indexBroke;

逻辑是你一步一步比较每个字符,当你得到第一个差异时,函数退出返回最后一个具有相同字符的索引

关于c# - Visual Studio 2013 : Testing/Assert Strings,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27190921/

相关文章:

testing - 如何在 Coded UI 中阅读文本?

python - 从字符串列表中指定索引处删除不需要的子字符串

python - 将字符串拆分为单词和标点符号

java - 如何为字符串分配内存?

java - mvn测试非常非常慢

c# - 如何查找正确的 Windows 系统错误代码以在我的应用程序中使用?

c# - 如何从 C# 返回集合对象并在 C++ 中访问它们?

c# - 从 Windows 窗体中删除标题栏(Windows 10 样式)

c# - 图像 split 成 9 block

ruby-on-rails - 在 RSpec 中检查 ActiveRecord 关联