I’ve got a client website in production with both PayPal checkout and PayPal pro credit card payments. I need to update the code sometimes, but I want to be 100% sure that the code works. However I can’t test it because I’d have to make a real payment for that.
As traq said, use the paypal sandbox. But I’d recommend testing against the sandbox using a local dev copy. Also, when you make any significant change and port it over to your real live checkout page, I do suggest you perform a real test transaction anyway.
I found that out the hard way after realizing that I had forgotten to sync up some obscure code between the dev copy and the real server, which silently caused certain checkout transactions to not even run.
You don’t even have to charge the real price of your product. Setup a test page/url that only you know the address to that will charge $1.00 to paypal. After you run it successfully, refund your dollar to yourself.