Selenium java. Comparing two given strings with returning exact place where the error is happened
Не могу додумать, как написать тест, чтобы выводило не просто "true/false", а чтоб показывало конкретное несоответсвие в тексте. Соответсвенно, просто equals не работает.
Ответы (1 шт):
Идёшь в цикле, берёшь символ из первого текста и из второго. Если совпадают - идёшь дальше, если отличаются - помечаешь(например, сохраняя в список позицию отличия). Если одна строка закончилась раньше другой - помечай всю оставшуюся строку.
Если текст большой, и нужна оптимизация - храни не конкретные позиции отличающихся символов, а диапазон. Например:
1.) "Шла Саша по шоссе и сосала сушку"
2.) "Шла Саша по мосту и сосала сушку"
В неоптимизированном варианте у тебя в списке окажется: [12, 13, 14, 15, 16]
В оптимизированном: ["12-16"].
Как хранить диапазон, оставлю на твои раздумья. Можно в виде массива строк с отделением через '-', можно с помощью объекта с двумя полями, можно...