The files depend; by class often, but also by feature, e.g.
UserSearchesForPropertiesForSaleTest.php
Regards the test case names, I name them as precisely (not concisely) as possible, but this often means the names are super long. For example, some of the ridiculously long ones are:
testEuroCurrencySelectionIsDisplayedInThePropertySearchIfItHasBeenSelected()
testNonExistentRegionsAndDepartmentsSearchCriteriaAreNotReturnedAsASearchLocation()
testSearchWithMinimumPriceCriteriaThatReturns0ResultsDisplaysALinkToASearchWithMinimumPriceCriteriaDecreasedBy25Percent()
The last one is about as long as they get. :D I then use the PHPUnit --testdox flag to make sense of them as living documentation, so I get the output:
[ ] Search with minimum price criteria that returns 0 results displays a link to a search with minimum price criteria decreased by 25 percent
Obviously, the above tests are for integration type tests hitting multiple layers. If my lower level unit tests were named so long, this would be a huge code smell that the unit is doing far too much...