# Сгенерированные проекты {#generated-projects}
::: предупреждение РЕКВИЗИТЫ
- Проект, созданный
- A Туистский счет и проект
:::
Чтобы выборочно запустить тесты в сгенерированном проекте, используйте команду
`tuist test`. Команда
хеширует
ваш проект Xcode так же, как это делается для
прогрева кэша, и в случае успеха сохраняет хеши, чтобы определить, что
изменилось в последующих запусках.
В последующих запусках `tuist test` прозрачно использует хэши для фильтрации
тестов, чтобы запускать только те, которые изменились с момента последнего
успешного запуска теста.
Например, предположим следующий граф зависимостей:
- `FeatureA` имеет тесты `FeatureATests`, и зависит от `Core`
- `FeatureB` имеет тесты `FeatureBTests`, и зависит от `Core`
- `Ядро` имеет тесты `CoreTests`
`туистский тест` будет вести себя именно так:
| Действие | Описание | Внутреннее состояние |
| ---------------------- | ---------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `туистский тест` вызов | Запускает тесты из разделов `CoreTests`, `FeatureATests`, и `FeatureBTests.` | Хэши `FeatureATests`, `FeatureBTests` и `CoreTests` сохраняются. |
| `ФункцияА` обновляется | Разработчик изменяет код целевой программы | Как и раньше |
| `туистский тест` вызов | Запускает тесты в `FeatureATests`, потому что хэш изменился. | Новый хэш `FeatureATests` сохраняется. |
| `Обновлено ядро` | Разработчик изменяет код целевой программы | Как и раньше |
| `туистский тест` вызов | Запускает тесты из разделов `CoreTests`, `FeatureATests`, и `FeatureBTests.` | Новый хэш `FeatureATests` `FeatureBTests`, и `CoreTests` сохраняется. |
`tuist test` напрямую интегрируется с кэшированием бинарных файлов, чтобы
использовать как можно больше бинарных файлов из локального или удаленного
хранилища для улучшения времени сборки при выполнении набора тестов. Сочетание
выборочного тестирования с кэшированием бинарных файлов позволяет значительно
сократить время выполнения тестов в CI.
## Тесты пользовательского интерфейса {#ui-tests}
Tuist поддерживает выборочное тестирование UI-тестов. Однако Tuist необходимо
заранее знать место назначения. Только если вы укажете параметр `destination`,
Tuist будет запускать тесты пользовательского интерфейса выборочно, например:
```sh
tuist test --device 'iPhone 14 Pro'
# or
tuist test -- -destination 'name=iPhone 14 Pro'
# or
tuist test -- -destination 'id=SIMULATOR_ID'
```