CAST 2019 Video Recordings
Mining for Tests
12 – 15 August, 2019
Cocoa Beach, FL
Keynotes from Day 1 & Day 2:
Charity Majors Keynote Day 1:
Observability and Complex Systems: What Got You Here Won’t Get You There
Distributed systems, microservices, containers and schedulers, polyglot persistence … modern infrastructure is ever more fluid and dynamic, chaotic and transient. Likewise, individual engineering roles can no longer be broken down neatly into software engineers (who write the code) and ops engineers (who deploy the code (and buffer the consequences)). Many teams have already sailed past an event horizon of complexity and found that their old tools and processes — and org charts! — no longer work for them.
But why, exactly?
What was the matter with traditional metrics and logs?
Why are they failing to keep pace with modern systems? What else is out there?
Isn’t observability just a marketing term that means monitoring?
What else do we have to look forward to that will fail us?
In this talk we’ll cover the technical and cultural differences between monitoring and observability. Operations is now part of every engineer’s mandate, just like testing became part of every engineer’s mandate a decade ago. What does this means for specialist practitioners like test and ops engineers? What model of software ownership should we be working towards in our organizations, and why? Is it the same for everyone? And how does chaos engineering fit into this whole mess: is it a must-have or a nice-to-have, and why?
Ash Colman Keynote Day 2:
Your Everyday Tester
Inspiration comes from anywhere and everywhere. As we navigate through life, we do so in a way that test the limits of our abilities. Questions I have asked myself in the past are, “Can I make it to work on time if I leave now?”, “What happens if I use baking soda instead of baking powder?”, and on days when I’m feeling especially strong, “Can I deadlift 200lbs?”. All of these questions require exploration to get to a large degree of certainty. Opportunities in my daily life have inspired me to ask these questions, however it is only when I put them to the test that I get any answers.
The same goes for testing! Items within my everyday inspire me as a tester. Seeing software for its possibilities, and testing it for its limits help me define degrees of certainty. If we curate software testing with as much curiosity as we explore this world we live in, we will find that a lot more of what we do in real life inspires possibilities when exploring software.
Talks from Day 1 & Day 2:
Jess Ingrasselino, Ed.D:
My Love Affair With Testing (and you can have one too!)
Have you ever wondered how you can tie your life interests into your work? Do you feel like your many interests fit together and inform one another, but struggle to articulate how? Do you love to learn, and want to understand how your love for learning can joyously infect your entire life, including your testing? Jess will share pedagogies of learning (Zone of Proximal Development, Scaffolding, Metacognition, and Flow), and then do a live demonstration weaving testing, music, and other disciplines together in a fascinating talk where she lays her skills on the line to show you how you can tap into your passion for anything and turn it toward testing.
Quality is a Team Responsibility
We are told that when quality is owned collectively, as opposed to being gated by a tester it can improve overall quality. Teams begin to contribute to quality through testability, identifying design flaws in stories, and testing earlier in the delivery process.
But this only scratches the surface of what can be achieved.
If we think of software delivery as a journey to achieving desired business outcomes, quality is the GPS that shows us where we are and how far we have to go.
This talk looks at some ways to better understand quality, what it means to you, your team and business partners. It looks at ways to frame quality in terms of business outcomes to help us keep on the right track. It will show ways to visualise quality so everyone can see where we are on our journey.
Do I believe testers have a place in this future? Absolutely! In fact, I think the role of a tester is needed more now than ever but perhaps not in a way we have traditionally seen our roles.
A must for anyone moving to contemporary engineering approaches.
Test Ideation: What Writing Taught Me About Testing
Does the creative mind belong in testing? Can drills from writing add anything to our craft as testers? If so, where do they fit in?
Long before my testing journey began, and shortly before studying computer science I was 6 credits from a degree in creative writing. Now, I use these skills daily.
What if testing is both an analytical activity AND a creative one? After meeting and working with thousands of testers and test automation engineers, Paul Merrill has noticed a common struggle for testers is creating tests. With numerous teams, Paul has found several of the drills from creative writing programs can help with directing the mind in testing.
Join Paul for this mini-workshop. Bring a readiness to scribble at a whiteboard or privately in your notes, and an open mind. Learn from those around you and be ready to share your learnings as they come in this fun set of exercises you can take back you your team next week for better testing!
“Git hook[ed]” on images & up your documentation game
Can you remember the difference between two hex color values? Me neither!
Entering visual representations of recently-changed elements into version control makes review of past changes easier & speeds acclimation to a new web project, especially for visual learners. Surprisingly, methods for including images in your version control aren’t standardized and are rarely used outside of large companies, and the rest of us are left checking out every major commit and viewing changes locally! Join me for a review of methods currently in use and discuss the benefits and drawbacks of each. The audience will learn from a survey of tools used by both designers and web developers, what methods are most appropriate for individual projects, & how these methods differ from those used at some of the largest companies (Google, eBay, etc.). Finding a method to track changes in your visual elements will save our future contributors (and future selves!) the pain of having to distinguish #2dc651 (lime green) from #34a34e (darker(!) lime green) and ultimately make our commit histories cleaner and our repos easier to navigate in ways that many of us have never imagined!
Why is There a Marble in Your Nose
The first time I asked a student “Why is there a marble in your nose?”, it was a learning experience for me. That initial “why” led me down a path of questions that I hadn’t known I needed to ask – and it revealed that the real challenge wasn’t actually the stuck marble at all! The real challenge I needed to solve was that the student had outgrown naps and needed something to do while his classmates were sleeping.
Software testers come from a wide variety of backgrounds, which often influences how we carry out our role as testers. For instance, the skills involved in helping children transition from playtime to naptime enabled me to lead a rollout of process and workflow changes in our engineering department. My experience teaching math to 5th-grade students with an “I do; we do; you do” approach translates pretty directly to helping engineers learn a new testing framework. And of course, I learned the importance of asking “why”, which has made me a better advocate for users and engineering teams. Why did we make that design choice? Why should we iterate this process? Why isn’t this tool working out for us?
Every experience matters. We all bring a variety of expertise and lessons learned from previous roles or industries – and this is a good thing! It allows us to think outside the box and challenge the status quo; to include perspectives that would otherwise be lost or overlooked. Having a wider breadth of experience and knowledge makes us better testers, and I hope that my talk inspires you to think about how your prior jobs have impacted and improved the way you work in software testing as well.
Building Deep Thinking Tools for Exploratory Testers
I have been a functional exploratory tester. I was motivated to move out of exploratory testing and become that cool kid doing automation. Thankfully, someone pulled me aside and told me – I am more suited to be a functional exploratory tester and that I am business savvy. I didn’t shy away from code. I worked closely with developers and my testing approach involved reading code (didn’t write any) and brought in value to developers and to the business. I grew up as a tester being coached by experts, reading blogs from experts and learning that automation will help exploratory testers do more.
In my wait – I found very little effort that has gone in direction. I partnered with developers to be building some products.
I failed multiple times and here are my failed attempts
- Tool for Social Media Driven Testing for Testers
- Tool for mapping the heuristics and oracles to test ideas
- A checklist tool for testing mobile apps and scoring on quality for start-ups
- Testing Depth Dashboards
I would like to share
- The thinking behind building these tools and their value
- How purely focusing only on automation is taking away the possibility of building tools
- How I would love the community to start building tools
- How I can help the audience (without commercial interest) and how they can help me
I would like to tell my own story and how I (actually stealing credit from my team who build it) came to build tools
- What I did different from other manual testers?
- What problems concern testing space according to me
- The problems I picked and the way I tried solving them
- The failures and analysis
- The existing opportunity for people to build value different from automation frameworks and scripts
- The vision of open sourcing non code deep thinking tools for testing