A bit late maybe, but could be usefull for others:
There's an add-on called road slope calculator.
It does exactly what you want, you need a DGM and a shapefile of your road. Your minimal resolution is 5-times the DEM's pixel-size. For my case this is 5m hence the minimum slopesegment-lenght for wich I could calculate slope would be 25 m.
Your output holds the height of start and end of the respective segment as well as lenght and percentage: