我尝试测试时无法为内部方法设定值。这里我写了一个样本班。我为同一个类创建了模拟对象,但不起作用。php单位的内部方法的设定值
class A
{
public function OneTest()
{
if($this->TwoTest()){
return true;
}
}
public function TwoTest()
{
// return somethings
}
}
我是新的phpunit测试写作。如果有一位专家帮助我,那对我有好处。我想测试这种方法。我曾尝试过:
class ATest extends \PHPUnit_Framework_TestCase
{
public function testOne()
{
$helper = new testOne();
// trying to set TwoTest() method value but does not effect.
$mock = $this->createMock(A::class);
$mock->method("TwoTest")
->willReturn(true);
$this->assertTrue($helper->OneTest();
}
}
其实我不知道如何使用我的模拟方法结果。我在twoTest方法中的实际实现包含一些与数据库相关的代码。我不想在测试时间运行db代码。