Domain Driven Testing: Know What You’re Doing
Submitted by Dmitry Vinnik (@dmitryvinn) on Sunday, 14 October 2018
In this talk, we will discuss why testing goes beyond simply following Acceptance Criteria, and how to utilize knowledge of your Domain to improve both quality of your product and User Experience.
“I tested it how you told me to”, “Acceptance Criteria said this is expected”, “I assumed it is fine” – these are frequent thoughts of teams which more likely to end up with customer cases in Production. Having an opinion about the product and ability to put themselves in its customers’ shoes is what makes a good tester, great. These great testers become the last line of defense before releasing functional but unusable product. It is easy to tell what kind of company you are working for if when you started there, you were sat in front a laptop and were given some code to study. Teams like that simply want another coder. If your team got you to explore the product first, then it is a team that wants you to know exactly what you are working on; they want you to know your domain. In this talk, we will discuss on how to apply Domain Driven Development practices and principles in a testing field, creating Domain Driven Testing. We will learn why it is important to understand exactly what you are working on, and why “Programming by Coincidence” is the main danger to User Experience. The speaker will share his experience in starting in a new domain of Website Building Software, and how learning about other products in the industry allowed him and his team to avoid reinventing the wheel, and as a result to prevent problems which were previously solved by other organizations. At the end of talk, the audience should be empowered to make product decisions and direct all its efforts towards satisfying the most important stakeholder, Customer.
Dmitry Vinnik is a Lead Software Engineer at Salesforce and has been passionate about Software Quality since the very beginning of his career.
He started out as a Quality Engineer, and was able to bring test expertise into his current Software Engineering role to ensure delivery of a high quality product.
Dmitry is also a Scrum Master focused on making his team more efficient and productive.
His background involves studying medicine and bioinformatics in addition to software and quality engineering.