I Googled "Push on Green" and the first link was:
https://www.usenix.org/conference/lisa14/conference-program/presentation/klein
This was representative of almost the entire first page. It looks like this term originated in Google's SRE group and has been taken up by the industry at large.
You are correct- "push on green" means that deployments are automatically executed when all tests pass. This could be considered synonymous with "Continuous Deployment." The accepted method for automating deployments to environments is to automate testing.
If your automated testing is rigorous enough, you can deploy any code for which the tests pass. In very mature enterprises (the DevOps unicorns of all shapes and sizes) this can lead to Continuous Deployment all the way to the production environment.
My personal experience is that reaching this level of automated testing is a challenge in any enterprise. I am currently in the process of pursuing this level of maturity in my current position. Our first major milestone will be "push on green" deployments to any environment beyond "Integrated Development" (our "lowest" environment.)
This challenge is both technical and cultural. As an IT organization, we owe it to our business stakeholders to prove that our testing is in fact rigorous enough to serve as the sole gateway to a deployment. Once we have done that to our own satisfaction, we have to convince those stakeholders to let us try Continuous Deployment to the next environment (for us, this is QA.)