Скажем, у вас есть такой код, как это (в составленном langague, так как это не имеет значения для этого вопроса):
constant float PI = 3.14;
float getPi()
{
return PI;
}
Вы проверили бы это следующим образом:
testPiIs3point14()
{
// Test using literal in test case
AssertEquals( getPi(), 3.14 );
}
Или вот так:
testPiIs3Point14()
{
// Test using constant from implementation in test case
AssertEquals( getPi(), PI );
}
Другими словами, используете ли вы константы из вашей системы в тестах в своих тестовых случаях? Или это считается деталью реализации?