How to Run Stepper motor through Serial Communication
Per the documentation of the AccelStepper’s runSpeed()
method:


  You must call this as frequently as possible, but at least once per
  step interval,


It appears the AccelStepper library is not compatible with blocking
code. Not a big deal, blocking code is almost always bad practice
anyway. However, Serial.readStringUntil() is a blocking function: it
will prevent the program from doing any useful work.

You have to read the serial port in a non-blocking fashion,
use the commands to set the motor speed, and always call runSpeed() as
frequently as possible.