테스트의 [사용자 코드] 또는 [스텁]에서 클래스 코드를 사용하여 포인터 객체를 생성하여 사용할 수 있습니다.

예제

아래 소스 코드로 테스트를 생성합니다.

using namespace std;
class Animal {
public:
    virtual void bark() const = 0;
    virtual ~Animal() {}
};

class Dog: public Animal {
public:
	 void bark() const override {
	    std::cout << "wal!" << std::endl;
	 }
	};

void barkAnimal(Animal* animal){
    animal -> bark();
}

int main(){
	Animal * dog = new Dog();
	barkAnimal(dog);
    return 0;
}

[사용자 코드]에서 사용하기

  1. barkAnimal 테스트의 [테스트 편집기] -> [테스트 구조]를 엽니다.
  2. [파라미터/리턴] 하위 animal의 생성 방법을 [사용자 코드]로 변경합니다.
  3. [클래스 팩토리 뷰]에서 Animal의 클래스 코드 내부 cs_create_classcode_factory_cpp_Animal(); 함수를 사용하여 포인터 객체를 만들 수 있습니다.
    • Animal * animal =CS_FACTORY cs_create_classcode_factory_cpp_Animal();와 같이 CS_FACTORYcs_create_classcode_factory_cpp_Animal(); 함수 앞에 붙여서 사용합니다.

[스텁]에서 사용하기

  1. main 테스트에 barkAnimal 스텁이 연결돼있는지 확인합니다.
  2. [스텁 뷰]에서 barkAnimal 스텁을 엽니다.
  3. 비어있는 barkAnimal 스텁에 Animal* 객체를 클래스 팩토리에서 만들어진 함수를 사용하여 생성합니다.
    Animal* animal = CS_FACTORY cs_create_classcode_factory_cpp_Animal(); animal->bark();

Need more help with this?
Don’t hesitate to contact us here.

Thanks for your feedback.