SlideShare a Scribd company logo
1 of 58
Download to read offline
{
Dawn Code, TriAgile 2016
Pair Development from
the Trenches
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Who am I?
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Test Driven … What?
http://www.agilenutshell.com/test_driven_development
Dawn Code, TriAgile 2016
Pair Programming? No, Pair
Development!
https://developer.atlassian.com/blog/2015/05/try-pair-programming/images/the-noob.jpg
{
Dawn Code, TriAgile 2016
Who can do what, specifically?
But … How, Exactly?
Dawn Code, TriAgile 2016
Ñ Developers:
Ñ Write Clean Production Code
Ñ Testers:
Ñ Perform Exploratory Testing
Ñ AND nowadays are expected to write Clean
Test Code
Ñ Do you hear much about developers learning
Testing skills?
Typically …
Dawn Code, TriAgile 2016
Developer
Tester
Unit Tests Functional
Tests
Integration
Tests
Exploratory
Tests
Skills Overlap
Dawn Code, TriAgile 2016
http://vignette3.wikia.nocookie.net/clubpenguin/images/8/8e/
Hard_Hat_clothing_icon_ID_403.png/revision/latest?cb=20140728003356
Developer Hat vs Tester Hat
Who can wear each hat?
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Dawn Code, TriAgile 2016
Feature Definition
Dawn Code, TriAgile 2016
Feature Definition
Dawn Code, TriAgile 2016
Feature Definition
Dawn Code, TriAgile 2016
Unit Tests
Dawn Code, TriAgile 2016
Unit Tests
Dawn Code, TriAgile 2016
Unit Tests ?
Dawn Code, TriAgile 2016
Unit Tests
Dawn Code, TriAgile 2016
Integration Tests
Dawn Code, TriAgile 2016
Integration Tests
Dawn Code, TriAgile 2016
Integration Tests ?
Dawn Code, TriAgile 2016
Integration Tests
Dawn Code, TriAgile 2016
Production Code
Dawn Code, TriAgile 2016
Production Code
Dawn Code, TriAgile 2016
Production Code ?
Dawn Code, TriAgile 2016
Production Code
Dawn Code, TriAgile 2016
Test Code 

(Functional)
Dawn Code, TriAgile 2016
Test Code 

(Functional)
?
Dawn Code, TriAgile 2016
Test Code 

(Functional)
Dawn Code, TriAgile 2016
Test Code 

(Functional)
Dawn Code, TriAgile 2016
Exploration
Dawn Code, TriAgile 2016
Exploration
?
Dawn Code, TriAgile 2016
Exploration
Dawn Code, TriAgile 2016
Exploration
Dawn Code, TriAgile 2016
Test Cases
Dawn Code, TriAgile 2016
Test Cases
?
Dawn Code, TriAgile 2016
Test Cases
Dawn Code, TriAgile 2016
Test Cases
Dawn Code, TriAgile 2016
Evidence
Dawn Code, TriAgile 2016
Evidence
Dawn Code, TriAgile 2016
Evidence
Dawn Code, TriAgile 2016
Evidence
Dawn Code, TriAgile 2016
Signatures
Dawn Code, TriAgile 2016
Signatures
Dawn Code, TriAgile 2016
Signatures
Dawn Code, TriAgile 2016
Signatures
Dawn Code, TriAgile 2016
Stop! Demo Time!
Dawn Code, TriAgile 2016
Stop! Demo Time!
Dawn Code, TriAgile 2016
Further Learning
Ñ Test Heuristics Cheat Sheet: http://
testobsessed.com/wp-content/uploads/
2011/04/testheuristicscheatsheetv1.pdf
Ñ Explore It! https://pragprog.com/book/ehxta/
explore-it
Ñ Test Heuristic Strategy Model: http://
www.satisfice.com/tools/htsm.pdf
Ñ A List of Recommended Books: http://
www.satisfice.com/bibliography.shtml
{ {
Dawn Code, TriAgile 2016
https://
dawntestcode.github.io/
dev-test-bug
This Example
https://github.com/
dawnTestCode/dev-test-
bug
Dawn Code, TriAgile 2016
Questions?

More Related Content

Similar to Pair Development from the Trenches

Visual Regression Testing at the Speed of Unit Testing -- by Gil Tayar
Visual Regression Testing at the Speed of Unit Testing -- by Gil TayarVisual Regression Testing at the Speed of Unit Testing -- by Gil Tayar
Visual Regression Testing at the Speed of Unit Testing -- by Gil Tayar
Applitools
 

Similar to Pair Development from the Trenches (20)

Top 5 Code Coverage Tools in DevOps
Top 5 Code Coverage Tools in DevOpsTop 5 Code Coverage Tools in DevOps
Top 5 Code Coverage Tools in DevOps
 
Patterns of Automation: Simplify Your Test Code
Patterns of Automation: Simplify Your Test CodePatterns of Automation: Simplify Your Test Code
Patterns of Automation: Simplify Your Test Code
 
Testing GraphQL in Your JavaScript Application: From Zero to Hundred Percent
Testing GraphQL in Your JavaScript Application: From Zero to Hundred PercentTesting GraphQL in Your JavaScript Application: From Zero to Hundred Percent
Testing GraphQL in Your JavaScript Application: From Zero to Hundred Percent
 
Introduction of Tools for providing rich user experience in debugger
Introduction of Tools for providing rich user experience in debuggerIntroduction of Tools for providing rich user experience in debugger
Introduction of Tools for providing rich user experience in debugger
 
How to manage test automation complexity
How to manage test automation complexityHow to manage test automation complexity
How to manage test automation complexity
 
JS performance tools
JS performance toolsJS performance tools
JS performance tools
 
Android reverse engineering - Analyzing skype
Android reverse engineering - Analyzing skypeAndroid reverse engineering - Analyzing skype
Android reverse engineering - Analyzing skype
 
TDD: seriously, try it! 
TDD: seriously, try it! TDD: seriously, try it! 
TDD: seriously, try it! 
 
Visual Regression Testing at the Speed of Unit Testing -- by Gil Tayar
Visual Regression Testing at the Speed of Unit Testing -- by Gil TayarVisual Regression Testing at the Speed of Unit Testing -- by Gil Tayar
Visual Regression Testing at the Speed of Unit Testing -- by Gil Tayar
 
.concat() 2018 – How I boosted my Dev teams confidence – Lighting talk
.concat() 2018 – How I boosted my Dev teams confidence – Lighting talk.concat() 2018 – How I boosted my Dev teams confidence – Lighting talk
.concat() 2018 – How I boosted my Dev teams confidence – Lighting talk
 
Working With Legacy Code
Working With Legacy CodeWorking With Legacy Code
Working With Legacy Code
 
Deliberate Practice, New Learning Styles (2015)
Deliberate Practice, New Learning Styles (2015)Deliberate Practice, New Learning Styles (2015)
Deliberate Practice, New Learning Styles (2015)
 
Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019Developing an Ember Test Strategy - EmberConf 2019
Developing an Ember Test Strategy - EmberConf 2019
 
Build the Right Product Right: Transitioning Test from Critiquing to Defining
Build the Right Product Right: Transitioning Test from Critiquing to DefiningBuild the Right Product Right: Transitioning Test from Critiquing to Defining
Build the Right Product Right: Transitioning Test from Critiquing to Defining
 
클린 테스트
클린 테스트클린 테스트
클린 테스트
 
Testing Challenges within Agile Teams
Testing Challenges within Agile TeamsTesting Challenges within Agile Teams
Testing Challenges within Agile Teams
 
Gatling riviera dev
Gatling riviera devGatling riviera dev
Gatling riviera dev
 
Achieving Technical Excellence in Your Software Teams - from Devternity
Achieving Technical Excellence in Your Software Teams - from Devternity Achieving Technical Excellence in Your Software Teams - from Devternity
Achieving Technical Excellence in Your Software Teams - from Devternity
 
How to Maximize the Role of Insights Throughout the Product Lifecycle
How to Maximize the Role of Insights Throughout the Product LifecycleHow to Maximize the Role of Insights Throughout the Product Lifecycle
How to Maximize the Role of Insights Throughout the Product Lifecycle
 
Code Review: How and When
Code Review: How and WhenCode Review: How and When
Code Review: How and When
 

More from Dawn Code

More from Dawn Code (17)

Executable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and SeleniumExecutable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and Selenium
 
Executable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and SeleniumExecutable Specifications with FitNesse and Selenium
Executable Specifications with FitNesse and Selenium
 
A Sampling of Tools
A Sampling of ToolsA Sampling of Tools
A Sampling of Tools
 
Testing in the Wild
Testing in the WildTesting in the Wild
Testing in the Wild
 
Fitting Organizational Structure
Fitting Organizational StructureFitting Organizational Structure
Fitting Organizational Structure
 
Pair development
Pair developmentPair development
Pair development
 
Remote Dev/Test Pairing
Remote Dev/Test PairingRemote Dev/Test Pairing
Remote Dev/Test Pairing
 
Crowdsource Your Career
Crowdsource Your CareerCrowdsource Your Career
Crowdsource Your Career
 
How Low Can Your Tests Go
How Low Can Your Tests GoHow Low Can Your Tests Go
How Low Can Your Tests Go
 
Writing Maintainable Test Automation
Writing Maintainable Test AutomationWriting Maintainable Test Automation
Writing Maintainable Test Automation
 
Exploratory testing part 2
Exploratory testing part 2Exploratory testing part 2
Exploratory testing part 2
 
Exploratory testing part 1
Exploratory testing part 1Exploratory testing part 1
Exploratory testing part 1
 
Exploratory testing part 3
Exploratory testing part 3Exploratory testing part 3
Exploratory testing part 3
 
Agile and Exploratory Testing Jeopardy
Agile and Exploratory Testing JeopardyAgile and Exploratory Testing Jeopardy
Agile and Exploratory Testing Jeopardy
 
Page objects: the good, the bad, the ugly
Page objects: the good, the bad, the uglyPage objects: the good, the bad, the ugly
Page objects: the good, the bad, the ugly
 
Testing Legacy Apps Mindmap
Testing Legacy Apps MindmapTesting Legacy Apps Mindmap
Testing Legacy Apps Mindmap
 
Testing Legacy Apps
Testing Legacy AppsTesting Legacy Apps
Testing Legacy Apps
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 

Recently uploaded (20)

The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodologyPharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 

Pair Development from the Trenches