Junit 3, получить данные из тестов - PullRequest
1 голос
/ 28 марта 2012

Я хочу показать некоторые данные в моем графическом интерфейсе из моих тестов.Я использую JUnit 3, потому что другие приложения, которые я использую, используют это.Поэтому, если я использую JUnit 4, он рухнет.Я знаю, что возможности в JUnit 4 намного больше и лучше.Но я не могу это использовать, поэтому у меня есть несколько вопросов:

Я знаю, что вы можете получить некоторые данные из тестов JUnit 3, но некоторые данные я не могу найти: - Как я могу получить время выполнениякаждый / все тесты?- Как я могу получить имя каждого теста, который не проходит?- Как я могу получить правильные имена каждого теста?

Я смотрел в этом API, но я могу найти его: http://www.junit.org/junit/javadoc/3.8.1/

Я использую JUnit 3.8.2, но не смогне могу найти этот API.

1 Ответ

1 голос
/ 04 апреля 2012

Я использовал библиотеку ant.jar, чтобы создать отчет из тестов Junit. Сначала я устанавливаю Задачу и указываю свойства, как я хочу тест. И затем я создаю средство форматирования, которое я установил в XML, поэтому я получаю вывод XML теста JUnit.

Затем я помещаю Тест (в данном случае AllTests.class) в Задачу и выполняю ее. И вуаля я могу найти отчет в каталоге, который я установил в test.setTodir (.....)

Project project = new Project();
    JUnitTask task;
    try {
        task = new JUnitTask();
        project.setProperty("java.io.tmpdir","C:\\Reports\\XMLS"); //set temporary directory
        task.setProject(project);
        JUnitTask.SummaryAttribute sa = new JUnitTask.SummaryAttribute();
        sa.setValue("withOutAndErr");
        task.setFork(false);
        task.setPrintsummary(sa);
        Logger.info(getClass(), task.toString());
        FormatterElement formater = new FormatterElement();         
        FormatterElement.TypeAttribute type = new FormatterElement.TypeAttribute();
        type.setValue("xml");
        formater.setType(type);
        task.addFormatter(formater);
        JUnitTest test = new JUnitTest(AllTests.class.getName()); 
        test.setTodir(new File("C:\\Reports\\XMLS"));
        task.addTest(test);         
        task.execute();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
...