Ben genellikle (CC Phing desteği, phpundercontrol değil kullanarak) PHP test için CruiseControl ile çalışmak. Ben sadece Hudson ile biraz çalıştım, ancak başarılı adlı phing phpunit desteğini kullanarak phpunit testleri kaydetmek için Hudson aldık.
Aşağıdaki yönergeler, PHP proje inşa yönetmek Phing (değil Ant) kullanarak ve gerekli önkoşul yüklü olduğunu olacağını varsayabiliriz. (PHPUnit 2.x çok çalışmak gerekir) Ayrıca yüklü 3 phpunit varsayar.
Step 1: Setup Project for Phing/PHPUnit
Öncelikle proje Phing kullanarak test edilebilir olduğundan emin olmak gerekir. Burada birim testleri çalıştırır ve JUnit uyumlu XML çıktısı yaratan bir örnek Phing build.xml bulunuyor.
<?xml version="1.0" ?>
<project name="Test Project" default="test">
<property name="tests.dir" value="." />
<property name="reports.dir" value="${tests.dir}/reports" />
<target name="test" description="Run PHPUnit tests">
<phpunit haltonerror="true" haltonfailure="true" printsummary="true">
<batchtest>
<fileset dir="${tests.dir}">
<include name="**/*Test.php" />
</fileset>
</batchtest>
<formatter type="plain" usefile="false" />
<formatter type="xml" usefile="true" todir="${reports.dir}" outfile="test-results.xml" />
</phpunit>
</target>
</project>
Step 2: Setup Hudson
- Hudson için Phing eklentiyi yükleyin. Eğer may (I / opt/phing-2.3.3 koydum) bağımsız bir pacakge olarak Phing yüklemek ve bu dizine işaret etmek için Hudson config PHING_HOME yapılandırmanız gerektiğini unutmayın. Ayrıca PEAR yüklü Phing kullanmak gerekir; Ancak, ben bu test değil.
- Phing kullanarak projeyi oluşturmak için Hudson yapılandırın.
- Projenizden JUnit testleri toplamak için Hudson yapılandırın. Bizim sonuçları dosyasının adı sınama-Results.xml olacak. Yukarıdaki örnekte raporlar / *. Xml dosyaları toplamak için yapılandırmak istiyorum.
Step 3: Build!
İşte bunu yapmak gerekir. Şimdi proje bina deneyin. Umarım bu sonuçları toplayacak.
Ayrıca Phing presentation PHPUnit entegrasyon Phing hakkında daha fazla bilgi için ve (bir dereceye kadar) bu Phing presentation, ya da bu bkz.
İyi şanslar!