Terras: подходит
Она идеальна для тдд, но оттуда ты вполне можешь почерпнуть подходы для тестирования готового проекта.
И писать новый функционал уже по тдд
Там школьный английский
В коайнем случае просто смотришь код тестов и разбираешь, что там происходит
делать наследование и хардкодить поля для товаров, возможно быстрее для выборки, но ето денормализация
Тут кейс EAV