2010-01-16 4 views
2

지난 달 Qooxdoo를 사용하기 시작 했으므로 사용법에 대한 경험이 거의 없습니다. Qooxdoo 웹 사이트에서 testrunner와 같은 테스트 응용 프로그램을 만들어야하지만 내 응용 프로그램 환경에서 테스트를 수행해야합니다. 나는 그것이 나에게주는 내 응용 프로그램에 액세스하려고하면이 테스트에서 generate.py test qooxdoo에서 테스트 소스 애플리케이션

테스트를 만들기 generate.py source

    • 소스 버전 컴파일 된 응용 프로그램을 만든 : 나는 다음 단계를 따라 오류는 정의되지 않았기 때문에.

      그런 다음 웹 사이트에서 설명서를 읽으면이 유형의 테스트가 generate.py test-source을 사용하여 수행되어야한다는 것을 알았습니다. 그러나 테스트 폴더에서 index-source.html을 실행하면 결과가 동일합니다. 응용 프로그램이 작동하지 않습니다.

      올바른 방법은 무엇입니까? 나는 무엇을 잘못 했는가?

  • +0

    당신은 당신이 얻을 오류에 대한 더 구체적인 될 수 있을까? 첫 번째 경우 ("generate.py test")에서 정확히 정의되지 않은 것은 무엇입니까? 러너 응용 프로그램이 시작 되었습니까? 트리 메뉴에서 테스트를 보았습니까? 또는 테스트를 실행했을 때만 오류가 표시 되었습니까? qooxdoo의 테스트 러너는 종속 애플리케이션 클래스에서 작동하는 테스트 클래스를 가지고 있다는 점에서 JUnit 접근법을 따른다는 것을 기억하십시오. 테스트에서 주 Application.js를 인스턴스화하려고 시도하면 이것이 작동하지 않을 것이라고 생각합니다. – ThomasH

    +0

    예를 들어 응용 프로그램의 main() 메서드에서 응용 프로그램 개체에 "foo"속성을 설정합니다. 테스트 내에서 나는이 방식으로 "qx.core.Init.getApplication(). foo"속성을 얻으려고 시도하지만 정의되지 않았으므로 유일한 설명은 응용 프로그램이 초기화되지 않았다는 것입니다. – mck89

    답변

    2

    generate.py test 또는 generate.py test-source을 사용하면 qooxdoo 웹 사이트에서 본 것과 같은 응용 프로그램 테스트 러너를 만들 수 있습니다. 하지만 자신의 테스트 러너에는 애플리케이션의 테스트 네임 스페이스에 기록한 모든 테스트가 포함되어 있습니다.

    테스트 러너는 주로 단위 테스트를 위해 설계되었습니다. 이는 단위 응용 프로그램의 작은 조각을 테스트하는 것을 의미합니다. 예를 들어, 객체를 조작하는 데이터가 있다면, 애플리케이션 코드 에서처럼 객체를 생성하여 쉽게 테스트 할 수 있습니다. 응용 프로그램과 같은 작은 객체가 아닌 경우에도 마찬가지입니다. 당신은 단위 테스트에서 응용 프로그램의 인스턴스를 만들뿐만 아니라 해당 응용 프로그램에 대한 방법에 액세스 할 수 있습니다

    var app = new customNamespace.Application(); 
    this.assertTrue(app.yourMethodName()); 
    

    을하지만 당신은 정말 한 번에 전체 응용 프로그램을 테스트해야하는 경우, 셀레늄 [1] 더 나은 될 수있다 선택. qooxdoo는 qooxdoo 응용 프로그램을보다 쉽게 ​​처리 할 수 ​​있도록 사용자에게 셀렌 사용자 확장 기능을 제공합니다.

    [1] http://seleniumhq.org/

    [2] http://qooxdoo.org/contrib/project/simulator

    +0

    답장을 보내 주셔서 감사합니다. 지금은 qooxdoo testrunner를 사용하여 전체 애플리케이션을 테스트 할 수있는 방법이 없습니다. – mck89

    +0

    죄송합니다. 귀하의 답변을 더 잘 읽고 문서를 확인 했으므로 이제 어떻게해야하는지 이해했습니다. 다시 감사합니다. – mck89