You could take a 12 STR test first to determine whether you are J. But if you are interested in subclades, don't bother with further STR tests, go for a SNP test. The problem with Family Tree DNA's SNP tests is that you have to take them one by one for each subclade, which quickly becomes expensive given the number of J subclades (about 40 to 70$ per SNP !).
A cheaper alternative would be to test with
EthnoAncestry. It is 189$ to test for 18 subclades of J. But instead of taking first a STR test then a SNP test, the most interesting choice is to go directly for a
23andMe test, which tests about 600,000 SNP's for 399$ and will give you all your Y-DNA AND mtDNA subclades + autosomal ancestry + health information. It may look expensive at first, but with other companies you will end up ordering many tests that will cost you more just to know everything about your Y-DNA and mtDNA.
But a 12-marker STR test remains the cheapest way to find out about your Y-DNA haplogroup, and this is the only thing that matters to some people at the moment. It's true that there is little point knowing your deep subclade if you belong to a haplogroup like R1a or I1.