Is it possible to test software without your hardware?
Yes! There are two ways you can do this:
If you have a Raspberry Pi available, you can download and install the image. The UI will work, you can test writing your own scripts, etc. etc. You may get some errors about hardware not being available, but with some additional steps this can be fixed and you can simulate pumps, LEDs, etc. EDIT: I’ve written some documentation on this set up here.
Locally, you can install the software stack. This is what I do for development. Here are some docs on getting started with local development. Depending on how much you want to emulate, this can be more work to set up than the first option, though.