Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Webanwendungen testen
Search
Oliver Klee
April 05, 2017
Technology
0
110
Webanwendungen testen
Oliver Klee
April 05, 2017
Tweet
Share
More Decks by Oliver Klee
See All by Oliver Klee
Content-Synchronisierung
oliverklee
0
40
Gewaltfreie Kommunikation: ein Crashkurs
oliverklee
0
130
Motivationspsychologie und Gamification in Non-Profit-Organisationen
oliverklee
0
94
Test-driven development with PHPUnit
oliverklee
0
190
Writing PHPUnit tests for TYPO3 extensions
oliverklee
0
180
Software quality for TYPO3 projects: A story of cheese, games and tools
oliverklee
0
260
TDD für Senior-Devs
oliverklee
0
72
Gamification für Arbeit in Communities
oliverklee
0
110
Software quality, cheese and games
oliverklee
0
340
Other Decks in Technology
See All in Technology
Github Actions 로 Android 팀의 효율성 극대화
hadonghyun
0
160
サービスの持続的な成長と技術負債について
siva_official
PRO
10
4.4k
Classmethod Odyssey 登壇資料
yamahiro
0
390
MySQLのロックの種類とその競合
yoku0825
6
1.6k
AWSで”最小権限の原則”を実現するための考え方 /20240722-ssmjp-aws-least-privilege
opelab
10
4.4k
Git 研修 Basic【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
310
コンテナ・K8s研修 - 前半 コンテナ基礎・ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
GoとアクターモデルでES+CQRSを実践! / proto_actor_es_cqrs
ytake
1
160
推薦システムを本番導入する上で一番優先すべきだったこと~NewsPicks記事推薦機能の改善事例を元に~
morinota
0
130
Matterport を使ってクラスメソッド各拠点のバーチャルオフィスツアーを作成してみた
wakatsuki
0
160
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
0
480
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
Featured
See All Featured
Atom: Resistance is Futile
akmur
261
25k
Practical Orchestrator
shlominoach
185
10k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
325
21k
Building a Scalable Design System with Sketch
lauravandoore
458
32k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
34
1.9k
Learning to Love Humans: Emotional Interface Design
aarron
269
39k
What’s in a name? Adding method to the madness
productmarketing
PRO
21
2.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
17
1.5k
Six Lessons from altMBA
skipperchong
24
3.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
78
15k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
90
47k
Transcript
Testen von Webanwendungen Oliver Klee, 2017-04 @oliklee
[email protected]
Tests automatisieren?
Test-Level http://dabrorius.github.io/2015/06/tested-be-thy-name.html
Unit-Tests sind klein und schnell
Integrationstests testen das Zusammenspiel von Komponenten
Systemtests testen das große Ganze
Test-Typen
Blackbox-Tests testen das nach außen Sichtbare
Whitebox-Tests wie genau es innen funktioniert testen,
Functional Tests
Akzeptanztests
Anti- Zombie- Tests-
Regressionstests
Smoketests
Smoketests
Story-Tests für Behavior-Driven Development (BDD)
Wieso denn bluß?
Manuelles Testen ist mühsam
Automatisierte Tests sind schnell
Unit-Tests für die Realty-Manager- Extension
>1600 Tests
< 60 Sekunden
Sicher sein, dass der Code das Richtige tut
Verhindern, dass deine Änderungen etwas anderes kaputt machen
Verhindern, dass andere Leute deinen Code kaputtmachen
Auch bei komplexen Projekten nichts kaputt machen
Baue ein Sicherheitsnetz fürs Refactoring
Verbessere die Struktur des Codes
Grün fühlt sich gut an!
Wo testen?
Auf dem lokalen Rechner
Auf dem Server
Continuous Integration öfter mal einchecken =
Der Continuous-Integration-Server überwacht den Code Git-Repository Push / Pull-Request Continuous-
Integration-Server Hey, eine Änderung! Checks laufen lassen Bericht
Code-Review-Frontends Continuous Integration und Git-Frontends Git-Frontends Continuous Integration GitHub GitLab
CI Travis CI Gerrit Jenkins Semaphore
Was bei der CI testen? automatisierte Tests Commit- Messages Coding-Standards
Code linten Code-Metriken Performance statische Analyse verschiedene Umgebungen Baut es?
None
None
Deployment Continuous
Besonderheiten mit Webanwendungen
Tools
Tools Akzeptanztests-Framework Capybara (Ruby) Driver Selenium WebKit Poltergeist RackTest Tests-Framework
RSpec Test::Unit MiniTest BDD-Framework Cucumber (Ruby) Behat (PHP) SpecFlow (C#) Gherkin
Gherkin
Womit anfangen? etwas Einfachem Starter-Tests Abhängigkeiten auflösen Code- Zerbrechlichkeit Kosten
von Bugs Regression-Tests neue Features Refactorings