본문 바로가기

Programing/Framework

[Spock] Internal of spock (Specification)

Spock에서 테스트 코드를 구현하기 위해서는 Specification을 직접 혹은 간접적으로 상속받아 구현한다.

class MyFirstSpecification extends Specification {


이  spock.lang.Specification는 MockingApi를 상속받는 추상메서드이다.

public abstract class Specification extends MockingApi

이 Specification 추상클래스는 Groovy의 with와 유사한 기능을 하는 with 구문을 포함해서 예외에 대한 동작 등을 가지고 있다. (버전 1.2 기준)


이 Specification은 MockingApi를 상속받고 있고, MockingApi는 SpecInternals를 상속받는다.

SpecInternals은 ISpecificationContext 인터페이스를 사용하는데 구현체로는 SpecificationContext를 사용하고 있다.