As the leader, your team's development is your responsibility. In order to keep good people, you have to allow them the opportunity to improve themselves. You need to be aware of the different levels of testers there are in the team, the abilities each level of tester has, and what motivates every individual.
There is a lot to consider when building a team: team dynamics, fit, size, diversity of expertise, business needs, etc. After you have a team formed, then you, as the leader, have the responsibility of team development. In order to keep good people at all levels, you have to allow them the opportunity to improve themselves.
My goal as a leader of a team is to make the team strong enough to not need me. I enjoy being there, being useful, removing roadblocks, and assisting as necessary. When I'm dragged into another planning meeting, I need to be confident the team can move forward without me, regardless of what comes up.
The best part of developing a team is that you are developing your people, technical, and leadership skills while helping your team succeed.
First, have you walked a mile in the testers’ shoes? If they quit today, could you fill their positions and be successful with a minimum of turmoil? If the answer is no, how do you expect to help them develop?
In order to help people develop, you need to know where they are. Are they junior, middle, or senior testers? I consider junior testers to be the ones that need training in almost everything, but they should have the right mentality, be smart, and display potential. They may also be people with a couple of years’ experience that is not directly translatable to the current context—they may undertake the wrong processes or have the wrong ideas about testing.
Developing juniors entails teaching them the basics of testing. What is a test? How do you know when something passes? They need the step-by-step instructions everyone else on the test team takes for granted. Juniors need permission to think for themselves. You must impress upon them concepts such as "trust but verify," how to break down a problem, and technical skill learning. Do not spoon-feed them; give them resources they can use to learn. The goal in developing junior testers is not a reliance on you, but a reliance on themselves and their ability to learn. I've had good luck pairing a junior with a middle or a senior on the same project.
Middle testers I consider to be the workhorses. These people get the job done but only occasionally go above and beyond the call of duty. These testers can sometimes be left on their own and will do an adequate job, but they can't be abandoned altogether. They must be prompted to make sure they don't have questions as opposed to relying on them asking when needed. Honestly, in my experience, most people will never progress past this point.
Middle levels you didn't train as juniors are the hardest part. You most likely have to untrain a mentality of "I need you to tell me everything." Middles can also be corrupted by well-meaning seniors who don't understand how to give them enough room to dip their feet in the water without letting them drown.
Senior-level people on my teams are the ones who challenge themselves, so helping them develop can be a serious time commitment. I have found that giving them permission to challenge themselves is usually all the push they need. However, some of them need help with some specific boundaries, such as time, a project goal, or a technology to use.
Drive, Enthusiasm, and Motivation
Do you know what drives each of your people?