Testing the way it should be
-
Upload
brian-mann -
Category
Software
-
view
42 -
download
0
Transcript of Testing the way it should be
Testing,the way it should be.
Brian Mann!@be_mann"
What is Cypress?
Why another testing tool?
Developing since 2008
Testing for 5 years
Written 10,000+ tests
Testing is just too hard
To: Developers
“What are the biggest testing challenges you want solved?”
From: Me
Having sane configuration
It must be easy to use
Easy to write
Easy to read
Easy to maintain
Visibility into why something failed
Animation testing
Wasted time spent debugging false
negatives
..slow to run and often … fragile
Speed of test execution
…errors using Selenium are useless
…more insight into failing tests
Running fast and reliably
…having to go through a pain
of setup
Frictionless test setup
…taking a long time to develop and
difficult to maintain
Testing responsive designs
See what broke visually Can be quickly
debugged
Understand why test failed
Being easy to setup
Making it easy
Making it "fun" to write tests
Cross-Browser testing
Tooling that is easy to use
Support for async testing
Flake
Tooling that is fast
Tooling that actually works
Intermittent test failures
Speed, flakiness
Time spent debugging false
negatives
Testing across browsers is painful
A solution that is friendly to
frontend Devs
Less brittle to changes
Legible syntax
Faster test-development
feedback loop
Simpler to write
No endless setup hassle
Testing browser JS-heavy apps
Asynchronous interaction
More insight into failing tests
…very clunky … and cryptic
Deals with async in a non-flakey way
Testing frameworks aren't great
Better information for new testers
…complexity and difficulty
Fixing failing tests and regressions
Making testing more enjoyable
Debugging failing tests have left me
frustrated
Abandonment of automated tests
…takes a bit of time to setup
Step through the error and inspect what is happening
Elegantly dealing with delays
Config
…causes them to abandon testing…
Learning curve
Usable cross browser testing
Test my apps on multiple browsers
Managing a bunch of fiddly testing tools
…hard time getting started
Simplify integration testing
Highlight and help understand what should be tested
Testing without selenium
CSS rendering testing
Cross-browser compatibility
Automatically retest the code you’re
working on
Reducing the pain
Encourage Devs to actually write more
tests
…tests have left me frustrated
…intimidates usersSlow iterations on
test code
Visually step through the test runs
Takes lots of time to get it right
Sane test-running environment
Less hassle to set up
Setup
Having sane configuration
…having to go through a pain
of setup
Frictionless test setup
Being easy to setup
No endless setup hassle
Less hassle to set up
It must be easy to use
Easy to write
Running fast and reliably
Testing responsive designs
See what broke visually
Support for async testing
Simpler to write
Writing Management
Easy to maintain
Wasted time spent debugging false
negatives
Understand why test failed
Flake
Intermittent test failures
Less brittle to changes
More insight into failing tests
Selenium
Selenium
• Evolution
• Async Code
• Architecture
• Control
• Speed
I hate testing :-(
Part 1: Setup
Part 2: Writing
Part 3: Management
!
!
Desktop App
#Cloud Platform
$
Goals%
• Open Source
• Champions
• Documentation
• Happiness
Roadmap&
'
(
docs.cypress.io
www.cypress.io