Возможно ли запустить внешнюю команду перед запуском тестов в данном файле JUnit? Я запускаю свои тесты с помощью команды запуска Eclipse. Использование JUnit 4.Запустить внешнюю команду перед тестированием JUnit в Eclipse
Спасибо.
Возможно ли запустить внешнюю команду перед запуском тестов в данном файле JUnit? Я запускаю свои тесты с помощью команды запуска Eclipse. Использование JUnit 4.Запустить внешнюю команду перед тестированием JUnit в Eclipse
Спасибо.
Очень расплывчатый вопрос. В частности, вы не указали, как вы используете тесты JUnit. Также вы упомянули «файл», и файл может содержать несколько тестов JUnit. Вы хотите запустить внешнюю команду перед каждым из этих тестов или до того, как какая-либо из них будет выполнена?
Но больше на тему:
Если вы используете JUnit 4 или больше, то вы можете пометить метод с @Before
аннотацию и метод будет выполняться перед каждым из ваших помеченных @Test
методов. В качестве альтернативы, пометка статического метода void с помощью @BeforeClass
приведет к его запуску до запуска любого из методов @Test
в классе.
public class MyTestClass {
@BeforeClass
public static void calledBeforeAnyTestIsRun() {
// Do something
}
@Before
public void calledBeforeEachTest() {
// Do something
}
@Test
public void testAccountCRUD() throws Exception {
}
}
Если вы используете версию JUnit ранее, чем 4, то вы можете переопределить setUp()
и setUpBeforeClass()
методы в качестве замены для @Before
и @BeforeClass
.
public class MyTestClass extends TestCase {
public static void setUpBeforeClass() {
// Do something
}
public void setUp() {
// Do something
}
public void testAccountCRUD() throws Exception {
}
}
Предполагая, что вы используете JUnit 4.0, вы можете сделать следующее:
@Test
public void shouldDoStuff(){
Process p = Runtime.getRuntime().exec("application agrument");
// Run the rest of the unit test...
}
Если вы хотите запустить внешнюю команду для каждого модульного тестирования, то вы должны сделать это в методе @Before
установки ,
Спасибо. Ваше сообщение, по сути, отвечает на мой вопрос, хотя я надеялся на то, что не полагается на сам язык (Run configuration и т. Д.). – Petr
@Petr - без проблем. JUnit - очень плотная, хорошо определенная библиотека (одна из тех, что нравится большинству людей). Если вы хотите настроить внешнюю конфигурацию, вам нужно указать более подробную информацию - например, вы запускаете свои тесты с Maven, Ant, в среде IDE и т. Д. И т. Д. – Perception
@Petr - nvm Я вижу, что вы редактировали свой вопрос. Я не верю, что вы можете настроить внешнюю команду для запуска как часть вызова JUnit. Но другие методы, которые я изложил, должны работать нормально. – Perception