Пример интеграции TestNG Spring

TestNG + Spring Integration Пример

В этом руководстве мы покажем вам, как тестировать компоненты Spring с помощью TestNG.

Используемые инструменты:

  1. TestNG 6.8.7

  2. Весна 3.2.2. ВЫПУСК

  3. Maven 3

  4. Eclipse IDE

1. Зависимости проекта

Чтобы интегрировать Spring с TestNG, вам понадобитсяspring-test.jar, добавьте следующее:

pom.xml

    
        3.2.2.RELEASE
        6.8.7
    

    
        
            org.springframework
            spring-core
            ${spring.version}
        

        
            org.springframework
            spring-test
            ${spring.version}
        

        
            org.testng
            testng
            ${testng.version}
            test
        
    

2. Компонент пружины

Создайте простой компонент Spring, позже мы протестируем этот компонент с помощью TestNG.

EmailGenerator.java

package com.example.testng.project.service.email;

public interface EmailGenerator {

    String generate();

}

RandomEmailGenerator.java

package com.example.testng.project.service.email;

import org.springframework.stereotype.Service;

@Service
public class RandomEmailGenerator implements EmailGenerator {

    @Override
    public String generate() {
        return "[email protected]";
    }

}

3. TestNG + Spring

Создайте файл конфигурации Spring в тестовой папке для сканирования компонентов Spring.

${project}/src/test/resources/spring-test-config.xml



    

Чтобы получить доступ к компонентам Spring в TestNG, extendsAbstractTestNGSpringContextTests, см. Следующий пример:

${project}/src/test/java/com/example/testng/examples/spring/TestSpring.java

package com.example.testng.examples.spring;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.testng.AbstractTestNGSpringContextTests;
import org.testng.Assert;
import org.testng.annotations.Test;
import com.example.testng.project.service.email.EmailGenerator;

@Test
@ContextConfiguration(locations = { "classpath:spring-test-config.xml" })
public class TestSpring extends AbstractTestNGSpringContextTests {

    @Autowired
    EmailGenerator emailGenerator;

    @Test()
    void testEmailGenerator() {

        String email = emailGenerator.generate();
        System.out.println(email);

        Assert.assertNotNull(email);
        Assert.assertEquals(email, "[email protected]");


    }

}

Выход

[email protected]
PASSED: testEmailGenerator

===============================================
    Default test
    Tests run: 1, Failures: 0, Skips: 0
===============================================

Скачать исходный код

Скачать -TestNG-Spring-Example.zip (35 КБ)