You can use Octo, your own emulator, someone else's emulator, or real hardware, if you have some sitting around. You can even have a go at hand-assembling your code on paper if you think it would be fun!
I do recommend that at some point you test your program on Octo, even if you don't use it for development. It has a number of "quirks mode" flags that can accommodate the differences between most CHIP-8 implementations, and it provides an easy way to share your end results here on Itch.io.