2015-03-04 1 views
1

Знаете ли вы, как студенты могут предоставить мне файл .java с помощью Google Диска, а затем проверить эти файлы?Как JUnit проверить несколько файлов .java в Eclipse

Сейчас у меня есть ученики, загружающие их файл в папку GDrive. Эти папки в конечном итоге становятся исходными папками в моем Eclipse. Мне это нравится, потому что тогда все .java-файлы могут иметь одинаковые имена, что приятно тестировать. Но тогда у меня есть несколько файлов с тем же именем, и Eclipse выдает ошибки из-за этого. Есть ли способ обойти это?

Могут ли студенты загружать свои файлы в одну общую папку с разными именами (например, Program_DS, Program_TK), а затем я могу сделать модульный тест, который каким-то образом создает динамическое имя для объекта? Например, Program_** p = new Program_**();.

Я просто не уверен в хорошем способе этого.

Спасибо.

+0

Это хорошая настройка :) – Drux

+1

Почему вы не настраиваете сервер непрерывной интеграции и репо, поэтому, когда ваши ученики совершают и нажимают на него, автоматически обрабатываются модульные тесты? – JNYRanger

+0

Чтобы быть понятным, попросили ли вы спросить своих учеников о реализации класса 'X', и вы уже написали модульный тест для' X', и вам нужно проверить, что их реализация проходит тест? –

ответ

1

Я бы определил интерфейс, который должны выполнить ваши ученики. Они должны называть их реализации бесконфликтными способами, например.

public interface Class1TestA { 
// ... 
} 

public class FirstnameLastnameClass1TestA implements Class1TestA { 
    // ... 
} 

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

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

+0

Я не уверен, как это сделать, поэтому я рассмотрю его. Спасибо за совет. – tazboy

+0

@tazboy Какой бит, в частности, оставляет вас неуверенным? –

+0

Возможно, все, но более конкретно, «параметризованный» тест JUnit. Я сделал тест JUnit и набор, но я не уверен, как это сделать. Тогда мне придется выяснить, как сделать метод создания параметров и как сканировать путь к классам. – tazboy

Смежные вопросы