Home >Documents >Qualitätssicherung in Webprojekten
Qualitätssicherung in Webprojekten
Date post:27-May-2015
Category:Documents
View:650 times
Download:0 times
Share this document with a friend
Transcript:
  • 1. Qualittssicherung inWebprojektenSebastian Springer I 06.06.2012 Mayflower GmbH 2012

2. HELLOMY NAMEIS@basti_springer 3. Womit verdiene ich mein Geld? Mayflower GmbH PHP Javascript Teamleiter 4. Projekte? 5. Was erzhle ich heute? Qualittssicherung in Webprojekten Schwerpunkt: Javascript 6. ...und was nicht? Qualittssicherung in PHP PHPCS, PHPUnit, phpcpd, pdepend,... http://jenkins-php.org/ 7. Warum Qualittssicherung? 8. Javascript === Quick & Dirty 9. Javascript === Quick & Dirty 10. Was ist Qualittssicherung? Standards Verlsslichkeit Erweiterbarkeit Stabilitt 11. CI 12. Continuous Inspection 13. Continuous Integration 14. Plattformen 15. CI im Groen - Jenkins 16. CI im Kleinen die IDE 17. Und wozu das Ganze? 18. Schnelle Rckmeldung! 19. Das Beispiel 20. Ziel 21. Ziel Datum eingeben 22. Ziel Offset eingeben 23. Ziel Datum berechnen 24. ZielFeiertage beachten! 25. Anforderungen an den Code JSLinted Kein Copy/Paste Code Unittests Akzeptanztests 26. Wie? 27. Mit Tooluntersttzung und Automatisierung! 28. Anforderungen an den Code JSLinted Kein Copy/Paste Code Unittests Akzeptanztests 29. It will hurt your feelings! 30. Was macht JSLint? Codingstyle Whitespaces == & != vs. === & !== Variablendeklarationen zu Beginn einerFunktion use strict Globale Variablen Verwendung vor der Definition eval is Evil 31. JSLint in Jenkins jslint4javajava -jar jslint4java.jar --reportxml /path/to/src/*.js > jslint.xml Violations Plugin 32. JSLint in PhpStorm 33. Anforderungen an den Code JSLinted Kein Copy/Paste Code Unittests Akzeptanztests 34. Was macht CPD? Duplikate im Quellcode finden Tokens statt Strings 35. Warum? Verbesserungen an mehreren Stellen Bugfixes an mehreren Stellen= erhhter Wartungsaufwand 36. CPD in Jenkins PMD CPD/opt/PMD/bin/run.sh cpd --minimum-tokens 12 --files /path/to/src--language ecmascript --format xml> cpd.xml Duplicate Code Scanner Plug-in 37. Anforderungen an den Code JSLinted Kein Copy/Paste Code Unittests Akzeptanztests 38. Warum Unittests? Stabilitt Sicherheit Dokumentation Pro Bug ein Test 39. Jasminedescribe("DateCalc", function () {it("should return false ...provided", function () {var dateCalc = new DateCalc(),result = dateCalc.resolveDate();expect(result).toBeFalsy();});}); 40. TDD 41. JsTestDriver Testing Framework Browser Capturing Coverage Plugins fr Qunit und Jasmine 42. Jasmine in Jenkins JsTestDriverjava -jar JsTestDriver.jar --port9876 --browser /usr/bin/firefoxjava -jar JsTestDriver.jar --config/path/to/config.jstd --tests all--testOutput . --reset xUnit Plugin 43. config.jstdserver: http://localhost:9876load:- lib/jasmine-1.2.0.rc3/jasmine.js- lib/jasmine-jstd-adapter/src/JasmineAdapter.js- spec/DateCalc.js- spec/Holiday.js- src/DateCalc.js- src/Holiday.jsplugin: - name: "coverage" jar: "/opt/JsTestDriver/plugins/coverage.jar" module: "com.google.jstestdriver.coverage.CoverageModule" 44. Coverage in Jenkins JsTestDriver Coverage Plugin Converter/opt/lcov-to-cobertura-xml.pyjsTestDriver.conf-coverage.dat -ocoverage/coverage.xml Cobertura Plugin 45. Jasmine in PHPStorm 46. Jasmine in PHPStorm 47. Jasmine in PHPStorm 48. Anforderungen an den Code JSLinted Kein Copy/Paste Code Unittests Akzeptanztests 49. Warum Akzeptanztests? Tests gegen Akzeptanzkriterien Anforderungen vs. Umsetzung Nicht von Entwicklern 50. Selenium IDE 51. Selenium in Jenkins Selenium Serverexport DISPLAY=:5.0java -jar /opt/selenium-server.jar-htmlSuite *firefox"http://dateCalc.basti.dev""/srv/www/vhosts/tests/suite.html""selenium/results.html" Selenium HTML report Plugin 52. Chuck Norris Plugin 53. Fragen? 54. http://joind.in/talk/view/6658 55. Vielen Dank fr IhreAufmerksamkeit!Sebastian Springersebastian.springer@mayflower.de Mayflower GmbHMannhardtstr. 680538 MnchenDeutschlandTwitter: @basti_springerJune 11, 2012 Mayflower GmbH58 https://github.com/sspringer82

Embed Size (px)
Recommended