336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

파워셸은 운영과 개발의 경계에 있는 도구로 윈도우 인프라 분야의 관리자라면 이제 관리의 효율성과 정확성, 자동화를 위해 꼭 배워야 할 도구이다.


How to install on Mac

$ brew tap caskroom/cask

$ brew cask install powershell 



How to upgrade

$ brew update 

$ brew cask upgrade powershell



How to Run

pwsh

'ⓟrogramming > PowerShell' 카테고리의 다른 글

PowerShell Script - 기초  (0) 2018.06.26
파이프라인 시스템  (0) 2018.06.25
개체 (Object)  (0) 2018.06.23
모듈과 스냅인  (0) 2018.06.23
PowerShell Basic  (0) 2018.06.19
블로그 이미지

뚱땡이 우주인

,
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

@RunWith(SpringJUnit4ClassRunner.class)

: JUnit 애너테이션인 @RunWith에 SpringJUnit4ClassRunner.class를 지정하면 JUnit 테스트에서 스프링의 기능을 사용할 수 있습니다.


@SpringApplicationConfiguration(classes = App.class)

: @SpringApplicationConfiguration으로 테스트용 ApplicationContext를 만듭니다. (@EnableAutoConfiguration을 붙인 클래스를 지정합니다.)


@WebAppConfiguration

: @WebAppConfiguration으로 웹 애플리케이션 테스트임을 알립니다. 이 애너테이션과 @SpringApplicationConfiguration을 조합하면 내장 서버를 실행할 수 있습니다.


@IntergrationTest("server.port:0")

: @IntergrationTest로 통합 테스트 기능을 활성화 합니다.

  value 속성으로 테스트할 때 사용할 속성을 덮어쓸 수 있습니다.

  위 예제에서는 server.port 속성에 테스트용 서버 포트를 지정합니다.

  0 으로 지정하면 현재 비어 있는 포트를 사용할 수 있습니다. 이 기능은 다른 프로세스가 사용하고 있는 포트를 중복 사용해서 테스트가 실패하는 일이 일어나지 않게 하므로 아주 편리합니다.


@Value("${local.server.port}")

int port;

위 @IntergrationTest("server.port:0") 에서 사용한 포트 번호를 주입합니다

속성값을 주입 하려면 @Value("${속성이름}") 형식을 씁니다.


RestTemplate restTemplate = new TestRestTemplate();

: 실행한 내장 서버에 접속하기 위해 HTTP 클라이언트를 준비합니다.

TestRestTemplate은 일반적인 RestTemplate에 비해 오류가 발생해도 바로 처리하는 기능과 쉽게 Basic 인증을 설정할 수 있는 기능과 같은 테스트용 설정 기능이 추가되어 있습니다.


@Test
public void testHome() {
ResponseEntity<String> response = restTemplate.getForEntity(
"http://localhost" + port, String.class););

assertThat(response.getStatusCode(), is(HttpStatus.OK));
assertThat(response.getBody(), is("Hello World!"));
}

RestTemplate의 getForEntity() 메소드를 사용해서 HTTP GET 방식으로 요청 합니다.

첫 번째 인자에는 URL을, 두 번째 인자에는 직렬화에 사용할 타입을 지정합니다.


ResponseEnity에는 HTTP 응답의 상태 코드, 헤더 내용이 저장되어 있습니다.

'ⓦeb ⓢtory > Spring' 카테고리의 다른 글

[SpringBoot] QuickStart  (0) 2018.03.10
블로그 이미지

뚱땡이 우주인

,
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

$ mvn -B archetype:generate -DgroupId=com.example -DartifactId=hajiboot -Dversion=1.0.0-SNAPSHOT -DarchetypeArtifactId=maven-archetype-quickstart


app.java

package com.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
* Hello world!
*
*/

@RestController // 이 클래스가 웹 애플리케이션에서 요청(request)을 받아들이는 컨트롤 클래스임을 나타냄
@EnableAutoConfiguration // 다양한 설정이 자동으로 수행되고 기존의 스프링 애플리케이션에서 필요했던 설정 파일들이 필요 없어짐
public class App
{
@RequestMapping("/") // 메서드가 HTTP요청을 받아들이는 메서드임을 나타냄
String home() {
return "Hello World!!!"; // HTTP 응답을 반환
}
public static void main( String[] args )
{
// 스피링 부트 애플리케이션을 실행하는데 필요한 처리
// @EnableAutoConfiguration 가 붙은 클래스를 첫번째 인자로 지정
SpringApplication.run(App.class, args);
}
}



pom.xml

<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>hajiboot</artifactId>
<packaging>jar</packaging>
<version>1.0.0-SNAPSHOT</version>
<name>hajiboot</name>
<url>http://maven.apache.org</url>

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
</parent>

<dependencies>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-test -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>2.0.0.RELEASE</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.0.0.RELEASE</version>
</plugin>
</plugins>
</build>

<properties>
<java.version>1.8</java.version>
</properties>
</project>




src/main/resources/application.properties

server.port=8888


$ mvn spring-boot:run


open browser with localhost:8888






'ⓦeb ⓢtory > Spring' 카테고리의 다른 글

스프링 부트로 테스트하기  (0) 2018.03.16
블로그 이미지

뚱땡이 우주인

,