SlideShare una empresa de Scribd logo
1 de 36
Descargar para leer sin conexión
Injecting Acceptance TDD
or
why Test Automator Role
is DEAD
@adzynia
Saturday, October 12, 13
Test Engineer / Consultant /
Trainer
@adzynia
adzynia.com
ANDRII DZYNIA
Saturday, October 12, 13
Scrum Team
4 Developers
Tester
Test Automator
Business Analyst
Scrum Master
Saturday, October 12, 13
The Flow
Saturday, October 12, 13
The Flow
Saturday, October 12, 13
The Flow
Saturday, October 12, 13
To Do In Development Code Review Testing Demo
	
  User	
  
Story
	
  User	
  
Story
	
  User	
  
Story
	
  User	
  
Story
	
  User	
  
Story
	
  User	
  
Story
	
  User	
  
Story
2 Days Before Demo
Saturday, October 12, 13
Daily problems
There is no ID how I can catch the element
How I can test that?
How do you want me to show this on demo?
This is not what business initially wanted
Saturday, October 12, 13
Hidden problems
Acceptance Tests desynchronize with
development
Test automator is yesterday tester,
CODING skills are not identical to
programmer’s
Developers do not own acceptance
tests, "it's not our job"
Saturday, October 12, 13
Let’s try Acceptance TDD
Test-first, not test-after
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
BA Dev Tester
User
Story
Saturday, October 12, 13
Acceptance Scenarios
Testing Checklist
Testability Tasks
Outcome
Saturday, October 12, 13
Saturday, October 12, 13
Saturday, October 12, 13
Step 1
test automators to automate tests
in parallel with development
HAVE more discussion
on user story
Saturday, October 12, 13
New Problems
Requirements are not clear enough
Developers do not own acceptance tests
Test Automator fixing tests all the time
Saturday, October 12, 13
STEP 2
Make internal Acceptance TDD training
Prepare detailed description of the process
Explain how it should be to everyone
Saturday, October 12, 13
CORE Problem
Work as Acceptance TDD is hard
if you never tried TDD (test-first)
Saturday, October 12, 13
Step 3
Deep into and make hands dirty 
Implement feature in pair with
developers
Minimize test scenarios on UI layer
Saturday, October 12, 13
We remove test automator role
... And yes
Saturday, October 12, 13
Developer’s Excuses
Acceptance tests are slow 
(write small tests, cover as much as possible on layers below UI, cover on
UI at least positive cases that you are going to show on demo)
Writing tests required switching context
(Import acceptance test project into the same workspace, start application
implementation from Acceptance Test)
Tests are failing because of timeouts
(learn web driver deeper, hire web driver expert to the team to coach
people and adapting your framework, use JS calls) 
I do not have IE on my Laptop
(run tests under IE just on server, to debug configure remote web driver)
I do not want to wait until it finished
(make tests smaller, use web services as preconditions and post
conditions. Use HTTP request call if you do not have web service, minimize
tests on UI)
Requirements are not clear enough
(how could you start writing code if you do not understand the goal????)
Saturday, October 12, 13
Test Automaton Facts
Software developers are know
better to test something on layer
below and can do it during
implementation
Test Automator role rise from people who
was trying to automate manual testing
Saturday, October 12, 13
What Test Automators
do now?
Support injection of Acceptance TDD
Maintaining Acceptance Testing Framework
Helping to define testability spikes
Moving UI checks on lower layers
Saturday, October 12, 13
Test Automator
==
Software Developer
Saturday, October 12, 13
Test Automator
==
Software Developer
(in Test)
Saturday, October 12, 13
Lessons Learned
Define a test strategy
Make you hands duty 
Listen to the people
Pitch - not sell
Better to show rather than pitch
Saturday, October 12, 13
Test Automator role is
an excuse for developers
not to do
test Automation 
Saturday, October 12, 13
@adzynia
adzynia.com
Email:
me@adzynia.com
Saturday, October 12, 13
To Read
Saturday, October 12, 13

Más contenido relacionado

Más de Andrii Dzynia

Quality Built In @ Spotify
Quality Built In @ SpotifyQuality Built In @ Spotify
Quality Built In @ SpotifyAndrii Dzynia
 
How to Manage Testing in Dynamic World
How to Manage Testing in Dynamic WorldHow to Manage Testing in Dynamic World
How to Manage Testing in Dynamic WorldAndrii Dzynia
 
10 правил agile тестировщика IT-Brunch
10 правил agile тестировщика IT-Brunch10 правил agile тестировщика IT-Brunch
10 правил agile тестировщика IT-BrunchAndrii Dzynia
 
Working Software Over Comprehensive Documentation
Working Software Over Comprehensive DocumentationWorking Software Over Comprehensive Documentation
Working Software Over Comprehensive DocumentationAndrii Dzynia
 
«Самоорганизуй» себя, пока не «самоорганизовали» тебя
«Самоорганизуй» себя, пока не «самоорганизовали» тебя«Самоорганизуй» себя, пока не «самоорганизовали» тебя
«Самоорганизуй» себя, пока не «самоорганизовали» тебяAndrii Dzynia
 
Как не нужно писать Gherkin сценарии
Как не нужно писать Gherkin сценарииКак не нужно писать Gherkin сценарии
Как не нужно писать Gherkin сценарииAndrii Dzynia
 
iOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationiOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationAndrii Dzynia
 
10 правил Agile тестировщика
10 правил Agile тестировщика10 правил Agile тестировщика
10 правил Agile тестировщикаAndrii Dzynia
 
Что такое Exploratory Testing?
Что такое Exploratory Testing?Что такое Exploratory Testing?
Что такое Exploratory Testing?Andrii Dzynia
 
Software testing 2.0
Software testing 2.0Software testing 2.0
Software testing 2.0Andrii Dzynia
 
Тестировщики Vs Программисты
Тестировщики Vs ПрограммистыТестировщики Vs Программисты
Тестировщики Vs ПрограммистыAndrii Dzynia
 
Testing Dojo Kyiv - Testing Heuristics
Testing Dojo Kyiv - Testing HeuristicsTesting Dojo Kyiv - Testing Heuristics
Testing Dojo Kyiv - Testing HeuristicsAndrii Dzynia
 
Основы Self Management v. 2
Основы Self Management v. 2Основы Self Management v. 2
Основы Self Management v. 2Andrii Dzynia
 
Мастер Пустого Инбокса
Мастер Пустого ИнбоксаМастер Пустого Инбокса
Мастер Пустого ИнбоксаAndrii Dzynia
 
Инфраструктура Автоматизации Функционального Тестирования Web Приложений
Инфраструктура Автоматизации Функционального Тестирования Web ПриложенийИнфраструктура Автоматизации Функционального Тестирования Web Приложений
Инфраструктура Автоматизации Функционального Тестирования Web ПриложенийAndrii Dzynia
 
Виртуализация и Автоматизация Тестирования Мобильных Приложений
Виртуализация и Автоматизация Тестирования Мобильных ПриложенийВиртуализация и Автоматизация Тестирования Мобильных Приложений
Виртуализация и Автоматизация Тестирования Мобильных ПриложенийAndrii Dzynia
 
Инструменты Личной Эффективности
Инструменты Личной ЭффективностиИнструменты Личной Эффективности
Инструменты Личной ЭффективностиAndrii Dzynia
 
The Basics of Self Management
The Basics of Self ManagementThe Basics of Self Management
The Basics of Self ManagementAndrii Dzynia
 

Más de Andrii Dzynia (20)

Quality Built In @ Spotify
Quality Built In @ SpotifyQuality Built In @ Spotify
Quality Built In @ Spotify
 
How to Manage Testing in Dynamic World
How to Manage Testing in Dynamic WorldHow to Manage Testing in Dynamic World
How to Manage Testing in Dynamic World
 
ExtJS WebDriver
ExtJS WebDriverExtJS WebDriver
ExtJS WebDriver
 
10 правил agile тестировщика IT-Brunch
10 правил agile тестировщика IT-Brunch10 правил agile тестировщика IT-Brunch
10 правил agile тестировщика IT-Brunch
 
Working Software Over Comprehensive Documentation
Working Software Over Comprehensive DocumentationWorking Software Over Comprehensive Documentation
Working Software Over Comprehensive Documentation
 
«Самоорганизуй» себя, пока не «самоорганизовали» тебя
«Самоорганизуй» себя, пока не «самоорганизовали» тебя«Самоорганизуй» себя, пока не «самоорганизовали» тебя
«Самоорганизуй» себя, пока не «самоорганизовали» тебя
 
Как не нужно писать Gherkin сценарии
Как не нужно писать Gherkin сценарииКак не нужно писать Gherkin сценарии
Как не нужно писать Gherkin сценарии
 
iOS and Android Mobile Test Automation
iOS and Android Mobile Test AutomationiOS and Android Mobile Test Automation
iOS and Android Mobile Test Automation
 
10 правил Agile тестировщика
10 правил Agile тестировщика10 правил Agile тестировщика
10 правил Agile тестировщика
 
Что такое Exploratory Testing?
Что такое Exploratory Testing?Что такое Exploratory Testing?
Что такое Exploratory Testing?
 
Software testing 2.0
Software testing 2.0Software testing 2.0
Software testing 2.0
 
Тестировщики Vs Программисты
Тестировщики Vs ПрограммистыТестировщики Vs Программисты
Тестировщики Vs Программисты
 
Testing Dojo Kyiv - Testing Heuristics
Testing Dojo Kyiv - Testing HeuristicsTesting Dojo Kyiv - Testing Heuristics
Testing Dojo Kyiv - Testing Heuristics
 
Основы Self Management v. 2
Основы Self Management v. 2Основы Self Management v. 2
Основы Self Management v. 2
 
Mobile Automation
Mobile AutomationMobile Automation
Mobile Automation
 
Мастер Пустого Инбокса
Мастер Пустого ИнбоксаМастер Пустого Инбокса
Мастер Пустого Инбокса
 
Инфраструктура Автоматизации Функционального Тестирования Web Приложений
Инфраструктура Автоматизации Функционального Тестирования Web ПриложенийИнфраструктура Автоматизации Функционального Тестирования Web Приложений
Инфраструктура Автоматизации Функционального Тестирования Web Приложений
 
Виртуализация и Автоматизация Тестирования Мобильных Приложений
Виртуализация и Автоматизация Тестирования Мобильных ПриложенийВиртуализация и Автоматизация Тестирования Мобильных Приложений
Виртуализация и Автоматизация Тестирования Мобильных Приложений
 
Инструменты Личной Эффективности
Инструменты Личной ЭффективностиИнструменты Личной Эффективности
Инструменты Личной Эффективности
 
The Basics of Self Management
The Basics of Self ManagementThe Basics of Self Management
The Basics of Self Management
 

Último

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 

Último (20)

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 

Injecting Acceptance TDD