Shippable CI – integrace s Nette Testerem
- Filip111
- Člen | 244
Ahoj, nemáte někdo zkušenosti s napojením nette testeru na
Shippable?
Chvíli si s tím hraju – provede se sync, natáhnou se composerem
závislosti, ale při spuštění script s testy dostanu jen Permission
denied.
/home/shippable/d0c50e91-b9b7-4718-86bf-466edc468c2c.sh: line 84: ./tests/run.sh: Permission denied
Soubor shippable.yml vypadá následovně:
language: php
php:
- 5.3
before_script:
- mkdir -p shippable/codecoverage
- mkdir -p shippable/testresults
- composer install
script:
- ./tests/run.sh
Nakopnutí zpracování výsledků testů a přenesení do ./shippable/testresults by mi taky pomohlo.
Díky.
- Marek Šneberger
- Člen | 130
composer install
by měl být v sekci install
, ne
v before_script
.
Co se týče samotného spouštění testů, máme v sekci
script
něco
jako - ./vendor/bin/tester -s -j 32 -c ./tests/php.ini-unix ./tests
- Filip111
- Člen | 244
Všem díky za pomoc – dal bych si pár facek, problém byl samozřejmě
s oprávněním pro spuštění.
Už jsem moc dlouho na windows, takže mě to vůbec nenapadlo. Pořád jsem
hledal problém ve špatné cestě apod.
Ještě dotaz – sedí vám počet spuštěných testů ve výsledku
testů?
Mám v testech celkem 18 assertů (2 soubory, celkem 5 metod s názvem
test),
ve výsledcích testů ale vidím 52 passing, 11 skipped.
Zkoušel jsem jeden assert hodit do chyby, a potom vidím 51 passing,
1 failing, 11 skipped.
Netuším ale, kde se ty čísla berou. V xml generovaném nette testerem je něco jiného:
<?xml version="1.0" encoding="UTF-8"?>
<testsuites>
<testsuite errors="0" skipped="0" tests="5" time="0.2" timestamp="2015-09-19T15:00:39">
<testcase classname="tests/cases/ConditionTest.phpt [method=testOperators]" name="tests/cases/ConditionTest.phpt [method=testOperators]"/>
<testcase classname="tests/cases/FilterInputTest.phpt [method=testTextConditionValue]" name="tests/cases/FilterInputTest.phpt [method=testTextConditionValue]"/>
<testcase classname="tests/cases/FilterInputTest.phpt [method=testTextStringValue]" name="tests/cases/FilterInputTest.phpt [method=testTextStringValue]"/>
<testcase classname="tests/cases/FilterInputTest.phpt [method=testSelectGettingContro...]" name="tests/cases/FilterInputTest.phpt [method=testSelectGettingContro...]"/>
<testcase classname="tests/cases/FilterInputTest.phpt [method=testTextGettingControl]" name="tests/cases/FilterInputTest.phpt [method=testTextGettingControl]"/>
</testsuite>
</testsuites>