If you no longer want to be a tester, why would you take a new job as a tester? Apply for jobs that you want. Do not take a job with the hopes that someday, maybe, if everything works out, you can move to the job you want.
On the one hand, while I generally agree with the "go for what you want" approach, if your choice is stay with an organization that has had you for 12 years and has relegated you to tester, or join an organization where upward mobility is possible. I know what my decision would be.
Alternatively, you can always confront MS about their bullshit. Tell them, "If you don't give me an opportunity to go back into a primarily development role, I will be leaving MS for Google."