In fact your BMW's check engine light should illuminate when the ignition is on the ON position (not the RUN position). It is part of the smog check requirement that the smog technician inspect the check engine light for proper operation.
If the check engine light does not illuminate while the key is in the ignition and the ignition is on the ON position the light bulb may be burned. You can inspect this by removing the instrument panel, dismantling it and inspecting the light bulb.
If your BMW was not running we'd recommend inspecting the ECU (engine control unit) fuses and relays. However since you've indicated your BMW does run, and in fact has produced passing emission results, there is a possibility that the check engine light bulb has burned out. This is not a common problem but can and does happen occasionally.