The quickest way to tell if the fuel pump is shot - pull the back seat, pop the cover to the pump, and if you have a jump box or way of powering the fuel pump direct - wire a (+) and (-) lead, touch the leads to the pump and if it fires up, it's not dead.
Do the pedal test to extract any stored codes.
I will say, if the cracnk positioning sensor is dead, you may not get an error code.... I went through an ordeal w/ my 318ic a little while back where I too had a non-start issue. That thread has a TON of diagnostic tests and many responses from others helping out. I was not getting any error code for my non-start issue - and in the end after testing MULTIPLE sensors, relays, jumping the fuel pump, checking all fuses, etc etc etc... in the end, it turned out to be my crank positioning sensor...
When the CPS fails, there is no relay back to the DME to fire up the fuel pump - since the CPS is not relaying data back to start the fuel pump, the fuel pump will not prime... and so on and so on.....................
Do the pedal code extraction first - if you get a code, post it up. If you don't get any code, then jumper the fuel pump direct, if it immediately turns on, it's good... then diagnose from there (check out my previous thread).
Hope that helped ya out some...