Nasıl PHPUnit 3.4.9 içinde global değişkenler erişebilir?

2 Cevap php

Ben PHPUnit 3.4.9 ile bazı eski kod için testleri yazmak için çalışıyorum, ama bu benim global değişkenler görünmez gibi görünüyor.

Nasıl PHPUnit 3.4.9 içinde global değişkenler erişebilir?

2 Cevap

Onlar mevcut olmalıdır. Ancak, PHPUnit testler arasında küresel devlet yedekleri:

Varsayılan olarak, PHPUnit küresel ve süper global değişkenler ($ GLOBALS, $ _ENV, $ _POST, $ _GET, $ _COOKIE, $ _SERVER, $ _FILES, $ _REQUEST) yapılan değişiklikler diğer testler etkilemez bir şekilde testleri çalıştırır. İsteğe bağlı olarak, bu izolasyon sınıfları statik özellikleri için uzatılabilir.

yani bu bir sorun olabilir. Ayrıca unutmayın

Örneğin PDO'nun olarak PHP tarafından sağlanan bazı sınıfları, nesneleri, getirilemez ve böyle bir nesne örneği için, $ GLOBALS dizide saklanan zaman yedekleme işlemi kıracak.

Testing Global State in the PHPUnit Manual üzerine bölümüne bakınız

Bu komutu kullanın phpunit --no-globals-backup