When developing a test strategy, you need to get the key people in the project together, focus on the problems you're experiencing, and develop a long-term solution that you can implement over time. In addition to the bulleted list of problems above, our project's solution had to fulfill the basic requirement of a test strategy: helping the project team to find the most important bugs as early as possible in the development lifecycle. To find the most important defects early, the testing part of the project needs to align with the development part of the project, including the different testing phases, test types, project environments, how you promote code between environments, roles and responsibilities, and the common tools used.
Doesn't sound very easy, does it? But it's simpler than you might think!