SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
NodeJS:
                         Writing Tests
                           A Beginners’ Guide
                   Docs: http://conancat.github.com/node-test-examples/
                  Github: https://github.com/conancat/node-test-examples



                                 Prepared by Grey Ang
                            @conancat | conancat@gmail.com



Wednesday, April 3, 13
Why write tests?



Wednesday, April 3, 13
Programming should be fun




Wednesday, April 3, 13
...and not
                         frustrating.



Wednesday, April 3, 13
The biggest joy in
                    programming is knowing
                      what you write does
                     what it intended to do,
                      and it doesn’t break
                         anything else.

Wednesday, April 3, 13
We all want a peace of
                      mind. Nirvana.




Wednesday, April 3, 13
...but we’re all lazy asses.
                         Trust me, I know. I am one too.




Wednesday, April 3, 13
Most common excuses to
                    not write tests
                         Laziness: “Writing tests is such a chore!”

                         Perceived busyness: “We have too many things to
                         do! We have other targets to hit!”

                         OverconïŹdence: “This function is really easy. I can
                         handle this.”

                         Ego: “Come on, real men doesn’t need to test their
                         code. It’ll deïŹnitely work. Trust me, I’m a
                         programmer.”


Wednesday, April 3, 13
What are the
                         consequences?



Wednesday, April 3, 13
96% of programmers do this to their
                         computers at least once a week.

                         (Okay, I made up that number.
                         But we all know how that feels.)




Wednesday, April 3, 13
Shit programmers deal with
                          Old code breaks when      Your code just broke other
                          you write new code        people’s code

                          Code that you wrote is    You spend 8 hours
                          slow as hell              debugging your code and
                                                    other people’s code
                          What you’ve done is not
                          what it supposed to do    ...to name a few.

Wednesday, April 3, 13
Whose fault is it?
              Yours, of course.




Wednesday, April 3, 13
If you’re a true lazy
                    programmer that doesn’t
                    wanna deal with all that
                        shit, write tests.
                         Mark my words. You won’t regret it.




Wednesday, April 3, 13
TDD & BDD
                         Two jargons you should know
                                since yesterday




Wednesday, April 3, 13
Test Driven
                    Development (TDD)
                   “...the developer writes an (initially failing)
                   automated test case that deïŹnes a desired
                   improvement or new function, then produces
                   the minimum amount of code to pass that test,
                   and ïŹnally refactors the new code to
                   acceptable standards.”

                   http://en.wikipedia.org/wiki/Test-driven_development


Wednesday, April 3, 13
Test Driven
                    Development (TDD)
                         Step 1: Write Test

                         Step 2: Run the test.
                         (It will fail, trust me. It’s okay. Take a deep breath. )

                         Step 3: Write the MINIMUM AMOUNT code to make
                         the test pass

                         Step 4: Test performance of code to optimal levels

                         Step 5: Celebrate that your code works wonderfully

                         Step 6: Write tests, rinse and repeat.

Wednesday, April 3, 13
Problems with traditional TDD
                         Test cases are written for the code -- not for the
                         manager, client, or the users of the system.

                         Code works with the test, code passes the test, but
                         code FAIL with user behavior or client requirements.

                         Traditional TDD is great for development. But if we
                         want code that WORKS, we need to involve the people
                         who spec the app.

                         Remember, code is written for the beneïŹt of people!



Wednesday, April 3, 13
Introducing
                         Behavior Driven
                          Development
                         It’s just like TDD, really. Only better.




Wednesday, April 3, 13
Behavior Driven
                    Development (BDD)
                   “...combines the general techniques and
                   principles of TDD with ideas from domain-
                   driven design and object-oriented analysis
                   and design to provide software developers
                   and business analysts with shared tools and a
                   shared process to collaborate on software
                   development.”
                    http://en.wikipedia.org/wiki/Behavior-driven_development


Wednesday, April 3, 13
Behavior Driven
                    Development (BDD)
                         Step 1: Gather (and argue) requirements from the business side
                         or your users on what should be done

                         Step 2: Write test cases to meet the pre-deïŹned business
                         requirements

                         Step 3: Write the MINIMUM AMOUNT code to make the test
                         pass

                         Step 4: Show it to your business partner

                         Step 5: ???

                         Step 6: ProïŹt!

Wednesday, April 3, 13
“With great power,
                            comes great
                          responsibility.”
                           -- Uncle Ben, Spiderman




Wednesday, April 3, 13
You’re a web developer.
                              You make websites.

                         You’re Spiderman.
                         Remember, you work with machines AND people.
                                   You write code for people.




Wednesday, April 3, 13
4 Test Situations
                          that we’ll be doing today

                         Functional and module testing

                         Handling database calls

                         Testing REST API layers

                         Headless browser testing



Wednesday, April 3, 13
Best way to learn is by
                    doing it yourself.
                     So, lift your lazy ass and go clone this repo
                     and start playing around.

                     https://github.com/conancat/node-test-examples




Wednesday, April 3, 13
Need help? SHOUT!
                            Or you can just talk to me at
                         @conancat on Twitter, or email me at
                               conancat@gmail.com.




Wednesday, April 3, 13
Thanks for coming!
                             Be a good Spiderman!




Wednesday, April 3, 13

Weitere Àhnliche Inhalte

Ähnlich wie NodeJS: Writing tests -- A Beginners' Guide

10 tips to save you time and frustration while programming
10 tips to save you time and frustration while programming10 tips to save you time and frustration while programming
10 tips to save you time and frustration while programmingHugo Shi
 
Fault Tolerance 101
Fault Tolerance 101 Fault Tolerance 101
Fault Tolerance 101 C4Media
 
Software development
Software developmentSoftware development
Software developmentOlivier Marechal
 
Documentation for developers
Documentation for developersDocumentation for developers
Documentation for developersMichael Marotta
 
Engineering culture
Engineering cultureEngineering culture
Engineering culturePamela Fox
 
On Readability of Code
On Readability of CodeOn Readability of Code
On Readability of CodeArun Saha
 
Selective 97 things every programmer should know
Selective 97 things every programmer should knowSelective 97 things every programmer should know
Selective 97 things every programmer should knowMuhammad Ahsan
 
97 thingseveryprogrammershouldknow
97 thingseveryprogrammershouldknow97 thingseveryprogrammershouldknow
97 thingseveryprogrammershouldknowREHAN KHAN
 
Road map to competitive programming
Road map to competitive programmingRoad map to competitive programming
Road map to competitive programmingTutort Academy
 
Cinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsCinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsSteven Smith
 
Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...
Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...
Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...RootedCON
 
apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...
apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...
apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...apidays
 
Culture And Aesthetic Revisited
Culture And Aesthetic RevisitedCulture And Aesthetic Revisited
Culture And Aesthetic RevisitedAdam Keys
 
Coding Camp Day 1 Presentation
Coding Camp Day 1 PresentationCoding Camp Day 1 Presentation
Coding Camp Day 1 PresentationAnnamarie Carlson
 
Software Debugging for High-altitude Balloons
Software Debugging for High-altitude BalloonsSoftware Debugging for High-altitude Balloons
Software Debugging for High-altitude Balloonsjgrahamc
 
The Data-First approach to Learning Coding 2.0
The Data-First approach to Learning Coding 2.0The Data-First approach to Learning Coding 2.0
The Data-First approach to Learning Coding 2.0Ato Mensah
 
Untangling spring week8
Untangling spring week8Untangling spring week8
Untangling spring week8Derek Jacoby
 
When Tdd Goes Awry
When Tdd Goes AwryWhen Tdd Goes Awry
When Tdd Goes AwryUberto Barbini
 

Ähnlich wie NodeJS: Writing tests -- A Beginners' Guide (20)

10 tips to save you time and frustration while programming
10 tips to save you time and frustration while programming10 tips to save you time and frustration while programming
10 tips to save you time and frustration while programming
 
Fault Tolerance 101
Fault Tolerance 101 Fault Tolerance 101
Fault Tolerance 101
 
Pair Programming
Pair ProgrammingPair Programming
Pair Programming
 
Software development
Software developmentSoftware development
Software development
 
Documentation for developers
Documentation for developersDocumentation for developers
Documentation for developers
 
Engineering culture
Engineering cultureEngineering culture
Engineering culture
 
On Readability of Code
On Readability of CodeOn Readability of Code
On Readability of Code
 
Selective 97 things every programmer should know
Selective 97 things every programmer should knowSelective 97 things every programmer should know
Selective 97 things every programmer should know
 
97 thingseveryprogrammershouldknow
97 thingseveryprogrammershouldknow97 thingseveryprogrammershouldknow
97 thingseveryprogrammershouldknow
 
Road map to competitive programming
Road map to competitive programmingRoad map to competitive programming
Road map to competitive programming
 
Cinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsCinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patterns
 
Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...
Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...
Joxean Koret - Interactive Static Analysis Tools for Vulnerability Discovery ...
 
apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...
apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...
apidays LIVE New York 2021 - Why Software Teams Struggle with API Security Te...
 
Culture And Aesthetic Revisited
Culture And Aesthetic RevisitedCulture And Aesthetic Revisited
Culture And Aesthetic Revisited
 
Coding Camp Day 1
Coding Camp Day 1Coding Camp Day 1
Coding Camp Day 1
 
Coding Camp Day 1 Presentation
Coding Camp Day 1 PresentationCoding Camp Day 1 Presentation
Coding Camp Day 1 Presentation
 
Software Debugging for High-altitude Balloons
Software Debugging for High-altitude BalloonsSoftware Debugging for High-altitude Balloons
Software Debugging for High-altitude Balloons
 
The Data-First approach to Learning Coding 2.0
The Data-First approach to Learning Coding 2.0The Data-First approach to Learning Coding 2.0
The Data-First approach to Learning Coding 2.0
 
Untangling spring week8
Untangling spring week8Untangling spring week8
Untangling spring week8
 
When Tdd Goes Awry
When Tdd Goes AwryWhen Tdd Goes Awry
When Tdd Goes Awry
 

KĂŒrzlich hochgeladen

Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 

KĂŒrzlich hochgeladen (20)

Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

NodeJS: Writing tests -- A Beginners' Guide

  • 1. NodeJS: Writing Tests A Beginners’ Guide Docs: http://conancat.github.com/node-test-examples/ Github: https://github.com/conancat/node-test-examples Prepared by Grey Ang @conancat | conancat@gmail.com Wednesday, April 3, 13
  • 3. Programming should be fun Wednesday, April 3, 13
  • 4. ...and not frustrating. Wednesday, April 3, 13
  • 5. The biggest joy in programming is knowing what you write does what it intended to do, and it doesn’t break anything else. Wednesday, April 3, 13
  • 6. We all want a peace of mind. Nirvana. Wednesday, April 3, 13
  • 7. ...but we’re all lazy asses. Trust me, I know. I am one too. Wednesday, April 3, 13
  • 8. Most common excuses to not write tests Laziness: “Writing tests is such a chore!” Perceived busyness: “We have too many things to do! We have other targets to hit!” OverconïŹdence: “This function is really easy. I can handle this.” Ego: “Come on, real men doesn’t need to test their code. It’ll deïŹnitely work. Trust me, I’m a programmer.” Wednesday, April 3, 13
  • 9. What are the consequences? Wednesday, April 3, 13
  • 10. 96% of programmers do this to their computers at least once a week. (Okay, I made up that number. But we all know how that feels.) Wednesday, April 3, 13
  • 11. Shit programmers deal with Old code breaks when Your code just broke other you write new code people’s code Code that you wrote is You spend 8 hours slow as hell debugging your code and other people’s code What you’ve done is not what it supposed to do ...to name a few. Wednesday, April 3, 13
  • 12. Whose fault is it? Yours, of course. Wednesday, April 3, 13
  • 13. If you’re a true lazy programmer that doesn’t wanna deal with all that shit, write tests. Mark my words. You won’t regret it. Wednesday, April 3, 13
  • 14. TDD & BDD Two jargons you should know since yesterday Wednesday, April 3, 13
  • 15. Test Driven Development (TDD) “...the developer writes an (initially failing) automated test case that deïŹnes a desired improvement or new function, then produces the minimum amount of code to pass that test, and ïŹnally refactors the new code to acceptable standards.” http://en.wikipedia.org/wiki/Test-driven_development Wednesday, April 3, 13
  • 16. Test Driven Development (TDD) Step 1: Write Test Step 2: Run the test. (It will fail, trust me. It’s okay. Take a deep breath. ) Step 3: Write the MINIMUM AMOUNT code to make the test pass Step 4: Test performance of code to optimal levels Step 5: Celebrate that your code works wonderfully Step 6: Write tests, rinse and repeat. Wednesday, April 3, 13
  • 17. Problems with traditional TDD Test cases are written for the code -- not for the manager, client, or the users of the system. Code works with the test, code passes the test, but code FAIL with user behavior or client requirements. Traditional TDD is great for development. But if we want code that WORKS, we need to involve the people who spec the app. Remember, code is written for the beneïŹt of people! Wednesday, April 3, 13
  • 18. Introducing Behavior Driven Development It’s just like TDD, really. Only better. Wednesday, April 3, 13
  • 19. Behavior Driven Development (BDD) “...combines the general techniques and principles of TDD with ideas from domain- driven design and object-oriented analysis and design to provide software developers and business analysts with shared tools and a shared process to collaborate on software development.” http://en.wikipedia.org/wiki/Behavior-driven_development Wednesday, April 3, 13
  • 20. Behavior Driven Development (BDD) Step 1: Gather (and argue) requirements from the business side or your users on what should be done Step 2: Write test cases to meet the pre-deïŹned business requirements Step 3: Write the MINIMUM AMOUNT code to make the test pass Step 4: Show it to your business partner Step 5: ??? Step 6: ProïŹt! Wednesday, April 3, 13
  • 21. “With great power, comes great responsibility.” -- Uncle Ben, Spiderman Wednesday, April 3, 13
  • 22. You’re a web developer. You make websites. You’re Spiderman. Remember, you work with machines AND people. You write code for people. Wednesday, April 3, 13
  • 23. 4 Test Situations that we’ll be doing today Functional and module testing Handling database calls Testing REST API layers Headless browser testing Wednesday, April 3, 13
  • 24. Best way to learn is by doing it yourself. So, lift your lazy ass and go clone this repo and start playing around. https://github.com/conancat/node-test-examples Wednesday, April 3, 13
  • 25. Need help? SHOUT! Or you can just talk to me at @conancat on Twitter, or email me at conancat@gmail.com. Wednesday, April 3, 13
  • 26. Thanks for coming! Be a good Spiderman! Wednesday, April 3, 13