2010-08-04 6 views
0

유닛 테스트에서 코드에 이런 종류의 코드를 사용하고 있습니다.도우미가 레일 유닛 테스트에서 작동합니다.

test "should be awesome" do 
    assert true 
end 

저는 조명기 대신 FactoryGirl을 사용하고 있습니다.

내가 많이 반복하고 도우미 기능을 사용하는 것이 매우 유용하다는 것을 알게되었습니다. 단위 테스트에서 도우미 함수를 만들고 호출하는 가장 좋은 방법은 무엇입니까? 제어기에있는 것처럼 before_filter을 사용할 수 있습니까 (입력하려고 시도했지만 정의되지 않은 메소드 일뿐입니다). 어떤 도움을 주셔서 감사합니다!

답변

5

단위 테스트에 유틸리티 기능을 문제없이 추가 할 수 있습니다. "test_something"과 같은 이름을 지정하지 않으면 유닛 테스트로 실행되지 않습니다. 그런 다음 실제 단위 테스트 메소드 (사용하는 형식이 클래스의 메소드를 가집 니 다.)에서 호출 할 수 있습니다.

그래서 모든 장소에 걸쳐 사용하려고

test "should be awesome" do 
    assert_general_awesomeness 
    assert true 
end 

private 

def assert_general_awesomeness 
    assert true 
end 

유틸리티 방법은 test_helper에 갈 수 그리고 그들은 모든 테스트에 사용할 수 있습니다. 대안으로 일반적인 유틸리티 방법을 제공하기 위해 테스트에 혼합 된 모듈을 사용할 수도 있습니다.

단위 테스트 전에 설정하는 공통 호출을 수행하는 경우 클래스의 각 테스트 전에 호출되는 setup 메서드에 넣을 수 있습니다.

관련 문제