SlideShare a Scribd company logo
1 of 19
Download to read offline
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Magento testomgeving
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Mijn naam is Jisse Reitsma
Magento enthousiast
Lead developer van Yireo
EmailTester
DeleteAnyOrder
MageBridge brug met Joomla!
en andere Magento extensies
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Voor wie?
Magento shop eigenaren
Magento bouwers
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Waarom een testomgeving?
Bij iedere wijziging kan iets fout gaan:
Configuratie-wijzigingen
Extensies of thema-aanpassingen uitproberen
Magento upgrade testen
Liever een fout op de test site dan op de productie site
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
OTAP
Ontwikkeling
Test
Acceptatie
Productie
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Testomgeving opzetten (1/2)
Eigen URL
test.example.com
www.example.com/test
Andere server?
Toegang
Publiek
Beperkt (HTTP authenticatie, IP restrictie)
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Testomgeving opzetten (2/2)
Copieer bestanden van productie naar test
FTP of SSH of git
Pas bestand app/etc/local.xml aan
Copieer database van productie naar test
phpMyAdmin of script
Pas table core_config_data aan
Cache verversen / indices verversen
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Werken met git
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Even snel git uitleggen
Alle wijzigingen worden opgeslagen in repository
Repository kan overal zijn
Private repositories: Eigen git server; GitHub; Assembla
Repository kan overal naar toe worden gecopieerd
Decentrale relatie tussen repository clones
Remote repositories: origin
Branches: master, dev
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Waarom git?
Versiebeheer
Incrementele backups
Restore naar specifieke commit
Logging van iedere wijziging (commits)
Branching
Bundelen van wijzigingen (commits)
Gefaseerd doorvoeren van gebundelde wijzigingen
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Bestanden copieren via git
Testomgeving
git commit file1
git push origin master
Productie omgeving
git pull origin master
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Hetzelfde maar nu met branches
Testomgeving (“master” branch)
git commit file1
git push origin master
Acceptatie omgeving
git pull origin master
git checkout production
git merge master
Productie omgeving (“production” branch)
git pull origin production
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Tips voor gebruik van git
Gebruik “master” branch voor development, niet productie
Maak een aparte git user per developer
Of iets met SSH public keys
Gebruik een goede gitignore file
Exclude: var/*, app/etc/local.xml
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Nog wat dingetjes
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Testomgeving aanpassen (1/2)
Development settings
Caching uit
JS / CSS merging uit
Geen performance settings (APC, memcache, Redis)
PHP display_errors aan
/errors/local.xml > print errors (voorbeeld: local.xml.sample)
New Relic
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Testomgeving aanpassen (2/2)
Geen productie settings
Analytics uit (GoogleAnalytics, Piwik)
Zet demo melding aan
Configuration > Design > HTML Head > Display Demo Store Notice
Zet betaalmethodes om naar sandbox- of test-modus
Configureer extra IP restrictie
.htaccess > AuthName / AuthType / AuthUserFile
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Toegang voor ontwikkelaars
Optie 1
Git
Optie 2
FTP accounts vooraf aanmaken
Magento folder(s) als Linux filesystem mounten binnen FTP folder
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
Automatisch van productie naar test
Test moet in sync blijven met productie
Script om automatisch test up to date te brengen
git pull origin master
cp ~/settings/local.xml.test app/etc/local.xml
mysql -u root -p testdb < var/sql/production_latest.xml
mysql -u root -p testdb < ~/settings/local.sql
Presentatie “Magento testomgevingen” - http://slideshare.net/yireo
Jisse Reitsma (jisse@yireo.com) - Twitter @yireo
tweet @yireo

More Related Content

More from Yireo

Faster Magento Integration Tests
Faster Magento Integration TestsFaster Magento Integration Tests
Faster Magento Integration TestsYireo
 
Mage-OS Nederland
Mage-OS NederlandMage-OS Nederland
Mage-OS NederlandYireo
 
Modernizing Vue Storefront 1
Modernizing Vue Storefront 1Modernizing Vue Storefront 1
Modernizing Vue Storefront 1Yireo
 
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshopMagento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshopYireo
 
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Yireo
 
Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Yireo
 
Magento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningMagento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningYireo
 
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishMagento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishYireo
 
Magento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyMagento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyYireo
 
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenMagento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenYireo
 
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Yireo
 
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationMagento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationYireo
 
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaMagento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaYireo
 
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 ShopsMagento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 ShopsYireo
 
Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Yireo
 
Magento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryMagento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryYireo
 
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksMagento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksYireo
 
Magento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteMagento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteYireo
 
Magento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaMagento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaYireo
 
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningMagento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningYireo
 

More from Yireo (20)

Faster Magento Integration Tests
Faster Magento Integration TestsFaster Magento Integration Tests
Faster Magento Integration Tests
 
Mage-OS Nederland
Mage-OS NederlandMage-OS Nederland
Mage-OS Nederland
 
Modernizing Vue Storefront 1
Modernizing Vue Storefront 1Modernizing Vue Storefront 1
Modernizing Vue Storefront 1
 
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshopMagento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
Magento 2 Seminar - Peter-Jaap Blaakmeer - VR-webshop
 
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
Magento 2 Seminar - Toon van Dooren - Varnish in Magento 2
 
Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2Magento 2 Seminar - Andra Lungu - API in Magento 2
Magento 2 Seminar - Andra Lungu - API in Magento 2
 
Magento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learningMagento 2 Seminar - Roger Keulen - Machine learning
Magento 2 Seminar - Roger Keulen - Machine learning
 
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and VarnishMagento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
Magento 2 Seminar - Miguel Balparda - M2 with PHP 7 and Varnish
 
Magento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App EconomyMagento 2 Seminar - Maarten Schuiling - The App Economy
Magento 2 Seminar - Maarten Schuiling - The App Economy
 
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelenMagento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
Magento 2 Seminar - Jisse Reitsma - Magento 2 techniek vertalen naar voordelen
 
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
Magento 2 Seminar - Sander Mangel - Van Magento 1 naar 2
 
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine OptimisationMagento 2 Seminar - Arjen Miedema - Search Engine Optimisation
Magento 2 Seminar - Arjen Miedema - Search Engine Optimisation
 
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - BeaumoticaMagento 2 Seminar - Tjitte Folkertsma - Beaumotica
Magento 2 Seminar - Tjitte Folkertsma - Beaumotica
 
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 ShopsMagento 2 Seminar - Jeroen Vermeulen  Snelle Magento 2 Shops
Magento 2 Seminar - Jeroen Vermeulen Snelle Magento 2 Shops
 
Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2Magento 2 Seminar - Christian Muench - Magerun2
Magento 2 Seminar - Christian Muench - Magerun2
 
Magento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 SummaryMagento 2 Seminar - Anton Kril - Magento 2 Summary
Magento 2 Seminar - Anton Kril - Magento 2 Summary
 
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarksMagento 2 Seminar - Daniel Genis - Magento 2 benchmarks
Magento 2 Seminar - Daniel Genis - Magento 2 benchmarks
 
Magento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - KeynoteMagento 2 Seminar - Ben Marks - Keynote
Magento 2 Seminar - Ben Marks - Keynote
 
Magento 2 Seminar - Community agenda
Magento 2 Seminar - Community agendaMagento 2 Seminar - Community agenda
Magento 2 Seminar - Community agenda
 
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie PlanningMagento 2 Seminar - Jisse Reitsma - Migratie Planning
Magento 2 Seminar - Jisse Reitsma - Migratie Planning
 

Magento testomgeving

  • 1. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Magento testomgeving
  • 2. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Mijn naam is Jisse Reitsma Magento enthousiast Lead developer van Yireo EmailTester DeleteAnyOrder MageBridge brug met Joomla! en andere Magento extensies
  • 3. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Voor wie? Magento shop eigenaren Magento bouwers
  • 4. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Waarom een testomgeving? Bij iedere wijziging kan iets fout gaan: Configuratie-wijzigingen Extensies of thema-aanpassingen uitproberen Magento upgrade testen Liever een fout op de test site dan op de productie site
  • 5. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo OTAP Ontwikkeling Test Acceptatie Productie
  • 6. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Testomgeving opzetten (1/2) Eigen URL test.example.com www.example.com/test Andere server? Toegang Publiek Beperkt (HTTP authenticatie, IP restrictie)
  • 7. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Testomgeving opzetten (2/2) Copieer bestanden van productie naar test FTP of SSH of git Pas bestand app/etc/local.xml aan Copieer database van productie naar test phpMyAdmin of script Pas table core_config_data aan Cache verversen / indices verversen
  • 8. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Werken met git
  • 9. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Even snel git uitleggen Alle wijzigingen worden opgeslagen in repository Repository kan overal zijn Private repositories: Eigen git server; GitHub; Assembla Repository kan overal naar toe worden gecopieerd Decentrale relatie tussen repository clones Remote repositories: origin Branches: master, dev
  • 10. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Waarom git? Versiebeheer Incrementele backups Restore naar specifieke commit Logging van iedere wijziging (commits) Branching Bundelen van wijzigingen (commits) Gefaseerd doorvoeren van gebundelde wijzigingen
  • 11. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Bestanden copieren via git Testomgeving git commit file1 git push origin master Productie omgeving git pull origin master
  • 12. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Hetzelfde maar nu met branches Testomgeving (“master” branch) git commit file1 git push origin master Acceptatie omgeving git pull origin master git checkout production git merge master Productie omgeving (“production” branch) git pull origin production
  • 13. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Tips voor gebruik van git Gebruik “master” branch voor development, niet productie Maak een aparte git user per developer Of iets met SSH public keys Gebruik een goede gitignore file Exclude: var/*, app/etc/local.xml
  • 14. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Nog wat dingetjes
  • 15. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Testomgeving aanpassen (1/2) Development settings Caching uit JS / CSS merging uit Geen performance settings (APC, memcache, Redis) PHP display_errors aan /errors/local.xml > print errors (voorbeeld: local.xml.sample) New Relic
  • 16. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Testomgeving aanpassen (2/2) Geen productie settings Analytics uit (GoogleAnalytics, Piwik) Zet demo melding aan Configuration > Design > HTML Head > Display Demo Store Notice Zet betaalmethodes om naar sandbox- of test-modus Configureer extra IP restrictie .htaccess > AuthName / AuthType / AuthUserFile
  • 17. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Toegang voor ontwikkelaars Optie 1 Git Optie 2 FTP accounts vooraf aanmaken Magento folder(s) als Linux filesystem mounten binnen FTP folder
  • 18. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo Automatisch van productie naar test Test moet in sync blijven met productie Script om automatisch test up to date te brengen git pull origin master cp ~/settings/local.xml.test app/etc/local.xml mysql -u root -p testdb < var/sql/production_latest.xml mysql -u root -p testdb < ~/settings/local.sql
  • 19. Presentatie “Magento testomgevingen” - http://slideshare.net/yireo Jisse Reitsma (jisse@yireo.com) - Twitter @yireo tweet @yireo