# Gradle ტესტების ანალიტიკა {#gradle-test-insights}

Tuist-ის Gradle პლაგინი ავტომატურად ატვირთავს ტესტის შედეგებს ყოველი ტესტის ამოცანის შესრულების შემდეგ, რაც საშუალებას გაძლევთ პირდაპირ Tuist დაფზე ნახოთ ტესტების წარმადობა და არასტაბილური ტესტები.

ტესტების ანალიტიკა ავტომატურად იკრიბება, როდესაც Tuist Gradle პლაგინი არის ჩართული — დამატებითი კონფიგურაცია საჭირო არ არის პლაგინის საწყისი განლაგების გარდა.

შეგიძლიათ მიუწვდეთ თქვენს ტესტების ანალიტიკას Tuist დაფზე და ნახოთ, როგორ იცვლება ის დროთა განმავლობაში:

![დაფა ტესტების ანალიტიკით](/images/guides/features/build-insights/tests-dashboard.png)

## რა ფიქსირდება {#what-is-tracked}

პლაგინი აგროვებს შედეგებს ყველა Gradle `Test` ამოცანიდან, მათ შორის:
- ინდივიდუალური ტესტის საქმის წარმატებული/ჩავარდნილი სტატუსი და ხანგრძლივობა
- ტესტების ნაკრებისა და კლასის სტრუქტურა
- არასტაბილური ტესტების აღმოჩენა გაშვებებს შორის

## ატვირთვის ქცევის კონფიგურაცია {#configure-upload-behavior}

ნაგულისხმევად:
- ტესტის შედეგები აიტვირთება ფონურად ლოკალური აგებისთვის.
- ტესტის შედეგები აიტვირთება წინა პლანზე CI გაშვებებისთვის, რათა თავიდან იქნას აცილებული ტელემეტრიის დაკარგვა მოკლე სიცოცხლის აგენტებზე.

შეგიძლიათ გადაწეროთ ეს ქცევა `uploadInBackground`-ის გამოყენებით `tuist` ბლოკში თქვენს `settings.gradle.kts`-ში:

```kotlin
tuist {
    uploadInBackground = false // always upload in the foreground
}
```

### Git ისტორია {#git-history}

CI-ზე, პლაგინი ასევე ატვირთავს checkout-ის კომიტების ისტორიას, როდესაც იტყობინება ტესტის გაშვების შესახებ: კომიტის SHA-ები, მათი მშობლები, კომიტის თარიღები და დარგი, რომელზეც იყო გაშვება და მისი pull request-ის საბაზისო დარგი. არ აიტვირთება ფაილის შინაარსი, კომიტის შეტყობინებები ან ავტორები. ეს არის ის, რაც ეუბნება Tuist-ს, რომელი კომიტები მოხვდა თქვენს ნაგულისხმევ დარგზე, მაგალითად, ისინი, რომლებიც merge queue-მ შეამოწმა. პლაგინი კითხულობს ისტორიას, რომელიც checkout-ს უკვე აქვს, და როდესაც checkout-ს არ აქვს საბაზისო დარგი, ითხოვს remote-დან მის უახლეს კომიტს (`git ls-remote`). ის არ იწერს ისტორიას.

| ცვლადი | ეფექტი |
| --- | --- |
| `TUIST_GIT_UPLOAD_ENABLED=false` | არ კითხულობს და არ ატვირთავს Git-ის ისტორიას. |
| `TUIST_GIT_UNSHALLOW_ENABLED=false` | კითხულობს მხოლოდ checkout-ს, remote-თან დაკავშირების გარეშე. |
