Kotlin Springboot -- 파트 10 API E2E を作る
14601 단어 e2etestingspringbootca
계량기
geージで作成すると、Springboot 関係なく、Kotlin のtest用のアプリケーーションが作れるらしい?
https://tech.toreta.in/entry/2020/12/15/110722
토레타 の記事を参考にする
https://docs.gauge.org/getting_started/installing-gauge.html?os=linux&language=csharp&ide=vscode
公式 doc をみると、IntelliJ より VScode 推奨らしい?
인스톨
https://docs.gauge.org/getting_started/installing-gauge.html?os=linux&language=java&ide=vscode#installation-instructions-1
curl -SsL https://downloads.gauge.org/stable | sh
❯ gauge -v
Gauge version: 1.4.3
Commit Hash: f98dd40
curl 로 인스톨로 되었어요
헤르프
❯ gauge
Usage:
gauge <command> [flags] [args]
Examples:
gauge run specs/
gauge run --parallel specs/
guage run specs で指定した場所のスペックファイルが実行できるらしい.
実際は mvn test で実行します.
게이지 の Kotlin 프로젝트 を作成する
https://yuya-hirooka.hatenablog.com/entry/2021/07/10/220438
유유아히로오카 さんの記事を参考にする
~/source/gauge-kotlin
❯ gauge init java_maven
Initializing template from https://github.com/getgauge/template-java-maven/releases/latest/download/java_maven.zip
.
Copying Gauge template java_maven to current directory ...
Successfully initialized the project. Run specifications with "mvn clean test" in project root.
gauge init java_maven에서 maven_java로 프로제크트를 생성했습니다.
프로제크트를 시작하다
IntelliJ를 사용하려면
これらがset アップされているのを確認できる.
Kotlin も書けるようにする
https://yuya-hirooka.hatenablog.com/entry/2021/07/10/220438
<dependencies>
<dependency>
<groupId>com.thoughtworks.gauge</groupId>
<artifactId>gauge-java</artifactId>
<version>0.7.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.17.2</version>
<scope>test</scope>
</dependency>
</dependencies>
pom.xml
これらのみが入っているので、記事を参考にして
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
<version>${kotlin.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-test</artifactId>
<version>${kotlin.version}</version>
<scope>test</scope>
</dependency>
現在のProjectionで有効な Kotlin を入れるようだ
아니면, ${kotlin_version} 에서 사용하지 마세요.
https://stackoverflow.com/a/51559900
메이븐 코만드로바죤を入れられるらしい?
https://qiita.com/megmogmog1965/items/36f3d778c0397b27b45e#properties
先にpropatiを指定していれば動くらしい?
しかし あれにははいってない、要確認
<properties>
<kotlin.version>1.3.70</kotlin.version>
</properties>
追加
maven reload로 시작했습니다.
Kotlin Maven 플러그인 を入れる
これがないとビルドで きないと推測
빌드/플러그인 에
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
</plugin>
kotiln をコンパイルで きるようにする と推測
既存の Spec を実行
GUI는 플러그인 入れないとできなそう
クリックで飛ぶのも無理
CUI를 사용하려면
mvn test
# Specification Heading
## Vowel counts in single word ✔ ✔
## Vowel counts in multiple word ✔ ✔
통타
Kotlin で書いた Step の実装ファイルを作成
test/java に並列して 테스트/kotlin を作成
imp.kt
import com.thoughtworks.gauge.Step
class HelloKotlin {
@Step("test kotlin")
fun hello(){
println("Hello, kotlin")
}
}
完全に Kotlin の文法でかく
Hello Kotlin
---------------------------
* test kotlin
Kotlin의 사양 を呼び出す
[ValidationError] /home/ryo/source/gauge-kotlin/specs/example.spec:16 Step implementation not found => 'test kotlin'
Add the following missing implementations to fix `Step implementation not found` errors.
@Step("test kotlin")
public void testKotlin(){
throw new UnsupportedOperationException("Provide custom implementation");
}
だめぽい
<sourceDirs>
<source>src/test/kotlin</source>
</sourceDirs>
test-compile の 목표 に並列に
ソースDIAで読み込まれてた
# Specification Heading
## Hello Kotlin ✔Hello, kotlin
✔
## Vowel counts in multiple word ✔ ✔
読まれた
ありがとう 유야히로오카 さん
Reference
이 문제에 관하여(Kotlin Springboot -- 파트 10 API E2E を作る), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kaede_io/kotlin-springboot-part-10-api-e2e-wozuo-ru-3fji텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)