I wanted to share some of the tools in my basic testing toolkit. These are the things that I take with me to every job and that I couldn't imagine living without.
1. WireShark. This is a network trace tool. It records all the packets that go over your network card, including headers, packet contents, ACKs, etc. There's very good filtering available, and if you get totally lost, you can just hit "follow TCP stream" and get a nicely formatted request response set, all color-coded for you. This one's also good for a laugh; if you want to see a non-technical manager's hair stand on end, tell him you're using a packet sniffer!
2. SnagIt. Sometimes a picture really is worth a thousand words, and SnagIt makes getting a screenshot easy.
3. A scripting language. If I'm on windows, it's batch or VBScript. If I'm on *nix or mac, it's bash shell scripting. What really matters is that the script tools run on target systems without requiring installation of anything underlying (no JVMs, etc). This is for quick easy test scripts to deploy software, generate data, automate those repetitive tasks, etc.
5. SQL Query Analyzer or Toad. Or whatever your database supports. If you can't see your database, you can't see what it actually thinks you have. This is great for getting to the source of data problems. For as long as we're storing things in databases, SQL will continue to be an essential language, and database querying without your app as an intermediary will continue to be an essential tool.
What are your absolutely essential tools?