29. august 2019 - 9:00
Del det på:

Test-driven Development in JavaScript Workshop - 29-30 August 2019 | Technopolis (IT Fornebu) | torsdag, 29. august 2019

Test-driven development is one of these practices that seem deceptivly simple, and yet have a profound effect on how you build software and approach problems. Would you like to build quality into software from the very start, write code that is easy to maintain and have confidence to make big changes in your codebase? Have you ever tried TDD before and felt stuck and unproductive? Struggling with fragile and hard-to-maintain tests? Dive into the world of Test-Driven Development with this practical two-day workshop. Upon completion, you will understand the forces that helped shape TDD and experience its benefits first-hand.



Learn how to

Design and build software driven by tests
Prevent defects in your code
Be confident when refactoring and evolving design
Gather quick and early feedback by "listening" to your tests
Use test doubles (stubs, mocks and fake objects) to focus your tests
Apply best practices of TDD
Avoid common pitfalls of unit testing

Programme

Why and how of TDD - red-green-refactor
Introduction to Jest
Use unit-tests to capture requirements
Types of verification (results, state, interaction)
Focusing your tests
Control indirect inputs with stubs
Verify interactions with mocks
Write efficient tests with fake objects (time, http)
Improving your code with refactoring
Testing UI
Testing asynchronous code
Dependency injection
Ports and Adapters/hexagonal architecture
TDD best practices
Common unit-testing pitfalls

Audience
This workshop is designed for experienced Web Developers designing, creating and maintaining rich web applications. It will help you build quality into software from the start and bring you up to speed with modern software development practices.
Prerequisites
To get the most out of the workshop, you should have hands-on experience with JavaScript and software design.
Labs & Exercises
This workshop is a combination of lectures, discussions and practical exercises.
Installation Guide

Workstations with internet access
Git client
NodeJS 10
Google Chrome (or any other modern browser)
Visual Studio Code (or any other text-editor/IDE)

This is a BYOD (bring your own device) workshop.

About the Instructor

The passion for programming and making new discoveries took me from unlocking the secrets of C=64 machine language to all things web. Today, after 20 years of professional experience, the sheer excitement and pride of making a new technologies "work" is still driving me every day.
I've worked on various domains in different industries (e-government, fixed-odds betting, online gaming, social networks, investment banking) and with different technology stacks. Designed and helped building several scalable, high-throughput, low-latency transaction processing systems. One of the founding fathers of MindMup.
Today, I'm helping ambitious teams achieve their goals and improve how they build software.
Regularly giving talks at various meetups and software development conferences.