On 18 December 2007, he made his Test match debut in the third test against England at Galle. Welagedara was selected in Sri Lanka's test squad for their 2008 tour of the West Indies, but had to wait until November 2009 for his second Test appearance, which came against India, and he would go on to play all three Tests in the series. His first Test wicket was England's Paul Collingwood.
He was included in Sri Lanka's One Day International squad to play against India in December 2009, making his debut on 15 December in Rajkot, and in a match where 825 runs were scored in 100 overs, he returned figures of 2/63 from his ten overs, claiming the wickets of Virender Sehwag and Virat Kohli. He also claimed a five wicket haul against India.
He was the first Test cricketer to boast six initials to his name.He is now a constant player in the Sri Lankan Playing XI after Lasith Malinga's resignation from the longer format.