а встроеный version_compare ( string $version1 , string $version2 ) : int не подходит?
Это куда такие тестовые?
детализации чего?