How did he test them? A resistance check won't catch the normal way that these coils fail. To do the correct stress test to find bad coils requires expensive equipment and a fair amount of labor. If he didn't charge you a few hundred for this testing, then he didn't do it.
This is the correct test:
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0ahUKEwix4ab_vPjZAhUIMd8KHZ6eDFUQFgg5MAI&url=https://latemodel.cachefly.net/downloads/tsb05-14/tsb05-22-08.pdf&usg=AOvVaw3txEPhq02h9jieBSYi36Yt
This TSB addresses misfire diagnosis with Ford COP (coil-over-plug) ignition systems. This applies to Ford 1996-1999 Taurus SHO, 1998-2005 Crown Victoria and Mustang, 2000 Taurus, 2002-2005 Thunderbird, 2003-2005 Focus, 2004-2005 Taurus, 1997-2005 E-Series, Expedition and F-150, 1999-2005 F-Super Duty, 2000-2005 Excursion and F-53, 2001-2005 Escape, 2002-2005 Explorer; Lincoln 1997-1998 Mark VIII, 1998-2002 Continental, 1998-2005 Town Car, 2000-2005 LS, 1998-2005 Navigator, 2002-2003 Blackwood and 2003-2005 Aviator; Mercury 1998-2005 Grand Marquis, 2000 Sable, 2004-2005 Sable, and 2002-2005 Mountaineer.
According to Ford, approximately 50% of COP coils returned for warranty do not have a problem. The misfiring cylinder must be identified through self-test misfire codes or through WDS power balance. Rule out base engine problems, rule out fuel problems, and then look at ignition problems (be sure to rule out coil primary circuit issues). Once these concerns have been eliminated, the oscilloscope procedure outlined in this TSB can isolate the difference between a coil or a spark plug problem.
The optional WDS COP kit available through Rotunda will provide more accurate diagnosis and help reduce replacement of non-defective parts. The kit, P/N 418-FS528, can be purchased by calling 800-ROTUNDA.
The following procedure is for cylinder-specific misfires, and not random misfires. Misfire is defined as a misfiring cylinder that is lacking power relative to the other cylinders. The causes for a cylinder-specific misfire could include fuel, spark or mechanical problems.
Figure 1: Make sure that the coil being tested cannot spark to another surface
Perform a visual inspection. If no visible concerns are found, use the following WDS tools for misfire diagnosis:
Self test (check for codes first)
Power balance (identify the cylinder of concern)
Relative compression (rule out a possible mechanical issue)
Fuel (make sure that fuel injectors are not restricted)
Ignition (make sure that spark plugs and coils are working properly)
Oscilloscope (detailed signal analysis)
Note: Use the encyclopedia button in the lower left corner of the screen for detailed information on the WDS tool being displayed).
If there is a self-test code identifying a particular cylinder, you need to determine if it is a fuel, ignition or a mechanical problem. Proceed to Step 2 after running Relative Compression to rule out any mechanical problems. If there is no self-test codes, and the customer concern is a miss, proceed to Step 1.
STEP 1: Select the Toolbox icon, then Powertrain, then Power Balance.
Figure 2: Here, cylinder 2 has dropped.
The cylinder specific misfire must be identified as shown in Figure 2 in order to proceed with the remaining steps. If the miss does not occur at idle, try to brake-torque the engine. This extra loading should reproduce the miss in the bay. If the miss cannot be reproduced during brake torque, select Relative Compression under Powertrain on WDS before going on a road test to rule out mechanical problems. If Relative Compression shows a problem, the base engine issue must be resolved. If Relative Compression results are good, road test under as many different driving conditions as possible until the miss occurs on Power Balance. Some misses may be very intermittent, so be patient and concentrate on steady load conditions. Once a cylinder dropout is identified, proceed to Step 2.
STEP 2: (Select Toolbox icon, then Powertrain, the Fuel System Test)
Run the Fuel System Test on WDS to determine if there may be a fuel problem. After completing the fuel Pressure/Leakdown test, select Injector Flow to isolate a restricted injector (Figure 4). If all injectors are within specification, proceed to Step 3.
Figure 4: This example shows a restricted No. 2 injector.
STEP 3: (Select Toolbox icon, then powertrain, then Ignition System Test)
Run the Ignition System Test on WDS to determine if there is an ignition problem. Look at both duration (DUR) and kilovolts (KV) and look for values that stand out from the rest.
Note: Live display must average ignition values because there is too much data to display. Make a capture to view each engine event without averaging. This can be helpful when the problem is intermittent and does not show up in ignition. Proceed to Step 4 (if either spark duration or peak KV on the Red probe (Suspect Cylinder) are offset from the values displayed on the Black probe (Known Good Cylinder), then the problem is in the ignition system. Rule out coil primary circuit issues before proceeding to coil secondary issues such as the spark plug, coil boot, or possibly the coil. Use the WDS Oscilloscope with the COP kit to determine if the issue is the coil or the spark plug.
STEP 4: (Select Toolbox, then Oscilloscope)
Warning: Secondary ignition voltages are very high. Keep hands and tools away from the end of the coil that supplies the spark.
Set-up: With the engine off, pull the suspect coil from the cylinder well and turn it upside-down so that the coil cannot spark to any other surface, as shown in Figure 1. Wrap a clean shop cloth around the hard shell of the coil to help keep the coil propped up and stable. Caution: The coil boot can be damaged if the coil sparks to another surface.
Keep the coil connected to the harness and leave the WDS COP clip attached to the coil. Route the coil clip wire and cable away from the coil being tested, as well as other coils, to avoid noise interference. Disconnect the injector of the cylinder being tested to prevent raw fuel from washing the cylinder. This is a stress test for the coil. The type of waveform displayed on the oscilloscope will show whether a coil or spark plug is the problem, if all previous steps have been followed.
Figure 7: Example of a good waveform.
COP Stress Test Procedure: Go to the Oscilloscope Tool and select Channel 3, then select Auto, then select COP_STRESS_TEST_RED. This pre-configured setting will zoom-in on the peak firing of the coil being tested. Start the engine and be sure that the coil is not sparking to any surface. If the coil does spark to other surfaces, immediately turn the engine off and re-adjust the coil. Restart the engine and touch the Red Man icon to start the oscilloscope. All settings are pre-configured and no adjustments are necessary. Compare the waveform you see with the examples provided in Figures 7, 8 and 9. Figure 7 shows a good waveform. If your waveform is similar to Figure 7, the coil is working correctly. Suspect the spark plug.
Figure 8: Example of a problem coil.
Figures 8 and 9 are examples of problem coils. Replace the coil if your waveform is similar to Figure 8 or 9.
Figure 9: This example shows a more dramatic fault in the peak failure.