Доказательство
Четыре места, где числа старели незаметно
Команда ARMANOS7 мин
Исключение это разрешение
Проверка светится зелёным, когда ничего не нашла там, куда смотрела. Место, которое ей велено пропускать, не остаётся неосмотренным: оно оказывается одобренным.
Снаружи эта разница не видна. Зелёная строка ничего не говорит о размере поля, которое обошли: проверка над четвертью страниц выглядит ровно как проверка над всеми.
Четыре исключения за два дня
Проверки здесь читают страницы сайта: утверждения на них, числа внутри и ссылки наружу.
Ни одно из четырёх не было сломанной строкой кода. Каждая работала ровно так, как написана, и написанное и было дефектом.
| Что проверка пропускала | Что через неё проходило |
|---|---|
| Блок, в котором лежит доказательство | 15 мест из 41, где утверждение пережило код |
| Все страницы, кроме главной | Число, перенесённое рукой, на треть ниже измерившего его прогона |
| Число, рядом с которым нет слов | 22 места с итогами прежнего прогона |
| Одно поле, везде прочитанное как путь | Замер, написанный словом внутри описания ссылки |
Пропущенным был блок доказательства
Самое острое из четырёх сидело в проверке, читающей то, что эти страницы утверждают о программе. Одна её строка перешагивала блок в подвале каждой страницы, тот самый, где за каждым утверждением названы файл и проверка.
Именно там утверждение всего точнее, а значит там же устаревшее живёт дольше всего. Из 41 места 15 лежали в нём.
Исключено теперь одно названное поле, а не целый блок, и вторая проверка считает прочитанные внутри доказательства строки и краснеет, когда их становится меньше отметки.
Число в голой клетке
В карточке фактов и в строке таблицы число и объясняющие его слова лежат в разных клетках. Проверка, искавшая число рядом с его же названием, эти две клетки вместе не видит никогда.
Обход теперь несёт с собой соседа: подпись той же карточки или остальные клетки той же строки. Голое число судится рядом со словами, которые его называют.
- 1
Читает клетку
Число ровно в том виде, в каком оно лежит в файле.
- 2
Несёт подпись
Заголовок той же карточки или остальные клетки той же строки.
- 3
Судит их вместе
Число под подписью с именем нашего замера обязано подставляться, а не вписываться.
Откуда здесь берутся числа
Там, где страница несёт имя замера, число подставляется при чтении, а не вписывается.
Счёт проверок получается прогоном всех трёх наборов подряд. Провалившийся прогон не записывает ничего, поэтому сломанный набор не поднимет цифру на главной.
Число показаний, которые снимает программа, берётся из журнала приёмки на отгруженной сборке, а не из списка ожиданий. Список говорит, что должно было случиться, а журнал говорит, что случилось.
Что проверяется теперь
В блоке доказательства поле с именем файла пропускается, а в остальных местах то же поле читается, потому что там это обычный текст для человека.
Проверка над утверждениями считает прочитанные строки и краснеет, когда их становится меньше отметки. Съёжится она незаметно до десятой доли страниц, и упадёт так же громко, как нашедшая беду.
Что проверка запрещает менять нам самим
Правила вдобавок режут в обе стороны. Безопасный темп это подсказка: он красит полосу и ничего не запрещает, и проверка следит, чтобы так и оставалось. Изменится поведение, и она покраснеет и попросит переписать эти слова.
Чего это не утверждает
- Это не утверждает, что в проверках не осталось ни одного исключения. Утверждается, что четыре сочтены, названы и сняты, и что каждое записано в том файле, который его теперь закрывает.
- Это не утверждает, что сторож доказывает качество текста. Написан ли текст для читателя, держат глаза, и делать вид, что это измеряется, здесь никто не станет.
- Числа выше описывают страницы этого сайта, а не сам браузер. У проверок над программой и над сервером свои наборы со своими потолками.
Где это можно увидеть самому
Файлы ниже можно открыть.
- Проверка того, что страницы говорят про безопасный темп
- apps/web/test/потолок-это-ориентир.js
- Проверка того, что число замера не вписано рукой
- apps/web/test/числа-не-вписаны-рукой.js
- Сами числа и прогон, который их записывает
- apps/web/measured.json · apps/web/scripts/сосчитать-проверки.js
- Имя замера подставляется при чтении страницы
- apps/web/content/чтение.ts
Вопросы
- Почему не проверять всё подряд?
- Некоторые поля действительно путь к файлу, и проверка, запрещающая в них это слово, потребовала бы убрать правду. В блоке доказательства это поле пропускается, а в описании ссылки то же поле читается.
- Как заметить пропущенное место?
- По тому, сколько прочитала проверка над утверждениями. Число строк ниже отметки красит прогон, даже когда больше ничего не случилось.
- Почему зелёный сам по себе мало значит?
- Потому что зелёный говорит только про то поле, где искали. Размер этого поля и есть главный вопрос.
- Это как-то касается самого браузера?
- Нет. Эти проверки читают страницы, которые вы читаете сейчас, а у браузера свои наборы со своими замерами.
- Можно увидеть числа за утверждением?
- Блок с именем файла и проверки стоит у каждой страницы, кроме оглавлений разделов.
Рядом с этим
Проверьте каждое обещание
Утверждения с файлом и стендом.
Что нового
Каждая сборка с тем, что в ней изменилось и что ещё недоделано.
Проверка своего рабочего места
Что проверка может сказать и чего не может.
Бесплатная проверка отпечатка
12 значений, прочитанных в вашем браузере, и ни одного запроса наружу.
Посмотрите, что отвечает ваш браузер
Проверка читает 12 значений, и эта цифра сосчитана по самой проверке, а не вписана сюда.