Again, without more details about your sensors, I can only give generic pointers.
Speed and RPM will be in the form of a pulse train. But the amplitude of the pulses will be near 12 volts, so you will still need to limit these signals to 5 volts, even though you are only interested in the frequency and not the amplitude.
Damage to your Arduino could result if you do not do this.
If you have a sensor giving 'spurious' values (without any actual input), it is most often caused by leaving an input 'floating'.
A high impedance input (such as the Arduinos) can, and will, respond to stray signals, such as the AC power field and radio frequencies... or even the capacitance of your hand.
It is general practice to connect the input to ground through a rather high value resistor... much higher than the output impedance of the sensor, but well below the impedance of the input. This will help prevent these 'spurious' readings.
For example, suppose that your fuel level sensor is connected to the Arduino analog 0.
A typical fuel level sensor has an output impedance of much less than 500 ohms.
While the input impedance of the Ardunio analog input is specified to be around 100 million ohms.
So you might connect a resistor, from analog 0 of your Arduino to ground, of 68000 ohms resistance.
Then, in the case no sensor is present, this will ensure that the analog input is 'pulled down' to 0 volts, yet will not contribute any detectable error when the sensor is actually connected.
If you are 'bench testing', use a potentiometer, of the same impedance as your sensor, to simulate the 'real world' signal. In the case of the fuel level sensor, a 500 ohm or even 1000 ohm pot would probably work OK.
In the case where 'real' values are shown as whole numbers, this usually happens when an integer variable is used, where a float value should be used instead.
One more bit of friendly advice.
In your original post you stated that you wanted to test the program itself first, and then work with the sensors.
Might I suggest that you try it the other way around?
Write test programs for your sensors, one at a time until you are certain of your understanding of the sensor and code.
After you have confidence in the individual items, then integrate them into a whole program.
In this way you make your problem space smaller. 'Divide and Conquer!'.