SORU
16 Mart 2012, Cuma


Test PHPunit PHP ile başlıkları

PHPunit bazı özel başlıkları verir, bir sınıfı test etmek için kullanmaya çalışıyorum.

Sorun benim makine bu:

<?php

class HeadersTest extends PHPUnit_Framework_TestCase {

    public function testHeaders()
    {
        ob_start();

        header('Location: foo');
        $headers_list = headers_list();
        header_remove();

        ob_clean();

        $this->assertContains('Location: foo', $headers_list);
    }
}

ya da şu:

<?php

class HeadersTest extends PHPUnit_Framework_TestCase {

    public function testHeaders()
    {
        ob_start();

        header('Location: foo');
        header_remove();

        ob_clean();
    }
}

bu hatayı döndürebilir:

name@host [~/test]# phpunit --verbose HeadersTest.php 
PHPUnit 3.6.10 by Sebastian Bergmann.

E

Time: 0 seconds, Memory: 2.25Mb

There was 1 error:

1) HeadersTest::testHeaders
Cannot modify header information - headers already sent by (output started at /usr/local/lib/php/PHPUnit/Util/Printer.php:173)

/test/HeadersTest.php:9

FAILURES!
Tests: 1, Assertions: 0, Errors: 1.

Bu testi başka bir dosya dahil olsa çalıştırmadan önce başka bir terminal çıkış ise yok gibi görünüyor ve PHP etiketinin başlamadan önce başka bir karakter yok. Bu neden PHPunit içinde bir şey olabilir mi?

Sorun ne olabilir?

CEVAP
30 Mayıs 2012, ÇARŞAMBA


Ayrı bir süreçte test çalıştırma sorunu gidermek rağmen, testlerin büyük bir takımı çalıştırırken dikkat çekici bir yükü var.

Benim düzeltme gibi stderr: phpunit çıkışı doğrudan

phpunit --stderr <options>

Bu sorunu çözmek gerekir, ve aynı zamanda kapsayıcı bir işlev oluşturun ve tüm tekrarlarını değiştirmek zorunda değilsin kodunuzu anlamına gelir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ETrade Supply

    ETrade Suppl

    23 Temmuz 2011
  • JorteexHD

    JorteexHD

    20 NİSAN 2012
  • Leigh Momii

    Leigh Momii

    10 Mayıs 2006