Well this is a very vague general and wide question, but here are some hints:
1- Identify all the actions the system should perform, write them down, with the expected results.
2- Add more cases where you might enter invalid data, or duplication, browsing back and forth, different browsers, different resolutions, etc. Try the unexpected behaviors. Like for very simple example, if you are testing division, try to divide by zero and see what happens. Try large amount of data. Every one with its expected response. This is called use cases.
3- Performance and regression: Usually you need a load testing tool, or else for very simple testing, create a batch that will send concurrent http requests (You can download and use the WGET tool for that)
For a very formal documentation and testing, you can take a look at UML (Unified Modeling Language)