PHPUnit의 느린 테스트 케이스를 넘기는 phpunit-speedtrap

3099 단어 PHPUnitPHP
단체 테스트는 몇 초 안에 결과가 나오면 테스트를 돌리면서 개발이 쉬워지거나 지속적인 통합 대기 시간이 짧아지는 등 좋은 경우가 많다. 그러나 프로젝트가 성장함에 따라 테스트에 걸리는 시간이 늘어나고 기다리는 것이 힘들어질 수 있습니다.

johnkary/phpunit-speedtrap은 PHPUnit의 느린 테스트 케이스를 보고해주는 플러그인이다. 이것을 도입하면, 실행 시간이 임계치를 초과한 테스트 케이스에 대해서, 느린 테스트 워스트 랭킹을 테스트 결과에 표시해 준다. 그 결과를 힌트에 느린 테스트를 조정할 수 있습니다.



설치 방법


composer require --dev johnkary/phpunit-speedtrap

PHPUnit6 시스템을 사용하는 경우 최신 버전 3.0을 포함하지 않으므로 phpunit-speedtrap 2.0을 넣어야합니다.
composer require --dev johnkary/phpunit-speedtrap='^2.0'

설정



phpunit.xml에 listner를 추가하기 만하면됩니다.

phpunit.xml
<phpunit bootstrap="vendor/autoload.php">
...
    <listeners>
        <listener class="JohnKary\PHPUnit\Listener\SpeedTrapListener" />
    </listeners>
</phpunit>

임계값을 설정할 수도 있습니다.
  • slowThreshold : "느린 테스트 케이스"로 설정된 임계 값. 디폴트는 500밀리초.
  • reportLength: 테스트 결과에 표시할 최대 테스트 케이스 수입니다. 디폴트는 10건.

  • phpunit.xml
    <phpunit bootstrap="vendor/autoload.php">
        <!-- ... other suite configuration here ... -->
    
        <listeners>
            <listener class="JohnKary\PHPUnit\Listener\SpeedTrapListener">
                <arguments>
                    <array>
                        <element key="slowThreshold">
                            <integer>500</integer>
                        </element>
                        <element key="reportLength">
                            <integer>5</integer>
                        </element>
                    </array>
                </arguments>
            </listener>
        </listeners>
    </phpunit>
    

    좋은 웹페이지 즐겨찾기