A method and system of testing and verifying computer code in a
multi-threaded environment. The method includes testing a first piece of
computer code that is an implementation of a specification against a
second piece of computer code that is a different implementation of the
specification. Corresponding synchronization points in the first and
second pieces of code are defined and the first piece of code is executed
to the first synchronization point of the first piece of code. A state
message is generated and sent to the second piece of code. The second
piece of code is executed to the first synchronization point of the second
piece of code and then a state after message is generated and compared to
the state before message. The synchronization points are generally
selected from a group including conditional transfers of control, Method
calls, Method returns, and backward transfers of control.
Eine Methode und ein System der Prüfung und des Überprüfens des Computercodes in einem multi-verlegten Klima. Die Methode schließt die Prüfung eines ersten Stückes des Computercodes ein, der eine Implementierung einer Spezifikation gegen ein zweites Stück des Computercodes ist, der eine andere Implementierung der Spezifikation ist. Entsprechende Synchrounisierung Punkte in den ersten und zweiten Stücken des Codes werden definiert und das erste Stück des Codes wird zum ersten Synchrounisierung Punkt des ersten Stückes des Codes durchgeführt. Eine Zustandanzeige wird zum zweiten Stück des Codes erzeugt und geschickt. Das zweite Stück des Codes wird zum ersten Synchrounisierung Punkt des zweiten Stückes des Codes durchgeführt und dann wird ein Zustand nach Anzeige mit dem Zustand vor Anzeige erzeugt und verglichen. Die Synchrounisierung Punkte werden im Allgemeinen von einer Gruppe einschließlich bedingte Ablaufsprünge, Methode Anrufe, Methode Rückkehr und rückwärtige Ablaufsprünge vorgewählt.