-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
9580ba6
commit 7e26706
Showing
1 changed file
with
23 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
--- | ||
title: Ktor | ||
ring: adopt | ||
quadrant: libraries-frameworks-and-languages | ||
--- | ||
|
||
[Ktor][ktor] ist ein leichtgewichtiges Framework für [Kotlin][kotlin], mit dem sowohl HTTP-Server als auch HTTP-Clients | ||
realisiert werden können. Entwickelt wird Ktor von JetBrains, dem Unternehmen hinter der Kotlin-Programmiersprache. | ||
|
||
Wir verwenden Ktor einerseits zur Implementierung von Mock-Servern, um REST-APIs unserer Kunden-Umsysteme zu simulieren. | ||
Die Kombination von Kotlin und Ktor erlaubt es, schlanke Mock-Server zu schreiben, die — im Gegensatz zu statischen oder | ||
randomisierten Mocks — eine dynamische und in sich konsistente Funktionalität bereitstellen. | ||
|
||
Andererseits verwenden wir den HTTP-Client von Ktor zum Schreiben von Integrationstests für unsere eigenen REST-APIs. | ||
JUnit dient als Test-Runner, wodurch die Tests sowohl innerhalb der IDE als auch während dem Build innerhalb einer | ||
dockerisierten Applikationsumgebung ausgeführt werden können. Das Ausprogrammieren der Integrationstests in Kotlin hat | ||
sich bestens bewährt, da der Entwickler mit seinen bekannten Werkzeugen arbeitet und die Konzepte für qualitativ | ||
hochwertigen Code nahtlos weiterverwenden kann. Zudem erlaubt der programmatische Ansatz den einfachen Zugriff auf | ||
Umsysteme (wie z.B. die Datenbank), was sich insbesondere während der Setup- und Teardown-Phasen eines Tests als | ||
praktisch erweist. | ||
|
||
[kotlin]: ../libraries-frameworks-and-languages/kotlin.html | ||
[ktor]: https://ktor.io |