I've had this issue too, and I didn't find the answer in the previous responses, so here's mine.
dSYM may be included within your executable (and thus in the IPA), but this means you chose to make it so when building your app. In fact, including the dSYM in the executable is only done if the Strip Debug Symbols During Copy
Build Setting is set to NO
.
However, this is heavy content (my app is 5MB, the dSYM is 10MB!), so you generally don't want it to be included with your app when releasing it. So except in development, this flag is better to YES
. And this is why it the TestFlight Desktop app will show the dSYM not found
message.
You can use the TestFligh Co-pilot (the menubar thing, enabled in TestFlight Desktop app preferences) to detect your XCode last archives. Using this allows TestFlight Desktop to find your XCode archive, and this one always contain the dSYM. Or if you have to use the IPA, you can also upload the dSYM file on TestFlight website (you should see the upload area in the Crashes section for your build).
The dSYM can be found by getting an archive in XCode, right-clicking it and follow Show in Finder
. Right-click the archive in the Finder, select Show package contents
(or something like it, I'm on OS X French version), and the package will contain your dSYM file under dSYMs
.