Зоряна Борбулевич "Підхід, який трансформував компанію Microsoft: ННК і його...
Оля Фейдак “Is there life during regression?”
1. Is there life during
regression?
Tips & tricks how to survive
Olga Feidak
Software Testing Engineer
at EPAM Systems
2. Who am I ?
• Olga Feidak
• Software Testing Engineer
• 3 years in IT
• Desktop app, web admin part,
mobile iPad version
3. Agenda
•How people see the regression
•What is the regression?
•Pros and Cons of regression?
•How to tackle the Cons?
•Questions
4. Feedbacks
“Регресія - це перевірка існуючого
функціоналу після внесення змін або
рефакторингу. Зазвичай проводиться
вкінці спринта перед релізом”
“Безстрессове сіре існування.... ну і
після 18 години якісь пульси
життєві також дають знати”
“Регресія – це можливість вкотре
пройтися широкими шляхами та
вузькими стежками програми і
впритул поглянути на наслідки і
результати впроваджених змін”
“Регресія - це як щоденне піклування
про дитину :) - перевіряти, чи нема в
неї температури, чи вона не хвора, чи
поїла, добре вдягнена. Батьки, які
люблять дитину, не будуть від цього
рятуватись, бо це частина їх життя і
вони хочуть це робити”
5. What Regression testing is?
Regression testing - testing of a previously tested program following
modification to ensure that defects have not been introduced or
uncovered in unchanged areas of the software, as a result of the changes
made. It is performed when the software or its environment is changed.
(by ISTQB Glossary)
6. Pros of Regression Testing
❏ You check that APP is alive
❏ You give the client aproove that APP is alive
❏ You find new bug/improvements
❏ You check your test cases or develop new one
❏ You can use new approaches for testing
7. Cons of Regression Testing
❖ Repetitive activity
❖ No possibility to develop
❖ The Pesticide Paradox
❖ Boring routine
❖ Easy to procrastinate
❖ Takes time when no time is
❖ Rush within deadlines
8. 1. Workarounds (skip step, add step, repeat
step, replace steps)
How to tackle the Cons? Part 1
2. Is it mentioned in documentation?
3. Use end-to-end testing for each test case:
can you follow actions from the click
to the record in DB ?
4. How many? (ways, buttons, templates)
9. How to tackle the Cons? Part 2
5. Is the new forgotten old? - “Baby
approach”
6. Is the software defect-free? - No!
7. Three phase regression testing
10. Instead of summary
Regression becomes bad if only stop seeing it as the
possibility to find and learn something new in old.
Spice your tests a bit!
Editor's Notes
I’m working in the IT sphere approximately 3 years.
At EPAM Systems
Heas experience in desktop application testing
Main areas ofresponsibilities: Functional, Smoke, Regression testing
You may ask why i chose this topic? - the reason is we test application for each new build before it is presented and installed to the clients of our customer. Thus, regression is ‘daily bread’ of our testing activities
Starting to work on the topic I made little survey with question “ How do you see regression testing?” and ‘What is regression testing for you?’
The formal terms for the regression given by ISTQB
Повторювальні, механічні дії (пройти тест, поставити статус, написати відмітку, поставити поагний статус, описази дефект)
Поки ранаки тейси нові фічі, технології не використовуються
Парадокс пестициду - якщо мозок звик, що щось працює, не копає глибше і може новостворені дефекти знайти
Під час монотонної роботи легко відволіктися і не докопати якусь невідповідність зі степом чи отриманим результатом.
Регресія займає багато часу, (особливо під час повної регресії) фактично з нуля потрібно перевірити всі колись і тепер існуючі функціональності
Коли є дедлайни по регресії і великий скоуп починається паніка, що “Нічого не встигаєм” або “Всьо пропало!”.
Workround - can you avoid some steps? Can you repite some steps? Can you do same action in other way?
Read documentation again - You can find something new! And imagine new logical ideas can be found to be missed
End-To-End - follow the data pass or log tracking or data in DB update after each action or step
How many? - now many time can I repeate this step(clic kthe button, reload the page, generate the report, click edit, how many way to put file there)
What’s new - imagine you see your site, application for first time, as child do not know what the think is and try to make up what can do with it.
Use anger becease there is no defect-free softwave - you will fidn defect!
what can happen if ‘do not check if the child if worn or is walking with temperature?’
Three phase-1. Focused regression(the las fixes or new functionality connected with old one) Expanded regression (usually automated , for functionality not directly connecte to the changes functionality) New relese functionality regression - wefocus only on the newlyadded functionality and select only 30 % of the created cases - all of it helps to reduce the period andeffor of regression testing
Just remember every new view can find some inconsistency or defect or bug. But it depends on the person - it will be your view or somebody’s else.
Defect-free software does not exist. - The regression is time span to make APP better.