How can I work out why a transaction isn't being included in any blocks?
The transaction needs a fee.

I mistakenly thought that testnet transactions didn't require fees, but the requirements are just lower. Given that this is spending a recent output and the amount is very small, it is being ignored.
Do testnet networks require the same main network fee?

A transaction including a fee went through successfully: https://live.blockcypher.com/btc-testnet/tx/0119445bfc577bcd032a079b03d1534be91b01e789874a02f88b9234ab72429d/