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

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

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

5 ответов

Добавить комментарий

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

Поздравляем!
Ты сделал это,
Не закрывайтесь!
Введите свой шанс на победу 100 000 кредитов персонажей UberTTS
Спасибо Вам за Ваш визит!

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

Пасхальное яйцо UberTTS 100K
Share to...