You're familiar with server virtualization, right? That's where you can run different copies of a server software...
instance on the same physical hardware. It turns out that you get much better utilization of the hardware if you can always keep it busy with active virtual machines.
Now, to understand Docker and similar products that do the same thing, you have to start by breaking the process down to individual applications. An application is written in a Docker container, and it takes care of operating system, network and other application services. Multiple Docker containers can run on the same system (and even within a virtual machine), and there is a resulting improvement in performance and memory utilization.
Because Docker runs in a container, it will also enable a single application to run on any system that the container supports. This makes applications truly portable among supported operating systems.
Why should testers understand Docker? It's useful to know for two reasons. First, virtualizing an application shields it from the surrounding operating environment. It is protected from direct interaction with other applications and with the operating system. This means testing is greatly simplified. You only have to test it once, rather than on different operating system versions, and in combination with different applications.
Second, Docker can be useful from a test administration standpoint. Your testing team probably already has virtual machine images that represent a wide variety of different operating environments for applications. If your application under test is running in a Docker container, you can use that same container across different system configurations, rather than provision a new server for every instance.
Depending on your organization, you may or may not encounter Docker as a platform for testing applications. If you do, take the time to understand Docker, learn how it works and start leveraging it to make your testing more efficient.
A contrarian on containers
If your data is distributed, containers are a tester's friend
Why it's time for testers to up their tech game
Dig Deeper on Cloud Computing Testing and Development
Related Q&A from Gerie Owen
As a junior tester, I think learning scripting languages could make me more valuable to my team and enhance my career. But how do I pick the ... Continue Reading
DevOps teams use chaos engineering, but at what cost? Learn how this testing method secures applications in ways that traditional testing can't. Continue Reading
You want to attend a software testing conference, but your employer said it's too expensive. Here are some ways to improve your chances to attend. Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.