In the context of network protocols, interoperability testing is used to verify that two (or more) implementations communicate correctly while providing the services described in their respective specifications. This study is aimed at providing a method for interoperability test generation based on formal definitions. Contrary to previous works, this study takes into account quiescence of implementations that may occur during interoperability testing. This is done through the notion of interoperability criteria that give formal definitions of the different existing pragmatic interoperability notions. It is first proved that quiescence management improves non-interoperability detection. Two of these interoperability criteria are proved equivalent leading to a new method for interoperability test generation. This method avoids the well-known state explosion problem that may occur when using existing classical approaches.