Найти 10 отличий: инструменты, которые помогут сравнить картинки, файлы и документы

Дмитрий Придатко

Все мы помним детскую игру «Найди 10 отличий», в которой необходимо было на очень похожих картинках заметить разницу. В работе тестировщика также нередко приходится сравнивать данные, представленные в самом разнообразном виде: текстовом, числовом, бинарном, графическом.

Даже если данных не много, мы можем допускать ошибки при проверке и сравнении.

Например, человек может без труда прочесть тескт, в котором в словах переставлены буквы, зачастую не отметив разницы.

При этом важно, чтобы первая и последняя буквы были на своих местах, а в буквы, расположенные в середине слова, при беглом чтении человек не вчитывается, просто отгадывая слово (см. более подробно в статье на Хабре «О том, как мы ворпсиманием теcкт»):

По рзелульаттам илссеовадний одонго анлигйсокго унвиертисета, не иеемт занчнеия, в кокам пряокде рсапожолены бкувы в солве. Галвоне, чотбы преавя и пслоендяя бквуы блыи на мсете. Осатьлыне бкувы мгоут селдовтаь в плоонм бсепордяке, все-рвано ткест чтаитсея без побрелм. Пичрионй эгото ялвятеся то, что мы чиатем не кдаужю бкуву по отдльенотси, а все солво цликеом.

Похожий эксперимент проводили и с изображениями, когда людям быстро показывали игральные карты, в которых часть были обычными, а для некоторых были перепутаны цвета (красные пики, черные червы) и просили назвать, что это за карта. Не все замечали разницу. Только когда явно говорили обратить внимание на цвет или давали больше времени, чтобы рассмотреть карту, испытуемые понимали, что тут что-то не так. Некоторые затем говорили, что так запутались, что уже и не знают, какой цвет масти правильный.

Хочу поделиться некоторыми практическими советами, как сделать сравнение и анализ данных более эффективными.

Как сравнить папки и файлы

Чтобы сравнить содержимое папок или выполнить синхронизацию, можно использовать Unreal Commander — бесплатный двухпанельный файловый менеджер для Windows. 

Для сравнения двух папок в Unreal Commander нужно выбрать в меню: Commands > Synchronize dirs.

Сравнение папок в Unreal Commander

Также, кроме сравнения папок, в Unreal Commander есть возможность сравнения файлов по содержимому. Доступны два варианта: сравнение файлов как текста и сравнение файлов как бинарных данных.

Для сравнения двух файлов по содержимому в Unreal Commander нужно выделить два файла, а затем в меню выбрать: File > Compare by content.

Сравнение файлов как текста в Unreal Commander

Если отметить опцию Binary, то файлы будут сравниваться как двоичные данные.

Сравнение бинарных файлов в Unreal Commander

Как сравнить документы

Бесплатное приложение Notepad++ знакомо многим. Это удобная замена стандартного блокнота Windows. Оно позволяет работать с большими файлами, подсвечивает синтаксис различных языков, есть возможность форматировать разметки XML / JSON / JavaScript, сортировать строки.

Базовые возможности приложения легко расширяются за счет подключения плагинов. Один из них — Compare-plugin, позволяющий сравнивать текстовые файлы. Дополнительный бонус — подсветка синтаксиса при этом сохраняется:

Сравнение двух XML-файлов в Notepad++ с помощью плагина Compare

Когда документы представлены не как текстовые файлы, а как документы MS Word, то сравнение текста и сравнение двоичных данных не позволит увидеть различия.

Обычно для отслеживания изменений в документах Word служит режим рецензирования, когда все изменения, выполненные в тексте разными авторами, выделяются. Но если у вас есть два варианта документа, в которых не был включен режим рецензирования, и вы хотите увидеть, в чем между ними разница, можно выбрать Review > Compare > Compare и получить документ с выделенными различиями.

Сравнение документов в MS Word

Как сравнить списки

MS Excel придет на помощь, если нужно сравнить два списка, имеющие какой-то уникальный идентификатор. Для этого необходимо одновременно в двух списках выделить столбец с идентификатором и затем выбрать Home > Conditional Formatting > Duplicate Values.

Если данных много, можно каждый из списков оформить как таблицу (выделить диапазон данных и нажать Ctrl + L) и тогда в автофильтре заголовка таблицы будет доступна фильтрация по цвету.

Сравнение списков в MS Excel

Как сравнить изображения

С помощью сервиса Resemble.js можно легко сравнить два изображения. При этом на сгенерированной картинке будет видно отличие, выделенное цветом. Если вам необходимо обрабатывать массивы изображений и вы знакомы с программированием на JavaScript и HTML5, или с Node.js, то можете написать небольшое приложение для обработки и генерации изображений, содержащих отчеты о различиях, используя библиотеку Resemble.js.


Сравнение изображений с помощью сервиса Resemble.js

Еще один интересный инструмент для сравнения изображений — набор библиотек ImageMagick. Это набор утилит, работающих из командной строки, которые позволяют выполнять манипуляции с изображениями. В состав ImageMagick также входит библиотека Compare, которая помогает сравнить изображения с генерацией разницы как Resemble.js.

Вывод

Использование специальных инструментов повышает точность результатов и снижает вероятность ошибок. Если вы сравниваете большой объем данных, использование инструментов — единственный способ выполнить работу эффективно, качественно и в кратчайшие сроки. 

If you have found a spelling error, please, notify us by selecting that text and pressing Ctrl+Enter.

Останні статті

Токсичные коллеги. Как не стать одним из них и прекратить ныть

В благословенные офисные времена, когда не было большой войны и коронавируса, люди гораздо больше общались…

07.12.2023

Делать что-то впервые всегда очень трудно. Две истории о начале карьеры PM

Вот две истории из собственного опыта, с тех пор, когда только начинал делать свою карьеру…

04.12.2023

«Тыжпрограммист». Как люди не из ІТ-отрасли обесценивают профессию

«Ты же программист». За свою жизнь я много раз слышал эту фразу. От всех. Кто…

15.11.2023

Почему чат GitHub Copilot лучше для разработчиков, чем ChatGPT

Отличные новости! Если вы пропустили, GitHub Copilot — это уже не отдельный продукт, а набор…

13.11.2023

Как мы используем ИИ и Low-Code технологии для разработки IT-продукта

Несколько месяцев назад мы с командой Promodo (агентство инвестировало в продукт более $100 000) запустили…

07.11.2023

Университет или курсы. Что лучше для получения IT-образования

Пару дней назад прочитал сообщение о том, что хорошие курсы могут стать альтернативой классическому образованию.…

19.10.2023