The three, separately
Spread is quoted and knowable. Slippage is the gap between the price that triggered your order and the price you were filled at, and it is worst exactly when your signal is strongest. Swap is the overnight financing on the position, positive or negative depending on the direction of the rate differential.
Why backtests miss two of the three
A backtest run on mid prices captures none of the spread and none of the slippage. Run the same strategy against the bid/ask actually available at the timestamp and a large share of published FX edges disappear. This is the single most common reason a strategy that tested well loses money live.
The measurement that matters
Log the intended price and the fill price on every order from the first day of paper trading, and treat the difference as a first-class metric rather than an accounting detail. A strategy whose slippage is a stable, known number can be sized around. One whose slippage is unmeasured cannot be sized at all.