jMock Tutorial for Beginners

Учебник по jmock для начинающих
Оглавление

Самоучитель по jMock для начинающих с тестовым проектом

Что такое jMock?

jMock - это библиотека, которая помогает создавать управляемые тестами разработки Java-кода с использованием mock-объектов.С помощью jMock Мы можем самостоятельно тестировать класс, который зависит от другого класса.

Предположим, если один класс зависит от другого, мы можем создать макет зависимого класса и задать начальные свойства для проверки зависимого класса.

Самоучитель Imock

Учебный пример по jMock:

Примечание: Для этого тестового проекта мы используем платформу Eclipse. Вы можете загрузить Eclipse с сайта здесь.

Убедитесь, что Среда выполнения Java SE уже установлен, чтобы программа установки Eclipse могла начать установку.

Создайте тестовый проект на java с именем Test project. Включите в его classpath следующие банки:

Самоучитель по JmockPin

  • jmock-2.5.1.jar
  • hamcrest-core-1.1.jar
  • hamcrest-library-1.1.jar
  • JUnit-4.5.jar

Самоучитель по Jmock для начинающихPin

Создайте интерфейс с именем ITestInterface.Поместите следующий код в этот интерфейс:

проверка упаковки;

Публичный интерфейс ITestInterface

{

public int test();

}

Что такое JmockPin

Создайте TestClass1.Поместите в этот класс следующий код

проверка упаковки;

public class TestClass1 implements ITestInterface

{

public int test()

{

вернуться 3;

}

}

Пример JmockPin

Создайте TestClass2.Поместите в этот класс следующий код





проверка упаковки;

public class TestClass2

{

ITestInterface testInterface;

public TestClass2()

{

this.testInterface=testInterface;

}

public int testMock()

{

int result=testInterface.test();

Вернуть результат;

}

}

Учебник по Jmock PdfPin

Создайте TestClass3.Поместите в этот класс следующий код

проверка упаковки;

import junit.framework.Assert;

import org.jmock.Mockery;

import org.junit.Test;

public class TestClass3

{

@Test

public void testJmock()

{

org.jmock.Mockery TestInterfaceMock= новый Mockery();

final ITestInterface testInterface=TestInterfaceMock.mock(ITestInterface.class);

TestInterfaceMock.checking(new org.jmock.Expectations()

{{

oneOf(testInterface).test();

will(returnValue((3)));

}});

int j=testInterface.test();

System.out.println(j);

Assert.assertEquals(j, 3);

}

}

Jmock для начинающихPin

Из приведенного выше примера видно, что TestClass1 реализует интерфейс ITestInterface. Здесь, как мы видим, TestClass2 зависит от TestClass1. Поэтому, чтобы сделать его юнит-тестируемым, мы не делаем новый TestClass1 в TestClass2. Мы используем mock-объект.

В TestClass3 мы создаем Mock-объект ITestInterface.Мы устанавливаем ожидание, что этот объект вернет 3 при вызове во время модульного тестирования TestClass2.Например, в TestClass3 при вызове testInterface.test() вызов идет в TestClass2.В TestClass2 при вызове testInterface.test() значение возвращается mock-объектом.Таким образом, мы тестируем TestClass2 независимо.

Чтобы протестировать приведенный выше пример, щелкните правой кнопкой мыши на TestClass3 и выберите run as Junit test.


Junit TestPin
Junit Test

На экране появится следующее окно:

Запуск тестирования JunitPin

Тестовый пример выполнен успешно!

Picture of Anson Antony
Энсон Энтони
Энсон — соавтор и основатель компании www.askeygeek.com. Изучение чего-то нового всегда было его страстью, а ASKEYGEEK.com — результат его страсти к технологиям и бизнесу. Он имеет десятилетний разносторонний опыт в области аутсорсинга бизнес-процессов, финансов и бухгалтерского учета, информационных технологий, операционного совершенствования и бизнес-аналитики. За время своего пребывания в должности он работал в таких организациях, как Genpact, Hewlett Packard, M*Modal и Capgemini, занимая различные должности и обязанности. Помимо бизнеса и технологий, он любитель кино, который часами вместе смотрит и изучает кино, а также кинорежиссер!

5 ответов

Добавить комментарий для Anson Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Поздравляем!
Ты сделал это,
Не закрывайтесь!

Вставай 60 000 Кредиты на персонажей UberTTS бесплатно!!!

Это всплывающее окно не покажет вам решать снова!!!

УберТТС
Share to...