提交 5823ff08 编写于 作者: C Calvin

#29 functional test结构再次大升级

上级 8225774e
@echo off
echo [INFO] run all functional test.
cd %~dp0
cd ..
set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m
call mvn clean integration-test -Pintegration-test
cd bin
pause
\ No newline at end of file
......@@ -5,7 +5,7 @@ cd %~dp0
cd ..
set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m
call mvn clean integration-test -Psmoke-test
call mvn clean test -Psmoke-test
cd bin
pause
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springside</groupId>
......@@ -108,20 +109,25 @@
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<artifactId>jersey-client</artifactId>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-client</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
</dependency>
<!-- REST end -->
<!-- VALIDATOR -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
</dependency>
<!-- LOGGING begin -->
<dependency>
<groupId>org.slf4j</groupId>
......@@ -141,8 +147,8 @@
</dependency>
<dependency>
<groupId>log4jdbc</groupId>
<artifactId>log4jdbc4</artifactId>
</dependency>
<artifactId>log4jdbc4</artifactId>
</dependency>
<!-- LOGGING end -->
<!-- GENERAL UTILS begin -->
......@@ -159,7 +165,7 @@
<artifactId>dozer</artifactId>
</dependency>
<!-- GENERAL UTILS end -->
<!-- TEST begin -->
<dependency>
<groupId>junit</groupId>
......@@ -170,12 +176,12 @@
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
......@@ -184,7 +190,7 @@
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
......@@ -208,6 +214,25 @@
<build>
<plugins>
<!-- 增加functional test的Source目录 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/functional</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<!-- junit插件設置內存 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
......@@ -228,7 +253,7 @@
</excludes>
</instrumentation>
</configuration>
</plugin>
</plugin>
<!-- eclipse插件, 设定wtp版本并添加springIDE nature -->
<plugin>
......@@ -280,29 +305,23 @@
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>smoke-test</id>
<build>
<plugins>
<!-- 屏蔽单元测试执行 -->
<!-- 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
<groups>org.springside.examples.miniservice.functional.category.Smoke</groups>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
</plugin>
<!-- 运行integration-test的插件 , 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<groups>org.springside.examples.miniservice.functional.category.Smoke</groups>
<useSystemClassLoader>false</useSystemClassLoader>
</configuration>
</plugin>
</plugin>
</plugins>
</build>
</profile>
......@@ -311,22 +330,16 @@
<id>integration-test</id>
<build>
<plugins>
<!-- 屏蔽单元测试执行 -->
<!-- 执行所有functional test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
</plugin>
<!-- 运行integration-test的插件 , 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<useSystemClassLoader>false</useSystemClassLoader>
</configuration>
</plugin>
</plugin>
</plugins>
</build>
</profile>
......@@ -337,24 +350,25 @@
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<configuration>
<target>
<property file="src/main/resources/application.properties" />
<artifactId>maven-antrun-plugin</artifactId>
<configuration>
<target>
<property file="src/main/resources/application.properties" />
<property name="sql.type" value="h2" />
<property name="dbunit.datatype" value="org.dbunit.ext.h2.H2DataTypeFactory" />
<taskdef name="dbunit" classname="org.dbunit.ant.DbUnitTask" classpathref="maven.test.classpath" />
<echo>Waiting for the h2 server start...</echo>
<waitfor maxwait="500" maxwaitunit="second">
<and>
<socket server="localhost" port="9092"/>
</and>
<echo>Waiting for the h2 server start...</echo>
<waitfor maxwait="500" maxwaitunit="second">
<and>
<socket server="localhost" port="9092" />
</and>
</waitfor>
<echo>The h2 server started.</echo>
<sql driver="${jdbc.driver}" url="${jdbc.url}" userid="${jdbc.username}" password="${jdbc.password}" src="src/main/resources/sql/${sql.type}/schema.sql" onerror="continue">
<echo>The h2 server started.</echo>
<sql driver="${jdbc.driver}" url="${jdbc.url}" userid="${jdbc.username}" password="${jdbc.password}"
src="src/main/resources/sql/${sql.type}/schema.sql" onerror="continue">
<classpath refid="maven.test.classpath" />
</sql>
......@@ -363,10 +377,11 @@
<property name="datatypeFactory" value="${dbunit.datatype}" />
</dbconfig>
<classpath refid="maven.test.classpath" />
<operation type="CLEAN_INSERT" src="src/test/resources/data/sample-data.xml" format="flat" transaction="true"/>
</dbunit>
</target>
</configuration>
<operation type="CLEAN_INSERT" src="src/test/resources/data/sample-data.xml" format="flat"
transaction="true" />
</dbunit>
</target>
</configuration>
</plugin>
</plugins>
</build>
......
......@@ -7,7 +7,6 @@ import org.junit.BeforeClass;
import org.junit.Ignore;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springside.examples.miniservice.Start;
import org.springside.modules.test.data.H2Fixtures;
import org.springside.modules.test.functional.JettyFactory;
import org.springside.modules.test.spring.SpringContextHolder;
......
package org.springside.examples.miniservice;
package org.springside.examples.miniservice.functional;
import org.eclipse.jetty.server.Server;
import org.springside.modules.test.functional.JettyFactory;
......
......@@ -9,10 +9,10 @@ import org.dozer.DozerBeanMapper;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.springside.examples.miniservice.Start;
import org.springside.examples.miniservice.data.AccountData;
import org.springside.examples.miniservice.entity.User;
import org.springside.examples.miniservice.functional.BaseFunctionalTestCase;
import org.springside.examples.miniservice.functional.Start;
import org.springside.examples.miniservice.functional.category.Smoke;
import org.springside.examples.miniservice.webservice.dto.DepartmentDTO;
import org.springside.examples.miniservice.webservice.dto.UserDTO;
......@@ -60,7 +60,6 @@ public class AccountResourceServiceIT extends BaseFunctionalTestCase {
}
@Test
@Category(Smoke.class)
public void createUser() {
User user = AccountData.getRandomUser();
UserDTO dto = new DozerBeanMapper().map(user, UserDTO.class);
......
......@@ -11,8 +11,8 @@ import org.apache.cxf.transport.http.HTTPConduit;
import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.springside.examples.miniservice.Start;
import org.springside.examples.miniservice.functional.BaseFunctionalTestCase;
import org.springside.examples.miniservice.functional.Start;
import org.springside.examples.miniservice.functional.category.Smoke;
import org.springside.examples.miniservice.webservice.ws.AccountWebService;
import org.springside.examples.miniservice.webservice.ws.result.UserListResult;
......
@echo off
echo [INFO] run all functional test.
cd %~dp0
cd ..
set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m
call mvn clean integration-test -Pintegration-test
cd bin
pause
\ No newline at end of file
......@@ -5,7 +5,7 @@ cd %~dp0
cd ..
set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m
call mvn clean integration-test -Psmoke-test
call mvn clean test -Psmoke-test
cd bin
pause
\ No newline at end of file
......@@ -252,6 +252,25 @@
<build>
<plugins>
<!-- 增加functional test的Source目录 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/functional</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<!-- test插件, 设置內存/ClassLoader -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
......@@ -305,26 +324,17 @@
<id>smoke-test</id>
<build>
<plugins>
<!-- 屏蔽单元测试执行 -->
<!-- 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
<groups>org.springside.examples.miniweb.functional.category.Smoke</groups>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
</plugin>
<!-- 运行integration-test的插件 , 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<groups>org.springside.examples.miniweb.functional.category.Smoke</groups>
<useSystemClassLoader>false</useSystemClassLoader>
<systemPropertyVariables>
<selenium.driver>${selenium.driver}</selenium.driver>
</systemPropertyVariables>
</configuration>
</plugin>
</plugin>
</plugins>
</build>
</profile>
......@@ -333,25 +343,16 @@
<id>integration-test</id>
<build>
<plugins>
<!-- 屏蔽单元测试执行 -->
<!-- 执行所有functional test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
</plugin>
<!-- 运行integration-test的插件 , 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<useSystemClassLoader>false</useSystemClassLoader>
<systemPropertyVariables>
<selenium.driver>${selenium.driver}</selenium.driver>
</systemPropertyVariables>
</configuration>
</plugin>
</plugin>
</plugins>
</build>
</profile>
......
......@@ -12,7 +12,6 @@ import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springside.examples.miniweb.Start;
import org.springside.modules.test.data.H2Fixtures;
import org.springside.modules.test.functional.JettyFactory;
import org.springside.modules.test.functional.Selenium2;
......
package org.springside.examples.miniweb;
package org.springside.examples.miniweb.functional;
import org.eclipse.jetty.server.Server;
import org.springside.modules.test.functional.JettyFactory;
......
@echo off
echo [INFO] run all functional test.
cd %~dp0
cd ..
set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m
call mvn clean integration-test -Pintegration-test
cd bin
pause
\ No newline at end of file
......@@ -5,7 +5,7 @@ cd %~dp0
cd ..
set MAVEN_OPTS=%MAVEN_OPTS% -XX:MaxPermSize=128m
call mvn clean integration-test -Psmoke-test
call mvn clean test -Psmoke-test
cd bin
pause
\ No newline at end of file
......@@ -169,10 +169,6 @@
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-spring</artifactId>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
</dependency>
<dependency>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-multipart</artifactId>
......@@ -241,8 +237,12 @@
<!-- JSON -->
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
</dependency>
<!-- XML begin -->
......@@ -405,6 +405,25 @@
<build>
<plugins>
<!-- 增加functional test的Source目录 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/functional</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<!-- test插件,设定內存/ClassLoader -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
......@@ -458,26 +477,17 @@
<id>smoke-test</id>
<build>
<plugins>
<!-- 屏蔽单元测试执行 -->
<!-- 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
<groups>org.springside.examples.showcase.functional.category.Smoke</groups>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
</plugin>
<!-- 运行integration-test的插件 , 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<groups>org.springside.examples.showcase.functional.category.Smoke</groups>
<useSystemClassLoader>false</useSystemClassLoader>
<systemPropertyVariables>
<selenium.driver>${selenium.driver}</selenium.driver>
</systemPropertyVariables>
</configuration>
</plugin>
</plugin>
</plugins>
</build>
</profile>
......@@ -486,25 +496,16 @@
<id>integration-test</id>
<build>
<plugins>
<!-- 屏蔽单元测试执行 -->
<!-- 执行所有functional test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
<includes>
<include>**/*IT.java</include>
</includes>
</configuration>
</plugin>
<!-- 运行integration-test的插件 , 仅执行smoke test-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<useSystemClassLoader>false</useSystemClassLoader>
<systemPropertyVariables>
<selenium.driver>${selenium.driver}</selenium.driver>
</systemPropertyVariables>
</configuration>
</plugin>
</plugin>
</plugins>
</build>
</profile>
......
......@@ -5,7 +5,6 @@ import javax.sql.DataSource;
import org.eclipse.jetty.server.Server;
import org.junit.BeforeClass;
import org.junit.Ignore;
import org.springside.examples.showcase.Start;
import org.springside.modules.test.data.H2Fixtures;
import org.springside.modules.test.functional.JettyFactory;
import org.springside.modules.test.spring.SpringContextHolder;
......
......@@ -6,7 +6,6 @@ import org.junit.Ignore;
import org.openqa.selenium.WebDriver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springside.examples.showcase.Start;
import org.springside.modules.test.functional.Selenium2;
import org.springside.modules.test.functional.WebDriverFactory;
import org.springside.modules.utils.PropertiesLoader;
......
package org.springside.examples.showcase;
package org.springside.examples.showcase.functional;
import org.eclipse.jetty.server.Server;
import org.springside.modules.test.functional.JettyFactory;
......
......@@ -7,8 +7,8 @@ import java.util.List;
import org.junit.BeforeClass;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.springside.examples.showcase.Start;
import org.springside.examples.showcase.functional.BaseFunctionalTestCase;
import org.springside.examples.showcase.functional.Start;
import org.springside.examples.showcase.functional.category.Smoke;
import org.springside.examples.showcase.webservice.rs.client.UserResourceClient;
import org.springside.examples.showcase.webservice.rs.dto.UserDTO;
......
......@@ -807,28 +807,15 @@
</includes>
</configuration>
</plugin>
<!-- 增加更多的Source和Test Source目录插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.12</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit47</artifactId>
<version>2.12</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
</execution>
</executions>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
</plugin>
<!-- cobertura插件 -->
<!-- cobertura 测试覆盖率统计插件 -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册