I agree with inf3rno's answer: you should not use setUp if the constructor needs parameters.
Maybe you can get advantage of another feature: dataProviders. They allow you to define multiple data sets for the same test:
public function sumExamples()
{
return array(
array(1, 2, 3),
array(1, -1, 0),
array(-1, -2, -3)
);
}
/**
* @dataProvider sumExamples
*/
public function testSum($a, $b, $expected_result)
{
$instance = new Sum(1, 2);
$this->assertEquals($expected_result, $sum->getValue());
}
This technique is useful only when the assertions are the same for all the data sets, of course.
Finally, if the constructor parameters are mandatory for the object to work, I'd keep them where they are. Getting rid of them just so you can instantiate the object at setUp is not correct IMO.