Apparently, new records are not inserted in the table according to the order selected by "Test_Step_Id" field;
As seen in: http://en.wikipedia.org/wiki/SQL:
"The order of rows returned by an SQL query is never guaranteed unless an ORDER BY clause is specified".

In other words, a database system does not guarantee you the order in which table rows are stored. So, the order in which you insert your rows is not the one which has to be followed when selecting them afterwards. You must specify by "ORDER BY" how you want to sort your recordset.

It seems you need to revisit the concept of your system.

Best regards

Irek