check-tests icon indicating copy to clipboard operation
check-tests copied to clipboard

Tests with the same titles do not count

Open TetianaKhomenko opened this issue 2 years ago • 5 comments

When nested suites have tests with the same titles - they should be taken into account in the final count of all tests.

Link to thread https://testomatio.slack.com/archives/C051DR0CK6W/p1684921657414229?thread_ts=1680431321.338879&cid=C051DR0CK6W

TetianaKhomenko avatar May 24 '23 11:05 TetianaKhomenko

Stanislav Taran 2 months ago Привіт) Одразу до проблем з якими я стикнувся: В моїх ранах чомусь деякі тести показуються як not matched хоча в них є коректні id і це видно на відео Чомусь кількість тестів в рані менша ніж насправді (150/171). Я перевірив мануально що в мене в кожному тесті є id, потім написав кастомний репортер і перевірив що кількість тестів 171 і в кожному є унікальний id від тестомату. В чому причина поки незрозуміло. В Playwright репорті. кільксть 171, в. тестоматі 150 Screen Recording 2023-04-02 at 12.50.06.mov

49 replies Mykhailo Poliarush :testomat: 2 months ago @Vitalii Mihailuk

@Oleksandr Pelykh :point_up: Vitalii Mihailuk 2 months ago Доброго дня @Stanislav Taran Ви б могли додати в чат пару прикладів тестів: 1 який додався в тестомат та один який не додався. І я пізніше спробую розгорнути Демку в себе і подивитися на результати Vitalii Mihailuk 2 months ago Мені для загальної структури: який опис у тестів, які перевірки і тд... щоб знати куди дивитися Stanislav Taran 2 months ago окей, зараз пошукаю і скину в тред :pray: 1

Stanislav Taran 2 months ago На скріншоті показав які тести зарепортились а які ні(5-6). Кидаю файл з тестами бо обсяг завеликий для повідомлення в слак) 2 files

Screenshot 2023-04-03 at 11.30.37.png Screenshot 2023-04-03 at 11.30.37.png PNG

baseCases.spec.ts TypeScript Vitalii Mihailuk 2 months ago Дякую. Бачу що кейси 5-6 не підтянулися? Все вірно? Stanislav Taran 2 months ago так Vitalii Mihailuk 2 months ago Це я так, для загального уточнення) :raised_hands: 1

Vitalii Mihailuk 2 months ago А можете ще на скріні показати вкладку не ран, а та що вище з описом тестів. Не має часом там детект тестів? Stanislav Taran 2 months ago Можу) Якщо зручно можемо зідзвонитись Vitalii Mihailuk 2 months ago Давайте так, зараз дам лінку на міт :white_check_mark: 1

Vitalii Mihailuk 2 months ago https://meet.google.com/ezh-mghp-dsj

meet.google.commeet.google.com Meet Real-time meetings by Google. Using your browser, share your video, desktop, and presentations with teammates and customers. Vitalii Mihailuk 2 months ago Відпишу сюди результати колу: мені треба створити Демку з прикладами, які надава Станіслав + розібратися чому пропадають кейси для Playwright. @Mykhailo Poliarush Займусь цим пізніше сьогодні! :raised_hands: 1

Vitalii Mihailuk 2 months ago Привіт @Stanislav Taran А можна тебе попросити прикріпити ХТМЛ репорт із playwright? Vitalii Mihailuk 2 months ago там де 171 тест, чи скільки іх там (edited) Stanislav Taran 2 months ago Того самого вже нема, є свіжіший але там інші тести вже не відправились Vitalii Mihailuk 2 months ago зрозуміло! я тоді ще сьогодні різні варіанти хочу потестити і, скоріше, завтра буду мучити тебе питаннями) Stanislav Taran 2 months ago з радістю відповім) бо мені це треба на вчора:sweat_smile: Stanislav Taran 2 months ago зараз прикріплю скрін нового рану і хтмл репорт :pray: 1

Stanislav Taran 2 months ago Скрін з ТМС Файл з тестами які не зарепортились Playwright report 3 files

Screenshot 2023-04-04 at 17.27.44.png Screenshot 2023-04-04 at 17.27.44.png PNG

withoutBookings.spec.ts TypeScript

playwright-report.zip Zip Vitalii Mihailuk 2 months ago дякую за матеріали) гарного дня) (edited) :raised_hands: 1

Vitalii Mihailuk 2 months ago @Stanislav Taran Доброго ранку! Вчора не встиг відписати! Є припущення чому так відбувається: скоріш за все це пов'язано із задачею 81(яку ти завів) + процессінгом на Бекенді імортуємих кейсів. Ці дві задачі будуть пофікшені до наступного тижня і тоді можна буде перепровірити результати +задачі 80 та 82 по іморту будуть сьогодні/завтра запаблішені в чек-тест, тому можна буде спробувати протестити! Я буду тримати Вас в курсі оновлень. Залишаємось на зв'язку) (edited) :white_check_mark: 1

Stanislav Taran 1 month ago @Vitalii Mihailuk Привіт) Підкажи будь-ласка чи є якісь апдейти? Vitalii Mihailuk 1 month ago Привіт, задачі по імпорту на ревью... сподіваюсь скоро можна буде тестити, а з "не доданими" кейсами будемо розбиратися на цьому тижні! Інформація буде додана в тікети, що до прогресу @Stanislav Taran (edited) :raised_hands: 1

Stanislav Taran 1 month ago Спасибі:slightly_smiling_face: Stanislav Taran 28 days ago @Vitalii Mihailuk Привіт) Є якісь апдейти?) Бо тестів у мене стає більше а в тест-рані навпаки:joy: Vitalii Mihailuk 28 days ago Привіт! @Stanislav Taran Проблеми знайдені тобою виявились більш глобальні і зараз розбираємось, як покращити процеси матчінга та ініціалізації тестів. Завтра буде бетка для тестування... можна буде подивитися краще стане чи ні + опишу додатковий флоу! А в тебе багато файлів в яких ідентичні назви сьютів? Stanislav Taran 28 days ago десь 30% :grinning: :thinking_face: 1

Vitalii Mihailuk 28 days ago О_о я думав що такий кейс - рідкість! добре - зрозумів тебе) Пізніше відпишу для тестингу :raised_hands: 1

Vitalii Mihailuk 27 days ago Привіт @Stanislav Taran . А можна тебе попросити протестити такий флоу, як буде час: 1 - Створити новий Демо-проект для декількох файлів, які включають тести/сьюти що не підтягуються(з твого ОСНОВНОГО проекту) + файл з проблемою в імпорті import Shift from '@src/Shift'; test.describe('Shift', () => {


}) 2 - В цьому Демо проекті виконати: add tests without ids TESTOMATIO= npx [email protected] Playwright "**/*{.,_}{test,spec,cy}.ts" --typescript Звернути увагу на кількість тестів + що версія check-tests=БЕТА next - update-ids TESTOMATIO=<key> npx [email protected] Playwright "**/*{.,_}{test,spec,cy}.ts" --typescript --update-ids if some ids not add to test => try again and sync updates TESTOMATIO=<key> npx check-tests@latest Playwright "**/*{.,_}{test,spec,cy}.ts" --typescript --sync (тут вже стейбл версія check-tests) По ідеї повинні бути проставлені ІД для внутрішніх сьютів/тестів + кількість тестів в консолі та кількість тестів на Тестоамт має бути однаковою! Але можливий кейс коли тести будуть групуватися не правильно... над цим також працюємо( Stanislav Taran 27 days ago привіт, постараюсь спробувати, зараз велике навантаження, то не обіцяю шо зроблю скоро :pray: 1

Vitalii Mihailuk 27 days ago Так звісно! Тримай в курсі... вийшло чи ні) Гарних вихідних) Stanislav Taran 1 day ago @Vitalii Mihailuk Привіт) Соррі за затримку)) Все ж не працює як очікувалось Screen Recording 2023-05-24 at 10.57.52.mov

Stanislav Taran 1 day ago але я проганяв одразу на живому проекті Vitalii Mihailuk 1 day ago Привіт. Дуж дивно! В тебе до змінних додаються індикатори сьютів/тестів => в таких випадках вони мають взагалі пропускати цей код... А можна приклад файлику зі змінною const reservationToCreate ?(попередньо можеш видалити комерційну інфу)... мені для контексту... Так як я тестами покрив ряд кейсів, можливо щось пропустив Vitalii Mihailuk 1 day ago @Stanislav Taran Stanislav Taran 1 day ago думаю так, хвилинку Stanislav Taran 1 day ago scratch_2.ts

import 'moment-timezone'; ​ import {expect, test} from '@playwright/test'; import ReservationBookAPIClient from '@src/client/api/ReservationBookAPIClient'; import {NGetInfo} from '@src/namespaces/reservationBookAPI/info/NGetInfo'; Click to expand inline (611 lines) Vitalii Mihailuk 1 day ago Уххх... виглядає страшно) А для цього файлу в тебе тільки в одному місці reservationsToCreate зламалось? :joy: 1

Stanislav Taran 1 day ago так :+1: 1

Vitalii Mihailuk 1 day ago ще такий момент з приводу кількоісті тестів: може бути таке, що у Вас в одному файлі є test() з однаковими іменами? чи всі тести мають різні тайтли? Stanislav Taran 1 day ago ну в рамках одного дескрайба точно унікальні Stanislav Taran 1 day ago а от якшо декілька дескрайбів у файлі то може бути :thinking_face: 1

Vitalii Mihailuk 1 day ago Схоже це може бути причиною, так як система тестомату матчить по Мейн сьюту + тайтлу тесту. @Tetiana можна тебе попросити завести задачу на мене, щоб перевірити цей випадок: якщо вкладені сьюти мають тести з однаковими тайтлами - вони мають враховуватися в кінцевому каунті всіх тестів Tetiana Khomenko 1 day ago Звісно! :+1: 1

Vitalii Mihailuk 1 day ago @Stanislav Taran а в тебе файл так і називається в тестах [scratch_2.ts](https://testomatio.slack.com/files/U04TZS272FN/F058TBHFZ63/scratch_2.ts?origin_team=T013WN9N37F&origin_channel=G01LSLWFPBR) ?

Stanislav Taran | scratch_2.ts

import 'moment-timezone'; ​ import {expect, test} from '@playwright/test'; import ReservationBookAPIClient from '@src/client/api/ReservationBookAPIClient'; import {NGetInfo} from '@src/namespaces/reservationBookAPI/info/NGetInfo'; Click to expand inline (611 lines)

Stanislav Taran 1 day ago нє)

Stanislav Taran 1 day ago цей називається cancel.spec.ts :white_check_mark: 1

Vitalii Mihailuk 24 hours ago дякую, мені для контексту! Наврядчи сьогодні/завтра, але перевірю новий файл та те як ми його обробляємо на нашій стороні.

poliarush avatar May 25 '23 11:05 poliarush

Create a new Playwright project with over 50 tests and investigate this behavior. As a result, all tests must be added to the Client (number on the Testomat = check-test number = playwright's HTML report number)

mykhailiukVitalii avatar Jun 30 '23 09:06 mykhailiukVitalii

I checked by following these steps:

  1. TESTOMATIO_URL=https://beta.testomat.io TESTOMATIO= npx check-tests@latest Playwright "**/*{.,_}{test,spec,cy}.js" --update-ids
  2. TESTOMATIO_URL=https://beta.testomat.io TESTOMATIO= npx check-tests@latest Playwright "**/*{.,_}{test,spec,cy}.js" --purge
  3. TESTOMATIO_URL=https://beta.testomat.io TESTOMATIO= npx check-tests@latest Playwright "**/*{.,_}{test,spec,cy}.js" --sync

after that I had "Automated=50" (seems includes detected cases) & "Total 32 tests found" in the console. Screenshot-1 Screenshot-2

@DavertMik to be discussed on the inner meet!!! - I have an idea why this happened + how to fix

(also need to re-check case if test has fixme || skip status + the same name!!!)

mykhailiukVitalii avatar Jul 09 '23 15:07 mykhailiukVitalii

Looks like it's a BE issue: the "automated" tag needs to be tested (perhaps it includes "discovered" tests) @DavertMik (need to check server logs) steps to reproduce:

  1. import example/cypress tests using TESTOMATIO={API_KEY} npx check-tests cypress "**/**.spec.js" -d cypress/integration/*
  2. import example/cypress tests using TESTOMATIO={API_KEY} npx check-tests cypress "**/**.cy.js" -d cypress/** --update-ids
  3. import example/cypress tests using TESTOMATIO={API_KEY} npx check-tests cypress "**/**.cy.js" -d cypress/integration/*
  4. run tests TESTOMATIO={API_KEY} npx cypress run

mykhailiukVitalii avatar Jul 23 '23 14:07 mykhailiukVitalii

@DavertMik

olexandr13 avatar Oct 29 '23 07:10 olexandr13