I think only sample standard deviation should be used. But I am not sure.
Should I use sample standard deviation or population standard deviation in hypothesis testing?
It really depends on what you mean. It would be a very rare situation that you actually know the population standard deviation but don't know anything else; more typically you would have an assumed population standard deviation, or in some cases a bound on the standard deviation.
If you're interested in a hypothesis about the standard deviation (e.g. $H_0:\sigma=15$ vs $H_1:\sigma\neq 15$), then the hypothesis will certainly be about a population standard deviation, but of course you won't know the population standard deviation in that case and you'd estimate its value from the sample.
If you're talking about the case when you're testing a hypothesis about a population mean (choosing between a z-test and a t-test say), then if you really do know the population standard deviation it would often make sense to use the additional information; it's like getting extra data for free.
However, that may make the distribution of your test statistic more sensitive to the other assumptions. For this reason it may sometimes make sense to ignore the information in order to have a somewhat more robust test (in large samples the additional information from knowing the standard deviation doesn't add so much in any case).
If you mean something other than those possibilities, you'll have to clarify further what situation you're asking about.