Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Continuous Integration

No description
by

Levente Farkas

on 6 April 2017

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Continuous Integration

Continuous Integration
A folyamatos integráció egy olyan szoftverfejlesztési gyakorlat, melyben a csapat tagjai gyakran és általában egyesével integrálnak legalább naponta, mely többszörös integrációhoz vezethet.
Continuouos Delivery
Manapság
- Mostanában használatos szemlélet, amit kevesen használnak tökéletesen

- Leginkább biztonságos a mai technológiák alapján
TDD
Test levels for beginners
GOAL!
Continuous Integration
with
Continuous Delivery

CTK.hu
CI szokásai
Single source repository
A Build és a teszt automatizálása
Mindenki commit mindennap
Legyen a Build gyors
Mindenki látja mi történik épp
Öntesztelés
CI Előnyei
Project management
Hamarabb vesszük észre a rendszer problémáit
Csökkentjük a költségét a hibajavításnak és tervezésnek
Code quality
Mérhető és látható kódminőség
Folyamatos és automatikus tesztek
Érdekességek
"Hiring testers to pound quality into a product after it's been developed is a waste of money."

„How we test software at Microsoft”, Microsoft
"The burden of quality is on the
shoulders of those writing the code."

James A. Whittaker, Jason Arbon, Jeff Carollo. How Google Tests
Software.
Forrás: http://angryweasel.com/blog/riffing-on-the-quadrants/

Unit Test
Unit testing is a software testing method by which individual units of source code are tested to determine whether they are fit for use.
As a consequence, unit testing is traditionally a motivator for programmers to create decoupled and cohesive code bodies. This practice promotes healthy habits in software development. .
Integration Test
Integration testing is the phase in software testing in which individual software modules are combined and tested as a group.
The purpose of integration testing is to verify functional, performance, and reliability requirements placed on major design items
Acceptance Test
Acceptance testing is a test conducted to determine if the requirements of a specification or contract are met.
It may be manual or automated, but the manual test would be healthier and more functional
Elképzelés
(CTK-ra specializálva)
Készítsünk egy CI szervert
Miért?
- Integrációs tesztek futhatnak rajta

- Lesz egy középső réteg az éles server és az svn között

- Automatizálhatóak a tesztek, buildek és a deployok

- Az acceptance test fázis könnyíthető lehet a moderátorok számára

- Nem engedünk ki a kezünkből olyan kódot, ami nem megy tovább az integrációs teszteken

Könnyebben monitorozható

És miért nem?

- Idő és erőforrás felállítani a szervert

- Csapaton belül konvenció szükséges

- A konvencióhoz tartani kell magunkat

- A hibák számát csak minimalizáltuk nem szüntettük meg teljesen

- Kicsi a cég, kevés a fejlesztő, több fejlesztő esetén szinte kötelező lenne a használata

Viszont így is van értelme!


Continuous Delivery egy olyan szoftverfejlesztési iránymutató ami alapján a szoftvert bármikor termékként kiadható állapotban tartsuk.
Test-driven development egy olyan szoftverfejlesztési processz amelyi nagyon rövid fejlesztési ciklusokra épül: A követeleményeket egy specifikus teszt esetre írjuk át, majd a szoftvert úgy fejlesztjük hogy átmenjen ezen a teszten és az újonnan megírtakon is
Full transcript