Is there a way to force fail the transaction in testnet network I would like to test my application with all the edge cases. Could you please tell me is there a way to force fail the transaction in the testnet blockchain so I can test if my application handles that case correctly.

Thank you for the answers in advance.
You can set fees to very low (for example 1500 for a small 1 input 1 output transaction), not zero though. That will (most likely) get your transaction to be not mined in a few days and dropped.