when opt automation testing
Чи варто розглядати автоматизацію тестування проекту? Коли нам слід проходити автоматичне тестування?
Тестування проводиться для забезпечення кінцевих споживачів якісною продукцією. Фаза тестування є одним з основних аспектів STLC .
Будь-яка компанія більше зосереджується на тестуванні програмного забезпечення, оскільки її якість приносить оптимальне задоволення споживачів, але багато з них все ще борються з вибором, який тип тестування проводити, або за допомогою автоматичного тестування, або тестування вручну.
Ця стаття допомагає читачеві зрозуміти, що таке тестування автоматизації, коли слід на це брати участь і, що найголовніше, коли на це не йти. Крім того, навчіться оптимальному використанню Засоби автоматизації для тестування .
Якою б роботою не було зайнято, вона повинна виконуватися ефективно, а також має бути економічно ефективною. Більше того, це повинно мати сенс, щоб замовник відчував задоволення від результатів.
Що ви дізнаєтесь:
- Тестування програмного забезпечення та переваги
- Інтелект, що стоїть за тестуванням програмного забезпечення
- Автоматизація - чи справді це важливо?
- Чому автоматизація?
- Фактор ризику
- Коли не слід віддавати перевагу автоматизації?
- Вартість проти рентабельності інвестицій для автоматизації
- Де автоматизація може зменшити мінімальне зниження витрат?
- Висновок
- Рекомендована література
Тестування програмного забезпечення та переваги
Тестування програмного забезпечення, як правило, проводиться тестувальником програмного забезпечення. Різниця між тестувальником та реальним користувачем полягає в тому, що останній буде знати лише часткове використання програмного забезпечення, яке використовується для їх бізнесу або для їхніх завдань, і не буде знати програмне забезпечення повністю. З іншого боку, тестувальник буде обізнаний про всі технічні та функціональні вимоги програмного забезпечення. На основі вимог, наданих клієнтом, потрібно буде підготувати плани тестування та тестові кейси.
План випробувань - це не що інше, як детальний план того, як слід проводити процес випробування. Тут буде міститися повна інформація про кількість ресурсів та джерел, задіяних у тестуванні, що робити і коли це робити, що не робити, а також середовище, в якому воно буде проводитися тощо.
Тестові кейси слід готувати після чіткого розуміння функціонального та технічного аспекту програмного забезпечення. Тестувальник повинен мати пильну здатність спостерігати та мати повні знання про програмне забезпечення.
Більше того, вартість тут відіграє ефективну роль. Клієнти воліють приймати програмне забезпечення з максимальною якістю за мінімальних витрат. Коли ми йдемо на ручне тестування, процес є більш нудним і трудомістким, оскільки все це робиться тестером вручну.
Наприклад , коли нам потрібна «n» кількість тестувальників виконати регресійне тестування , для виконання всіх тестів може знадобитися майже 50 годин. І на основі доступності ресурсів будуть виконуватися тестові кейси. Але з меншим часом на автоматизоване тестування здійснюється оптимальне використання ресурсів разом із максимальним охопленням тестових випадків порівняно з ручним тестуванням.
Інтелект, що стоїть за тестуванням програмного забезпечення
Для будь-якої організації дуже важливо знати, коли починати процес тестування та коли виходити з нього. Ми повинні знати, коли починати тестування, оскільки марно починати тестування, коли завершується фаза розробки та коли необхідні критерії не виконуються. Завжди найкращою практикою починати з етапу розробки тесту під час розробки.
Нижче наведені критерії для входу та виходу з тестування програмного забезпечення:
Критерії вступу
Після підписання проектної документації плани випробувань повинні бути підготовлені на етапі планування. План випробувань відіграє життєво важливу роль. Необхідне обладнання повинно бути встановлене та налаштоване належним чином, а функціональність обладнання має бути перевірена. Функціональні вимоги повинні бути чіткими та затвердженими. Розроблений код повинен бути перевірений модулем і підписаний розробниками.
Тестові кейси та дані тестів повинні бути підготовлені та затверджені. Повинні бути доступні дані тесту та заявка. Тестувальник повинен мати значні та достатні знання щодо застосування. Ресурси повинні бути добре навчені інструментам і повинні бути роз'яснені з усіма необхідними функціональними можливостями.
Тестер повинен бути в наявності. Коли якийсь із критеріїв не досягнуто, критерії вступу тестування відмовляються.
(Примітка: Клацніть на будь-яке зображення, щоб збільшити його)
Критерії виходу
Тільки тоді, коли щонайменше 95% обов’язкових тестових випадків заблоковані з результатом „проходження”, ми можемо вийти з фази тестування продукту. Однак не так просто визначити, коли тестування програмного забезпечення можна зупинити чи його ще потрібно виконати. І така ситуація зазвичай також виникає.
Основні критерії наведені нижче:
- Коли всі помилки виправлені.
- Коли термін досягнуто.
- Коли бюджет вичерпується або вичерпується.
- Коли всі тестові кейси пройдуть.
- Коли договір буде підписаний.
- Коли проводиться певний відсоток тестування.
- Коли Альфа і закінчується бета-тестування.
Критерії виходу можуть бути виведені виключно на основі таких факторів, як ризик, вартість тощо. Коли тестування основної функціональної вимоги досягнуто, тестування зазвичай припиняється, і вони ніколи не шукають дрібних помилок, що створюватиме проблеми пізніші періоди.
Приклад: Програмне забезпечення ABC знаходиться на стадії проектування. Розробка та випробування конструкції, як правило, відбуваються одночасно. Після заморожування дизайну починається розробка програмного забезпечення. Завершення розробки програмного забезпечення, як було узгоджено, вказує критерії вступу. Результати від команди розробників. Він включає примітки до випуску та відомі проблеми.
Після декількох ітерацій тестування, коли жоден основний / блокувальний / шоу-стопер не очікує вирішення і 95% тестування привели до проходження, тоді це називається критерієм виходу.
Автоматизація - чи справді це важливо?
Коли нам потрібно вирішити, чи потрібно нам це Техніка автоматизованого тестування чи ні, тут виникає питання про доступні ресурси. Причини, через які нам потрібно автоматизуватись, полягають у перевірці, чи працюють потік даних та розроблена функціональність відповідно до очікувань без втручання вручну чи ні. Він в основному використовується в місцях, де програмне забезпечення матиме зміни у вигляді декількох випусків / циклів тощо.
найкращий засіб для чищення ПК для Windows 7 безкоштовно завантажити -
В кінці розробки кожного циклу буде проведено тестування доданої в даний час функціональності. Крім того, буде проведено тестування старої функціональності, щоб переконатися, що старі функціональні можливості не порушені. Це основна частина, яка має можливості для автоматизації.
Під час перевірки логіки на основі коду та вимог до графічного інтерфейсу можна вибрати автоматичне тестування за умови високого фактора ризику.
Приклад: Для програмного забезпечення ABC часті оновлення, оновлення, які шукає клієнт і надає розробники. Отже, в рамках тестування здійснюється регресія для програмного забезпечення, яке вже працює і працює у виробництві. Незалежно від будь-якої кількості випусків, оновлень та оновлень, поточна версія буде дійсною.
Припустимо, що для охоплення регресійним тестуванням потрібно 10 днів ручних зусиль, і тоді слід докласти максимум зусиль для їх автоматизації. Це може заощадити щонайменше 60% зусиль і 10 * 8 = 80 годин ручної роботи.
Автоматизацію можна виконати лише 80/24 = 3,33 дня. Це економить приблизно 6,67.
Чому автоматизація?
Автоматизацію можна вибрати лише тоді, коли:
- Додаток має дуже велику область з високим ступенем інвестування зусиль у регресію.
- Оптимізація витрат сталася через ручні помилки.
- Програмне забезпечення має кілька версій та випусків.
- Це рентабельно в довгостроковій перспективі.
- Фактор ризику вищий для ширшої сфери виконання тесту.
- Показники витрат та математичні розрахунки включені у функціональність програмного забезпечення.
- Зростає темп виконання, ефективність, а також якість програмного забезпечення.
- Час є меншим, навіть для тестування програмного забезпечення з високим ризиком.
Фактор ризику
Фактор ризику стає домінуюче поширеним у бізнесі, де існує багато залежностей від фактора часу. Програмне забезпечення, яке працює на основі транзакційних систем і працює в декількох додатках, вимагатиме, щоб програмне забезпечення діяло ідеально відповідно до дизайну програмного забезпечення. У цьому випадку існує багато ризиків, пов’язаних із записом правильної функціональної поведінки.
Тут автоматизація буде дуже корисною для виконання функціональних транзакцій з кращими темпами відповідно до програмного механізму.
Наприклад , у випадку з показником ринку Форекс фактор часу є дуже важливим і критичним. Зміни в запасах і товарах відбуваються з часом, іноді менше секунд. Тут автоматизація може допомогти у тестуванні такого програмного забезпечення з високим ризиком.
Приклад: Програмне забезпечення ABC має кілька оновлень та оновлень. З метою економії ручних зусиль та зменшення часу на обробку етапу тестування, базова версія або старі функції можуть бути автоматизовані. Це може стати дійсним лише тоді, коли базові функціональні можливості залишаться незмінними.
Перевага автоматизації полягає в тому, що їх можна запускати без будь-якого ручного втручання. Навіть це можна виконати паралельно з тестуванням нових функціональних можливостей. Отже, автоматизація економить багато зусиль та багато часу.
Коли не слід віддавати перевагу автоматизації?
Серед кількох організацій виникає запитання - чому 100% автоматизація неможлива?
Відповідь експертів така НЕ оскільки кваліфіковані користувачі повинні проводити автоматизоване тестування, а також вони повинні бути добре навчені. Автоматизацію не можна проводити на початковій стадії критеріїв, і вимоги заявок не будуть зрозумілі.
Зазвичай автоматизації надають перевагу з другої ітерації будь-якого випуску програмного забезпечення. Інтерфейс користувача може бути змінений, що є більш дорогим, а обслуговування сценарію також дорожче. Коли витрати на інструмент автоматизації перевищують бюджет проекту, ми можемо сказати, що ні.
Приклад: Програмне забезпечення XYZ - це тип веб-сайту для електронної комерції, де вимоги клієнта не заморожуються і постійно змінюються, коли їх вимагають клієнти.
Тут, у цьому випадку, автоматизація не може допомогти регресу. Це тому, що старі функціональні можливості, які не є дійсними, не слід перевіряти, а отже, їх потрібно робити вручну. Наприклад, клієнт повинен мати всі поля списку в базовому програмному забезпеченні, щоб їх можна було змінити як розкривні.
Вартість проти рентабельності інвестицій для автоматизації
Рентабельність інвестицій дуже низька, коли ми спочатку використовуємо автоматизацію, оскільки автоматизація вперше дорога. Рентабельність інвестицій зростає, оскільки ручні зусилля при тестуванні програмного забезпечення знижуються в порівнянні з ітераціями другого випуску. Ми повинні знати про очікуваний результат будь-якого тестового випадку до автоматизації.
Розгляньте дизайн тестових кейсів більш важливим при виборі автоматизації та будь-якого інструменту, щоб переконатися, що він не збільшить вартість.
Де автоматизація може зменшити мінімальне зниження витрат?
Навіть автоматизація коштує, оскільки необхідний інструмент для тестування потрібно придбати. Ресурси потрібно навчити за допомогою конкретного інструменту. Обраний інструмент повинен бути здійсненним для тестування всіх областей програмного забезпечення.
Отже, вибір інструменту повинен здійснюватися ретельно експертами з автоматизації тестування.
Приклад: Розглянемо продукт XYZ, який стосується страхування. Щоб знизити фактор витрат, компанія використовувала лише ручне тестування, але коли мова йде про страхування, фактор ризику високий і може коштувати фірмі грошей, коли якийсь із розрахунків премії піде не так. Весь збиток буде або для керівництва або кінцевому користувачеві. Кінцевий користувач не нестиме збитків, тоді як компанія повинна.
Коли розрахована сума премії не узгоджується з початковою премією (тобто), коли є різниця в розрахунку преміум-класу та задньої частини, тоді виникає велика проблема між замовником та продавцем товару. Він може містити багато модулів, таких як автомобілі, будинок та інші.
Коли щось піде не так, це повна втрата. Різниця в розрахунку може мати сенс для тестувальника та може спричинити помилки. У цьому проекті ручне тестування це можна зробити для базового інтерфейсу користувача, такого як перевірка номера TIN, соціального ідентифікатора та іншої інформації, пов’язаної з портфелем користувачів, і, отже, може бути перевірено вручну, коли фактор ризику низький. М або якщо компанія отримає прибуток, тим більше вони віддають перевагу автоматизації для тестування свого програмного забезпечення.
Висновок
Як автоматизація, так і ручне тестування мають свої переваги та недоліки. Тільки коли ми зрозуміємо поняття та вимоги, ми зможемо вибрати, яке саме тестування проводити.
Жоден проект не може бути протестований лише за допомогою ручного тестування або автоматизованого тестування. Це залежить від дизайну, платформи та технології, з якою розроблено програмне забезпечення. Отже, приймаючи рішення, потрібно бути обережним у виборі методу тестування та користуватися порадами експертів.
У наведеній вище статті ми могли пропустити кілька факторів, люб’язно поділіться факторами, які, на вашу думку, є важливими при виборі автоматизації або навіть інструментів для автоматизації.
Тим часом сміливо діліться своїми коментарями / пропозиціями щодо цієї статті.
Рекомендована література
- Найкращі засоби тестування програмного забезпечення 2021 р. (Інструменти автоматизації тестування якості)
- Проблеми, пов'язані з ручним та автоматичним тестуванням
- Топ 10+ найкращих книг про тестування програмного забезпечення (книги про тестування з ручного та автоматичного тестування)
- Тестування програмного забезпечення QA Assistant Job
- 11 найкращих засобів автоматизації для тестування програм для Android (Інструменти для тестування додатків Android)
- Ви фахівець з ручного тестування чи автоматизації? Підробіть для нас!
- Курс тестування програмного забезпечення: до якого інституту тестування програмного забезпечення слід приєднатися?
- Вибір тестування програмного забезпечення як вашу кар’єру