Jos*_*man 5 c java crc functional-testing
如何验证两个CRC实现是否会生成相同的校验和?
我正在寻找一种详尽的实施评估CRC特有的方法.
您可以将问题分为边缘情况和随机样本.
边缘情况.CRC输入有两个变量,字节数和每个字节的值.因此,创建0,1和MAX_BYTES的数组,其值范围为0到MAX_BYTE_VALUE.边缘案例套件将是您最有可能想要保留在JUnit套件中的东西.
随机样本.使用上面的范围,在循环中随机生成的字节数组上运行CRC.让循环运行的时间越长,输入的耗尽就越多.如果您的计算能力较低,请考虑将测试部署到EC2.
使用相同的输入创建多个单元测试,将两个实现的输出相互比较。