It is utmost important to have test environment.
You should never test locally and push to production except it is a
single developer application and a very small application.
If your team of developers is more you will need a integrated test
environment as well as user acceptance test. Large organisations will
have two test environments, but smaller teams can do with one test
environment before the code is pushed into production. This helps in
keeping the issues out with bugs on production.
The size of the test environment is significantly small compared to the
production. as long as you are able to integrate and test the application.
Hope it addresses your query.