Create a program that accurately creates complex models. Test the program on several previous simulations that are known to be successful to see if the same results are achieved within an acceptable variance. Voila.
Simulations require accurate descriptions of the physical process you are trying to model. Without that, all the simulations in the world won't tell you anything.
Electronics are pretty well understood. There are simulators that can be used to test circuits before building them, and they fail sometimes in surprising ways. All it takes is a tiny parameter that is left out of the model, or is inaccurate in some way.
One of my favorites involves a 7473 JK flip flop and an LM3909 LED flasher.
Connect the oscillator capacitor from pin 1 to pin 8, then connect V+ on the LM3909 to the clock
input of the 7473.
Tie the J and K inputs on the flip flop together. Apply power to the 7473, and the outputs (Q and /Q) will sit there and alternate between high and low.
Where's the clock signal coming from? From the 3909. The 7473 clock input leaks enough current to the 3909 for it to operate. It builds up for a flash on the leakage current, then when it fires it tries to draw more current. The 7473 input can't deliver more current, so the 3909 pulls the input low - which clocks the 7473 into changing output states.
Build that circuit in any simulator, and it just sits there looking stupid. The 7473 model doesn't include the leakage current, and the 3909 model doesn't tell the simulator that it (the 3909) will work on that tiny amount of current.
The circuit above has an actual use. Connect a red and green LED anti-parallel across the outputs Q and /Q, and it will blink alternating red and green. Now remove the Q side and connect simple a diode in series. If that extra diode is good, only one of the LEDs will blink. If it still blinks red/green then the new diode is shorted. If it stops blinking, the diode is open.
This was used to test diodes in alternators. If your test leads are the right colors, it can also be used as a test for the polarity of an unmarked diode.
Unneeded for a trained electronics technician, but very helpful for mechanics in a hurry to check alternator parts. Green is good, polarity as shown by the lead colors, red is good but reversed polarity, errors as described above.
Another one that was fun was PLD that a company I worked for had designed for use in one of our products. Simulations showed it as fully functional. The first prototype worked as planned. Later units would lock up. I was assigned to find out why.
It turned out that the model used in the simulator (from the chip manufacturer) didn't accurately model the temperature sensitivity of the chip. If it got warm, it would take just that tiny bit too long for the address signals to be decoded, and nothing would work. A drop of alcohol on the chip housing, and evaporation would cool it enough that it would go back to work as though nothing had happened.
I ended up correcting the PLD design to lower the load on the address bus and to eliminate some unneeded data latches. With that done, the chip would work up to design temperature with out locking up.
The point of all this is that a simulation is only as good as the model it uses. If the model is wrong, your simulation will be wrong.
In order to have an accurate model, you must investigate the real object in extreme detail - which eliminates some of the advantages (savings in time and effort) you would hope to have from the simulation.
With an accurate model, there's a chance that you might discover something you wouldn't have expected - but that's more a comment on personal expectations and the mental "models" we all use to understand the world around us than it is a comment on the usefulness of computer simulations.