Pull to refresh

Comments 13

Да, как-то слишком всё радужно. Сама по диффам решает, какие тесты писать? Или как?

Система деиерминированна, а тестируемый софт нет. Так что 100 % не будет никогда. И да, откуда она знает, какие методы дергать и в каком порядке. Значит программист опять сидит и пишет этот высокоуровневый тест. Декларирует. А если сделал ошибку в описании теста или не все описал? Возвращаемся в начало. Программист ленивый и не написал тест для системы или криво написал, и баг не нашелся.

У них там эмулятор, который делает софт детерминированным насколько это возможно, т.е. при повторном запуске каждый системный вызов возвращает тот же результат, что и в прошлый раз. К этому прикручен фаззинг, симуляция разных ошибок (потери пакетов, притормаживание тредов и т.д.)

https://antithesis.com/blog/deterministic_hypervisor/

Это невозможно. float недетерминированный. Процессоры работают с разной частотой. Нужно делать польностью софтварный компьютер (Он будет жутко тормозить), и только чтобы это работало внутри него, без сети, без всего. Как выводить графику, она тоже недетерминированна. Время отрисовки кадра разное, значит код работающий с кадром, будет ждать разное время. В это время другие потоки успеют сделать больше или меньше. Т.е. Эта задача, впринципе не разрешимая. А нассать в уши покупателям можно конечно.

Конечно это не Вам претензия )

Только https://ru.wikipedia.org/wiki/Проблема_остановки не разрешима для машины Тьюринга. Авторы похоже про это не знают или специально умалчивают, раздуваю стоимость своего стартапа. А вообще это больше на скам походе, так как технических подробностей (как у них пишутся тесты) в статье нет

https://antithesis.com/docs/using_antithesis/sdk/go/overview.html вот SDK, тут видно, что они предоставляют замену random и другие вспомогательные пакеты, которые позволяют интегрировать код в платформу. Технические подробности того что легло в основу можно глянуть в исходниках FoundationDB.

Тоесть теперь 100% времени разработчике уверяют систему тестирования, что данный тест кейс - не соответствует заданию?

Базовый подход Antithesis — использовать случайные значения. Например, следующий код в итоге сгенерирует все комбинации двух функций размером до сотни

Я так понял, они придумали/реализовали фаззинг.

На словах "ноль ошибок", ребята из PVS Studio сочувственно улыбнулись и прошли мимо.

Обычная рекламная компания перед "запуском для всех". Осталось подключить к ней в качестве модуля программиста chat gpt, разработка ускорится в 500 раз по "субъективным ощущениям" ген дира оставшегося последним человеком в команде и разработка по наконец-то станет бксплатной, надеемся, ждем.

Правильно Мету экстремистами назвали! Развели тут экстремальное программирование…

Дожили. Блог компании, живущий рекламными статьями во имя себя, переводит рекламную статью другой компании.

Sign up to leave a comment.