I also had a coil pack fail last year. It ran like crap, and couldn't find the problem, but I just kept running the begger until it threw a code. Finally, it threw #5 coil as being the culprit. Sometimes like stated above the computer won't throw a code until the misfire is sufficient enough to cause a trouble code to be shown.
You can also test the emission system by puttin a vacuum pump on the EGR valve and pumping the EGR valve open when the engine is running at idle. This should kill the engine. If it does not, then you have to pull the plenum and clean it out as deposits can get in there and clog it up. This is of course assuming that you know the EGR valve is operating correctly, as well as your DFPE sensor and vacuum control module for the EGR valve. All of which are easily bench tested to see if they are in good operating condition. Eventually this too would throw a "recirculating exhaust gas flow excessive detected", Code #P0402.