I agree. The CPS is favourite. About £60 for a new one. It's a Bosch part supplied to Saab.
I have cured the same symptoms on two 9-5's so far, by changing the CPS.
You can do a check of the CPS resistance. But it's not always conclusive, as a normal reading does not mean it's OK. Whereas a reading outside the limits is a good indication of failure.
The CPS is on the front of the engine block on the passenger side of the car. It's awkward to change as the (hot!) exhaust is in the way. But you check the resistance at the connector, which is at the end of a long wire, up behind the engine. If you look under the air inlet pipe behind the top of the engine, you should see a block of three connectors. The one nearest the engine is blue. Undo this and you will see three pins. Only two of these will show a resistance across them. Resistance should be between 770 ohms and 950 ohms at 20 deg C. Resistance changes a bit with temperature. Most failures result in the resistance going over the 950 ohms.
Some attachments to show the CPS under its tin cover. And the connector.