TGViewer
qa семпай про тестування qa семпай про тестування @qa_advice · 3.12K subscribers
Post #172 669
Пише колега, каже треба написати тести які б робили Paste в текстові поля едітора (textbox, textarea, richtext) (нещодавно баг був, шо вони перестали підтримувати вставлення тексту).
Так шо він придумав.

1) Створити сутність з необхідним текстом в одному із полів
2) Піти до неї, і скопіювати текст
3) Піти до необхідної сутності
4) Вставити текст в поля там

Я конєшно йому розповів чому так не треба робити.

1) Збільшення часу виконання тесту за рахунок
- створення/видалення сутності
- навігація між великими сторінками

2) Такий підхід важко відтворити для інших тестів, бо він досить складний

Він трохи подумав, і повернувся з трохи кращим рішенням
Ввести текст в той же сутності що він тестує, але в інше поле!!, а потім скопіювати звідти :):)
На шо я його запитав, а чого ти не введеш текст в теж поле в яке тобі потрібно його вставити (Paste), скопіюєш його звідти, видалиш, і потім зробиш Paste :)
- "А шо так можна було?!!" :):)

Я запропонував ще одне рішення яке можна перевикористовувати для ситуацій коли вам треба додати текст до буфера обміну в простий спосіб (наприклад перед початком тесту)

export async function addTextToClipboard(page: Page, textToCopy: string) {
await page.setContent(`<textarea>${textToCopy}</textarea>`);
await page.locator('//textarea').focus();

if (os.platform() === 'darwin') {
await page.keyboard.press('Meta+A');
await page.keyboard.press('Meta+C');
} else {
await page.keyboard.press('Control+A');
await page.keyboard.press('Control+C');
}
}


Воно у відкриту сторінку вставить html елемент з потрібним кодом :) Ви його додаєте в буфер обміну і далі рухаєтесь по тесту :(мінус що треба потім сторінку перевантажити).

Висновки:
1) Тести повинні бути максимально короткі і не мати зайвих рухів якщо вони не потрібні
2) Уникайте створення додаткових сутностей
3) Шукайте прості рішення які можна перевикористати

Єдине що я не певен, що це найоптимальніший варіант вирішення цієї проблеми. Може ви поділитесь своїм досвідом з цим :)
  • ❤ 8
  • 👍 2
More from @qa_advice
  1. Oct 14, 2026Так як останні 3 місяці я трохи поїхав кукухою на агентній розробці (став професійним слоп…
  2. Oct 9, 2026ПОЧАЛИ! https://www.youtube.com/watch?v=8VAzB51nEYs
  3. Oct 9, 2026З'явився новий Playwright 1.64, наче свіжа роса на листі лотоса. Справжній майстер знає, щ…
  4. Oct 8, 2026🎙 17–18 жовтня братиму участь у дискусіях на Бетельгейзе-2026 У професійних обговореннях…
  5. Oct 7, 2026Відосік зі стріма як AIшка вплинула на аутсорс? 📱 https://www.youtube.com/watch?v=DUvn2ko…
  6. Oct 6, 2026Стартуємо о 20:00 📱 YouTube Live: https://youtube.com/live/k1QW9AN-UNw?feature=share
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →