Я бы рекомендовал покончить с параметром out. Проверьте, нужны ли вам оба возвращаемых значения. Особенно, если ваше возвращаемое значение - это коды ошибок. Используйте исключения из кода ошибки, поскольку это упрощает код клиента
string realReturnValue;
if(!MyMethod(out realReturnValue)
{
//handle error
}
против
var realReturnValue = MyMethod()
Если они у вас есть, создайте тип, который переносит [Result, OutputValue]. Определите Равные по этому типу.
Assert.AreEqual(new ReturnType(true, "10"), valueReturnedByMethodCall)