AARON ABRAMOV // JEST (FACEBOOK)
Aaron Abramov is a Software Engineer at Facebook working on test infrastructure and is a Jest contributor. Aaron enjoys working on tools and infrastructure that help other engineers be more productive.
Establishing testing patterns with software design principles
Lack of clarity about testing React applications leads engineers to write low-quality tests that don’t catch bugs, break unnecessarily, and are hard to write; therefore, we need established patterns to write tests for single page applications, just as there are established patterns to write single page applications.
GLEB BAHMUTOV // CYPRESS
BRIAN MANN // CYPRESS
Brian Mann is an Author of "Backbone Rails" and founder of Cypress.io, Brian is an awesome developer who has made a career out of developing open source end to end testing tools. A conference speaker and software engineer, Brian will not rest until writing tests for the real browser is as simple as coding unit tests.
I see your point, but…
These two speakers work together making awesome testing tools, yet they often disagree on how to produce high quality software. In this presentation they will respectfully argue about: test-driven development vs end to end tests / stubs and mocks / cross-browser testing / code and data coverage / picking the right test framework / snapshot testing / legacy browser environment support / crash reporting and performance monitoring / earning living by writing OSS testing tools.
JESSICA JORDAN // SIMPLABS
Jessica is a Berlin-based software engineer working at simplabs. She is part of the Ember.js Learning Team, co-organizing the monthly Ember.js meetup group in Berlin and she’s an editor at the Ember.js Times. Apart from that, Jessica is a big fan of CSS, art and comics.
KENT C. DODDS // PAYPAL
Write tests. Not too many. Mostly integration.
Automated tests are an important part of raising your confidence when releasing software. They can speed you up or slow you down depending on how you write them and which form of testing you focus your test writing on. In this talk, we’ll cover the value of automated testing and where your efforts should be focused to strike the best balance of confidence and effort.
JUSTIN SEARLS // TEST DOUBLE
Nobody knows bad code like Justin Searls — he writes bad code effortlessly. And it's given him the chance to study why the industry has gotten so good at making bad software. That's why he co-founded Test Double, an agency focused on fixing everything that's broken about software.
Don’t mock me
Confusion over test doubles starts with what to even call them. You might know them as stubs, proxies, mocks, or spies (but I call them test doubles, because a book you've probably never read declared it to be the most general term). I've spent a decade fascinated by the disconnect between why test double libraries were invented and how they are actually used by teams. What I've learned: their purpose fills a little-known but valuable niche, whereas their appeal addresses a mainstream but self-destructive impulse. If you don't leave this talk with a clearer distinction between tests that ensure safe changes versus tests that promote simple designs, I'll give you your 45 minutes back. Once that groundwork is laid, you'll better understand the characteristics that matter most in a test double library and the nuanced rules that should govern their use. I've found this clarity invaluable for producing valuable tests and maintainable code, and I think you will too.
TRENT WILLIS // NETFLIX
Trent Willis is a Senior UI Engineer at Netflix, where he builds tools and applications to give others insight into their products. He's also a self-professed music junkie, project lead for the QUnit testing framework, and frequent contributor to various Open Source projects.
One of the primary goals for testing software is to have confidence that your software works as intended, but this doesn't give much insight into the quality of the software. Is it performant? Does the design look right? Are we sending too much code? Answering these questions in an automated fashion today is hard, but that will be changing in the future. In this talk, we'll explore how recent changes in technology give us a foundation to start answering the questions posed above and so much more. We'll look at a near future where we have confidence that our software is functional and works well.
jesse palmer // Capital one
Jesse is a coauthor of Testing Angular Applications that will publish in Spring 2018, and is a Senior Engineering Manager at Capital One. He leads a team that works on an Angular-based web platform called DevExchange. Jesse is also a current member of the Angular organization. When he isn't coding, you can find him playing video games or cheering on his beloved Virginia Tech Hokies.
Testing Angular Components Fundamentals
In the Angular world, the most common concept that you stumble upon is components. Since components are everywhere, it is critical that you understand how to test them. In this talk, you will learn the fundamentals of how to test Angular components. By the end of the talk, you will have the confidence to start writing tests for your components.
MARY SNOW // CODESMITH
As a software developer and advocate for women in tech, Mary Snow spends her time teaching web development technologies to experienced engineers at Codesmith, an engineering residency program. She works with everyone from those first starting out to students studying advanced design patterns. She recently worked on ExpressiveJs, an Express application debugging tool, helping developers through callback hell.
Testing React Applications
React continues to grow in popularity, especially with the release of React 16. Developers who love using React may be at a loss of how to test their React applications. In this talk we will explore how to use Enzyme and JSDOM to test your modern React applications. We will dive into Enzyme testing and explore how to test both the DOM and virtual DOM by using Enzyme's core methods: shallow, render and mount.
ROTEM MIZRACHI-MEIDAN // DETOX (WIX.COM)
Rotem is a software engineer, open source advocate, passionate about Android, React Native, mobile performance, writing developer tools and Lego! He was the first Android developer at the mobile startup EverythingMe, later working on infrastructure features and performance benchmarks of the app. In his current position at Wix.com, Rotem is working with React Native, writing infrastructure and testing tools.
Detox: A year in. Building it, Testing with it
A year in, developing and using Detox in production taught us a lot. From designing its API, to consuming it, testing real user scenarios to advanced mocking, we learned what makes sense when E2E testing an app and what doesn’t. In this talk, we’ll discuss how Detox works and what makes it deterministic, cover some advanced use cases and methodologies, go over new features and tease the ones that are upcoming.
RYAN MARSH // CUCUMBER LTD.
Ryan Marsh is a dev coach and trainer who works with companies of all kinds to make development great again. Ryan knows that within every team is an 10x team waiting to prove what it is capable of, and that every team deserves a positive and productive work environment. Ryan has helped teams transform their development experience in startups, the Fortune 100, and government.
BDD with cucumber.js
Hundreds of teams are benefitting from BDD (Behavior Driven Development). This brief talk will familiarize you with what BDD is and isn’t so you can decide if it’s right for your team.
JASON LENGSTORF // IBM
Jason Lengstorf is a developer, designer, author, and friendly bear. His focus is on the efficiency and performance of people, teams, and software. At IBM, he creates processes and systems to Make The Right Thing The Easy Thing™. At all other times, he wanders the earth in search of new and better snacks.
But Testing Sucks!: How IBM is building a testing- and quality-driven culture despite internal resistance
How can we create a performance-, quality-, and test-driven culture when the company has years of bad habits to break? Is it even possible? In this talk, learn how IBM has been steering its massive engineering team away from deep-seated resistance to writing tests — or collecting code quality metrics of any kind — through a combination of automation, human psychology, socialization, and education.