What if we knew nothing about testing, how would we start? Does our every day life provides the tools we need to help us investigate a domain and develop the necessary skills we need to survive? This talk will start by assuming that about Software Testing and Technical software testing we know nothing. And then, using a process of questioning and exploration we will see how far we get in terms of building a model of Software Testing and Testing an application from a Technical perspective.
Over the course of the presentation, we will see a repeatable process of working from first principles to improve our knowledge, experience and skills. We will see that we can learn to perform complicated and technical software testing activities without having to adopt a complex understanding of software testing.
I plan to demonstrate that use of questions like "How do we know?" "How can I tell?" "What does that mean?" can lead us through a process of learning and mastery such that we can build our models of testing and our skill sets from first principles and that we do not need to overcomplicate our testing and we do not need to ask "why?". I will explain that "Why?" is a belief chain question, and we really want to focus on observable models of reality rather than 'beliefs' and 'common knowledge' about software testing.
e.g. I want to test a web application - what does that mean? What does test mean? What do I hope to achieve by testing it? How can I achieve those goals? I also have to understand some domain technology - "web", "application" which I learn from the 'web' domain rather than the 'testing' domain. When testing I ask "How do we know?" i.e. "How does it know I'm logged in?" because when we log in it creates a session which it puts in a cookie - which leads to other "What does that mean?" questions until we understand. And then we ask "How do I know it has created a cookie?" which leads us to identify how we can observe and interrogate the system e.g. "How can I see cookies". By exploring a web application from first principles with simple questions we will learn about browser developer tools, http proxies and web testing.