Total cost and steps involved depend on the start of your project but usually involve me looking at your game design and asking questions about the functionality and any development already completed.
Afterwards, I will create an alpha which will contain most of the features you want and in a playable state. It will contain issues that must be worked out. Those issues will be identified by you or your design team if it's a design issue or identified by you or someone on your team and fixed by me if an issue within Unity or C#.
We will continue to a beta phase, to which the game should be feature complete - but again will contain issues that must be addressed. The same process as before will be followed.
One final iteration will occur on my end and at the end, the finalized product will be given to you. While I will generally test most of what I do, extensive testing, such as unit testing or test driven design will cost more. End product is no guaranteed to be completely free of issues, but won't contain issues that block functionality.