I've used the method below to upgrade my Debian Lenny to Squeeze and had not problems at all, but in the release notes are considerations you should follow depending on your configuration. Be sure to read those, specially if your Debian PC is mission critical.
Debian Squeeze is going to be released on February 5th or 6th this 2011, so I am updating this how-to a little bit.
How to upgrade Debian from Lenny to Squeeze
First edit your sources.list
sudo vim /etc/apt/sources.list
Now change there, any word lenny to squeeze,(or from stable to testing -This will not work after the release date, so use squeeze, or stable after that date-) and save it, it could be a good idea to backup your original file before, just in case.
Updating and upgrading
sudo apt-get update sudo apt-get install apt dpkg apt-get sudo apt-get dist-upgrade
And that is it, now you are running Debian Squeeze, it is better to use squeeze instead of testing, so when it change from testing to stable, you can decide when to go to testing again.
Remember to read the Squeeze release notes
One of the most important thing I have read is about back up.
Be sure to back up your data
Before upgrading your system, it is strongly recommended that you make a full backup, or at least back up any data or configuration information you can't afford to lose. The upgrade tools and process are quite reliable, but a hardware failure in the middle of an upgrade could result in a severely damaged system.
The main things you'll want to back up are the contents of /etc, /var/lib/dpkg, /var/lib/apt/extended_states and the output of dpkg –get-selections
"*"(the quotes are important). If you use aptitude to manage packages on your system, you will also want to back up /var/lib/aptitude/pkgstates.
The upgrade process itself does not modify anything in the /home directory. However, some applications (e.g. parts of the Mozilla suite, and the GNOME and KDE desktop environments) are known to overwrite existing user settings with new defaults when a new version of the application is first started by a user. As a precaution, you may want to make a backup of the hidden files and directories (“dotfiles”) in users' home directories. This backup may help to restore or recreate the old settings. You may also want to inform users about this.
Any package installation operation must be run with superuser privileges, so either log in as root or use su or sudo to gain the necessary access rights.
The upgrade has a few preconditions; you should check them before actually executing the upgrade.
Finally, thanks go to Raphael Hertzog for helping me with this tutorial.