Your water heater has 2 elements so its 240Volts.
1) If breaker is delivering power on one leg of the 240Volt circuit, then water heater can appear to have electricity, but tank is receiving 120V. Both 120Volt legs are needed to complete the 240V circuit. Double check for 240Volts.
2) Review electric Load.
Water heater label shows wattage of tank.
If tank is 4500Watts for example, you installed 3500 or 4500 watt elements.
With 5500 Watt elements you need 30 amp breaker and orange-colored 10 gauge wire
With 4500 Watt elements you can get by on 20 amp breaker and 12 gauge wire up to 75 feet away.
3) Check ECO red reset button on upper thermostat. If reset is tripped, then ECO is reading high temperatures. Suspects at this point are defective upper thermostat, shorted wire or bad lower element.
4) Also note that insulation and cover must be re-installed over thermostat. Thermostat reads temperature through wall of tank. If outside air circulates around thermostat, that can cause a mis-read and cause tank to overheat and ECO trips.
If you don't want to test the heater, replace both thermostats for about $25. Return the upper thermostat for a refund. Then see of problem persists.
Here's what I would do.
1. Check breaker for 240
2. Check water heater for 240 across 1 and 3 screws on upper thermostat
3. Note wiring and breaker size.
4. Note label on side of tank.
5. Look at end of new element to see wattage printed on each element. Look for sings of high heat and burning. Tighten screws on elements.
6. Check ECO reset button. Look for high-heat and burning. Tighten screws on thermostat.
7. Test upper thermostat as follows:http://waterheatertimer.org/images/Electric-diagram-water-800.jpg
Test left-side #1 screw to right-side middle #4 screw. Test should read 240V at all times. If not, then ECO is tripped, thermostat is bad, or electricity is OFF
8) Water heater is cold so upper element should be ON. Test upper thermostat.
Test right-side #3 screw to left-side bottom #2 screw and it should read 240V
Test right-side #3 screw to right-side bottom #4 screw and it should read 0 volts
8. If upper thermostat checks out. Test upper element for 240 across both screws. If upper element does not read 240 when water is cold, then element is bad or there is a shorted wire between element and upper thermostat.
How to test element:http://waterheatertimer.org/How-to-test-water-heater-element.html
9. Do a full troubleshoot on electric water heaterhttp://waterheatertimer.org/How-to-troubleshoot-electric-problems-with-water-heater.html