Які функції слід перевірити за допомогою автоматизованого тестування інтерфейсу?


12

Нещодавно у нас консультант повідомив, що якщо функцію можна перевірити лише за допомогою автоматизованих тестів на інтерфейс користувача (наприклад, Selenium, Coded UI), то існує основна архітектурна проблема. Хоча це твердження може бути дещо екстремальним, воно узгоджується з тими ж лініями тестувальної піраміди, що тести інтерфейсу повинні складати невелику частину вашого загального автоматизованого набору тестів.

Отже, які функції повинні мати автоматизоване тестування інтерфейсу? Чи матиме система з налагодженою архітектурою функцій, які можна перевірити лише за допомогою тестів інтерфейсу користувача, або вони повинні просто служити "резервним копією" для набору тестів для одиниць та послуг?


Окрім кожної функції інтерфейсу, я припускаю?

Відповіді:


11

Імовірно, у вас є якась архітектура, яка з'єднує кнопки та інші віджети до дій - натисніть кнопку "Зберегти", а функцію збереження слід викликати тощо.

Якщо припустити, що ви добре висвітлюєте самі дії за допомогою тестування підрозділу або інтеграції, мета автоматизованого тестування інтерфейсу користувача - переконатися, що всі віджети здійснюють належні виклики до основних дій та правильно відображають результати цих дій.

Іншими словами, вони підтверджують, що користувальницький інтерфейс належним чином відображає стан моделі і належним чином підключений до контролера.

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


3

Які функції слід перевірити за допомогою автоматизованого тестування інтерфейсу?

Усі функції інтерфейсу.

Вам слід перевірити:

  • Усі функції, які можуть виконувати користувачі.
  • Функції, які користувачі виконують у всіх браузерах (і версіях), у яких вони виконують.
  • Обоє щасливі (роблять правильно на кожному кроці) проти сумних (користувач робить помилки) шляхи.
  • Дійсні та недійсні дані.
  • Великі та малі числа.
  • Усі ролі та функції, характерні для ролей.
  • Інтерфейси користувача та адміністратора.
  • Спроби прориву.
  • Створення проти оновлення даних працює за призначенням.
  • Видаліть роботу та видаліть пов’язані дані бази даних в інших таблицях.
  • Користувачі стилю клавіатури та миші.
  • Різні пристрої або тренажери - ПК, телефони, ipads тощо.

0

Немає такої можливості, яку можна перевірити лише за допомогою автоматизованих тестів на інтерфейс користувача. Такі засоби, як Селен, просто імітують поведінку людини, не нудьгуючи людини до суїциду. Задайте собі (або своєму консультанту) запитання: " Як програма перевірить аспекти інтерфейсу користувача, які людина не може? " Наступне питання: " Якщо так, то чому б вам було все одно, що вони роблять? "

З іншого боку, якщо у вас є така особливість, добре, так, я б сказав, що у вас є основна архітектурна проблема. :-)


1
Я думаю, що "лише" вони мають на увазі автоматизовані тести на інтерфейс користувача, а не тести інтеграції. Я не думаю, що неможливо створити щось, що селен може перевірити, що людина не може (по модулю швидкість людини проти швидкості селену)
Брайан Оуклі,

Вибачте, я можу побачити, звідки ти це взяв би з питання. Хоча ви кинули виклик мені розробити додаток, який може використовуватись лише Selenium - просто
надіслати
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.