Ben birim test amaçlı benim veritabanı izole etmek için bir işlem geri alma yöntemi kullanmak istiyorum. İdeal olarak, böyle bir yapının şey kullanmak istiyorsunuz:
public static function setUpBeforeClass(){
Mage_Core_Model_Resource_Transaction::beginTransaction();
}
public function testOne(){...}
public function testTwo(){...}
public static function tearDownAfterClass(){
Mage_Core_Model_Resource_Transaction::rollBack();
}
Ne yazık ki Mage_Core_Model_Resource_Transaction
sınıf kamu başlamak / RollbackTransaction işlevlerini göstermiyor. Ben ihtiyacını karşılamak için herhangi kamu Magento fonksiyonları bulamıyor. Çalışacak bir Zend eşdeğer var mı?
Ben Mage_Core_Model_Resource_Transaction
yeniden yazmak ve korumalı yöntemleri için kamu sarmalayıcılar ekleyebilirsiniz sanırım, ama ben böyle bir ana sınıfı geçersiz kılmak için tereddüt ediyorum.
Ben de kullanarak denedi
$this->model = Mage::getModel('model_being_tested');
$this->model->getResource()->beginTransaction();
...
$this->model->getResource()->rollBack();
ve daha sonra testlerde $this->model
kullanımı ancak statik işlevleri kullanılamaz.
Herhangi bir öneri veya alternatif mimariler? Şimdiden teşekkürler.