I talked before about tradition and dogma and not too long ago, on LinkedIn, I saw someone post yet another one of those bits of dogma in our industry without considering the context. The discussion that ensued showcased exactly the problem with simply regurgitating the “received wisdom” of others. So let’s talk about this.
Pacumen – Exploring Search Algorithms
For this post I’m going to be giving you all the commands you need to run algorithms through Pacumen. But I will note that the readme file of the Pacumen project does provide some context for you should you choose to play around with the project. You can also reference my exploring testing and AI post for more details on how to use Pacumen.
Testing Algorithmic Searching, Part 2
This post follows on from the first part. That post, and this one, are building up your understanding of the algorithms that you have to consider when you are a tester in a machine learning or AI environment, particularly when dealing with search problems.
Testing Algorithmic Searching, Part 1
The next two posts are follow-ons from the previous. The goal here is to get you set up thinking as a tester in a machine learning environment and specifically in the context of search problems. This post, and the next, will focus on making sure you have the basics of the algorithms.
Testing Learning Systems
Let’s continue the from the last post where you saw a working implementation of a learning environment called Pacumen. Here I want to provide you more details of the basis for this kind of work and use that as a springboard for thinking about how testers fit in these situations.
Pacumen – Exploring Testing and AI
In this post I want to set the stage for some future posts regarding thinking about how you might work, as a specialist tester, within the context of an environment that is using machine learning and various artificial intelligence techniques. This is an area that I’m finding many testers are not ready for. To that end, I’m going to show you how to get my Pacumen code repository up and working. Then I’ll take you through a few exercises to put it through its paces.
Testing and AI
What’s been interesting in the testing world — at least the part of it that I hang out in — is the application of different AI-based learning algorithms to the act of exploring an application and seeing what (if anything) that tells us regarding the algorithmic and non-algorithmic parts of the testing discipline. Let’s talk about this because I think is fertile ground for testers to be exploring.
Unpacking the Suitcase Words
The question periodically comes up as to what the difference is between “Quality Assurance” and “Testing.” And a disturbingly large number of test professionals will say that “Testing is a subset of quality assurance.” This is a terrible response. Let’s talk about that.
Solution Development in Python, Part 3
This post continues on from part 2. If you’ve gone through the prior posts in this series, you have a fully functioning package. Now we’ll distribute that package.
Solution Development in Python, Part 2
Continuing on from part 1, we now have a nice little package that we wrote. Let’s refine this package to be a little more in line with Python practices, add some tests (well, a test), and provide some console execution.
Solution Development in Python, Part 1
It’s been awhile since I tackled anything too traditionally “technical.” Lately I’ve encountered many testers who are interested in using Python as their ecosystem of choice for test solutions, particularly in data science or machine learning environments. So here I’ll talk about being a test solution developer in a Python context and what it means to create solutions in this ecosystem.
What If: The Test Apocalypse
Here’s an idea that I think can be interesting in terms of how you view testing (as an activity) and tests (as an artifact).
Testing As Experiments Around Project Forces
A lot of people writing about testing draw the correlation between testing and experimenting. You’ll often hear something like “testing is evaluation through experimentation.” But, as advice to testers, this falls far short of helpful if the notion of what being a good experimenter entails is not covered. So let’s talk about that.
Continue reading Testing As Experiments Around Project Forces
Testing and Model Building
In his book The Black Swan, Nassim Taleb talks about “Platonicity,” which is defined as the desire to cut reality into crisp shapes. This is a form of dividing up a large domain into a smaller domain. This, by definition, means establishing certain boundaries. This is a key part of how people experiment and thus of how they model … and thus of how they ultimately explain things. So let’s talk about what this has to do with testing.
The Unique Discipline of Testing
In my post on porting development lessons to testing I mentioned getting into the ideas of what makes the testing role something uniquely distinct from that of the development role. So let’s talk about this.
Development Lessons Ported to Testing
There’s often talk about how developers should think more like testers. But there’s often not as much discussion about the corollary: testers learning to think more like developers. So let’s talk about this.
Levels of Description
I’ve talked about the notion of test description languages quite a bit. A lot of these discussions get into debates about being declarative versus imperative, or focusing on intent rather than implementation. All good things to consider. But such “versus” terminology tends to suggest there is a “right” and a “wrong” when often what you have is “What makes sense in your context.” And you may have to flexibly shift between different description levels. Let’s talk about this.
Describing My Role
Recently I engaged in a fun exercise with a test team wherein each of us had to answer the following question: How do I describe my role? It’s always interesting to me to see how people answer this, particularly in the fields of testing and quality assurance. So here I’ll provide the answer I gave, along with a bit of context for it.
Exploration – Testing and Checking
In this post I want to follow on a bit from the interactive exploration idea developed up to this point but also focus on the distinction of checking and testing that often gets debated. I also want to use this post to reinforce a few things I talked about last year.
Interactive Exploration – Buying
This post follows on immediately from the last one, so let’s get started with the exploration!