Skip to content
...

Блог RSS ​

Назад в PHP 8.1
Назад в PHP 8.1

Testo написан под PHP 8.2, а PHPLRT хочет тестироваться на 8.1. Вместо того чтобы переписывать код под старую версию, понижаем его Rector'ом только на время тестов.

Что быстрее
Что быстрее

Бенчмарк трёх раннеров на одной кодовой базе: Tempest Testing, PHPUnit и Testo. Раннеры разошлись на пару секунд, а неудачная настройка тестов превращала 20 секунд в 5 минут.

Кто мутирует мутатора
Кто мутирует мутатора

Что происходит, когда мутационное тестирование пытается мутировать сам инструмент, которым тестирует.

Группировка тестов: атрибут #[Group]
Группировка тестов: атрибут #[Group]

Новый атрибут #[Group] в Testo: помечайте тесты строковыми метками, наследуйте группы от родительских классов и запускайте нужные категории флагом --group.

Infection + Testo
Infection + Testo

Infection 0.33.0 вышел со встроенной поддержкой Testo. Мутационное тестирование теперь работает из коробки.

Скиллы для AI-агентов
Скиллы для AI-агентов

В Testo приехал набор AI-скиллов для агентов. И заодно — Composer-плагин, чтобы тащить скиллы из вендора в проект автоматически.

К коллайдеру!
К коллайдеру!

Бенчмарки — это не сложно. Один атрибут, один запуск, и вы точно знаете, что быстрее. Проверяем на практике с Testo.

Data Providers
Data Providers

Гибкие провайдеры данных в Testo: от простого DataSet до мощных комбинаций с DataZip, DataCross и DataUnion.

СПС
СПС

Ваша поддержка — важнейший ингредиент Testo

Assert и Expect
Assert и Expect

Исследуем дизайн API утверждений в Testo: почему мы разделили фасады Assert и Expect, и как пайп-ассерты делают тесты чище.

Фильтры
Фильтры

Многослойная система фильтрации в Testo: от уровня Test Suite до отдельных тестовых методов.

Хинкали
Хинкали

История создания иконки хинкали для IDE-плагина Testo.