Розширений пошук Jira. Використання JQL (Jira Query Language)

  • 2978
  • 4
  • 31 січня, 2023
  • читати 10 хв
Оксана Куценко Senior QA Engineer

Важливу роль у життєвому циклі розробки програмного забезпечення відіграють системи керування проєктами. Найбільш популярною є Jira.

Jira — це система відстеження помилок, призначена для організації спілкування з учасниками команди, а також для управління проєктами. Ця система була розроблена компанією Atlassian у 2002 році.

Під час роботи з Jira часто виникає потреба у пошуку певних задач із різних проєктів по певних критеріях.

У Jira існує два види пошуку: базовий (basic) і розширений (advanced).

У базовому пошуку є безліч фільтрів: за проєктами, типами завдань, за виконавцем та статусом. Також можна додати додаткові поля за критеріями Jira. Для переходу до базового пошуку потрібно натиснути Issues> Search for issues.

Basic Search зручно використовувати, якщо складність запиту невисока. Недоліком такого пошуку є неможливість побудови комплексних запитів.

Для побудови складних запитів (наприклад, знайти всі дефекти певного виконавця за визначений проміжок часу) необхідно опанувати Advanced Search і навчитись використовувати JQL.

JQL (JIRA Query Language) — мова запитів у Jira, яка признаечна для пошуку задач згідно з заданими умовами.

Для розширеного пошуку потрібно вибрати Issues> Search for issues>Advanced

Запит виконується у спеціальному полі на JQL за кнопками Enter чи Search. Також у кінці поля пошуку міститься допомога по синтаксису (“?”).

Тут можна подивитись на синтаксис JQL.

Розширений пошук складається з трьох основних частин:

  • Поля (Fields)

  • Значення (Values)

  • Оператори (Operators)

  • Ключові слова (Keywords)

Поле — це тип даних, що використовуються в JIRA.

Наприклад: Project, Issuetype, Summary, Severity, Priority, Assignee, AffectedVersion, FixVersion, Attachments, Environment,Work Email, Reporter, Username тощо. Назви полів можуть змінюватися в залежності від проєкту, тому важливо знати назви полів саме на своєму проєкті.

Значення — це та інформація, яка міститься в полях. Це може бути номер версії у випадку AffectedVersion, градація Severity, Priority (пріоритет дефекту), статус багу в системі, ім'я Assignee або Reporter тощо. Для ефективного пошуку важливо розуміти, яких значень здатне набувати те чи інше поле.

Оператори — елементи, що пов'язують поле з його значенням. У найпростішому випадку це може бути «рівно» або «не рівно» (= і ! = відповідно) для таких полів, як Issuetype або Status.

При використанні оператора = у виразі можна вказати лише одне значення. Також популярними операторами є:

  • IN — для об`єднання декількох значень
  • < , >, <=, >=, != служать для порівняння
  • IS/IS NOT — для роботи з пустими значеннями полів
  • DURING (date_1, date_2) — між датами
  • AFTER date_1 — після обраної дати
  • BEFORE date_1 — до обраної дати
  • BY username — яким користувачем
  • ON date_1 — у певну обрану дату

Приклад використання операторів та значень:

priority = High, де «=» — оператор, «High» — значення.

Ключові слова — це слова, які пов'язують між собою окремі запити та дозволяють об'єднати їх у довгий запит. Також ключові слова використовуються для сортування, пошуку задач, коли поле немає значення — «EMPTY», «NULL», для заперечення умови «NOT».

Приклади ключових слів: OR, AND, NOT, EMPTY, NULL, ORDER BY, DESC, ASC.

Створені запити можна зберігати й використовувати в якості фільтрів, а також для налаштування перегляду в Jira (включаючи дошки) у майбутньому.

Для зберігання потрібно натиснути «Save as» та додати назву фільтра, після чого фільтр буде додано до решти фільтрів, які є у боковому меню.