2014-04-19 3 views
-1

Я нахожусь в недоумении по этому поводу, и я не уверен, как это объяснить, но я дам ему свой лучший снимок.Выполнение модульного теста по разделенному коду

У меня есть этот проект, где клиент хочет, чтобы я создал конкурс. Один человек должен загрузить свой Java-код, другому человеку пришлось загрузить его тесты JUnit. Мое приложение должно взять эти 2 файла и запустить загруженные тесты по загруженному коду.

Теперь я знаю, как сделать так, чтобы пользователи могли загружать свои файлы, но у меня нет ни малейшего представления о том, как я могу фактически запустить тесты. Может ли кто-нибудь помочь мне с этим?

Вот код, который я получил до сих пор:

public void actionPerformed(ActionEvent e) 
{ 
    if (e.getSource() == codeB) 
    { 
     //Get the code 
     File dir = new File(".."); 
     fc.setCurrentDirectory(dir); 
     int returnVal = fc.showOpenDialog(this); 
     if (returnVal == fc.APPROVE_OPTION) 
     { 
      codeF = fc.getSelectedFile(); 
      codeV.setText(codeF.getPath()); 
     } 
     else 
     { 
      System.out.println("Cancel"); 
     } 
    } 

    if (e.getSource() == testB) 
    { 
     //Get the test 
     File dir = new File(".."); 
     fc.setCurrentDirectory(dir); 
     int returnVal = fc.showOpenDialog(this); 
     if (returnVal == fc.APPROVE_OPTION) 
     { 
      testF = fc.getSelectedFile(); 
      testV.setText(testF.getPath()); 
     } 
     else 
     { 
      System.out.println("Cancel"); 
     } 
    } 

    if (e.getSource() == run) 
    { 
     //Run the tests on the code 
    } 
+0

Возможный дубликат [Как программно компилировать и создавать экземпляр класса Java?] (Http://stackoverflow.com/questions/2946338/how-do-i-programmatically-compile-and-instantiate-a-java -class) – Joe

+0

Я пытался заставить его работать, используя весь этот день, но я не могу заставить его работать. Я использую JDK, но он продолжает слишком сильно загружать класс. – RemcoW

+0

Помогает ли этот вопрос? [Как запустить тесты JUnit из моего java-приложения?] (Http://stackoverflow.com/questions/2543912/how-do-i-run-junit-tests-from-inside-my-java-application) –

ответ

0

Ну ваш фрагмент кода не имеет отношения вообще к вашей проблеме.

То, что вы должны сделать, это:

  1. компиляции класса
  2. компиляции класса модульных тестов
  3. нагрузки как в том же классе загрузчика
  4. выполнения тестов

Для того, чтобы программно выполнить тесты юнита, вам необходимо:

JUnitCore junit = new JUnitCore(); 
Result result = junit.runClasses(testClasses); // testClasses is the array of test classes to be executed 
Смежные вопросы