It might be because when they take the swabs they don't do it properly. It looks on to cells in the respiratory tract and then starts replicating so swabs should get it.
It's not that at all. It's because the infection starts in the lower respiratory tract but currently testing takes place in the upper tract. Therefore, it's perfectly possible to have the virus in your lungs but for it to not show up in a test from swabs from your throat.