Two gunmen have also been killed and at least five others, including three civilians were injured, police say.
The region has seen an insurgency against Indian rule since 1989, but violence has declined in recent years.
No group has said it carried out the attack.
The school was closed and no children were hurt in the attack, officials said. Security forces have cordoned off the area.
Reports say the gunmen attacked a security camp manned by the Central Reserve Police Force (CRPF) near a school run by the police in the Bemina district.
Indian-administered Kashmir has been tense since the execution in February of Afzal Guru, a Kashmiri man convicted for plotting to attack India’s parliament in 2001.
Attacks in Srinagar have become rare – last October one person was killed by gunmen who opened fire in a hotel on the outskirts of Srinagar.
And in May last year seven paramilitary soldiers were injured after two men on a motorcycle fired at them in the city.
Claimed in its entirety by both India and Pakistan, Kashmir has been a flashpoint for more than 60 years and two wars have been fought over it.