22
Hier soll der Titel rein www.qs-tag.de Veranstalter: imbus AG www.qs-tag.de Haben wir alle wichtigen Features getestet? Ticket-Coverage live am Beispiel Dr. Dennis Pagano CQSE GmbH

Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Hier soll der Titel rein

www.qs-tag.de

Veranstalter: imbus AG www.qs-tag.de

Haben wir alle wichtigen Features getestet? Ticket-Coverage live am Beispiel

Dr. Dennis Pagano CQSE GmbH

Page 2: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

CQSE GmbH

Forschung §  13 Promotionen in Software Engineering §  Promotionsprogramm, Enger Universitätskontakt

Praxis §  Software Audits §  Quality Control und Test Control Analysewerkzeug www.teamscale.com

Page 3: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Änderungen Ausführung

Test-Gap-Analyse

Ungetestete Änderungen

Page 4: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,
Page 5: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

GUI.Base

GUI.Dialogs Authentication

UI Controls

Data Validation

Page 6: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,
Page 7: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,
Page 8: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

• = Modifiziert • = Neu

Page 9: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

• = Ausgeführt im Test

Page 10: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

• = Modifiziert & ungetestet • = Neu & ungetestet • = Unverändert • = Geändert & ausgeführt im Test

Page 11: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

100% Change Coverage → 0 Fehler

Page 12: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Test Focus: Release

DEV TEST

RELEASE

2016 2017

DEV TEST

RELEASE

Page 13: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

RELEASE RELEASE RELEASE RELEASE RELEASE RELEASE

Test Focus: Ticket

2016 2017

DEV TEST

Feature #9838

Page 14: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

RELEASE RELEASE RELEASE RELEASE RELEASE RELEASE

2016 2017

?

Page 15: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Ticket Coverage

Ticket Ticket Code Ticket Coverage

Im Issue Tracker verwaltete Unit of Work. Bug, Issue, Change Request, User Story, …

Code, der bei der Implementierung eines Tickets angefasst (geändert oder neu geschrieben) wurde.

Anteil des Ticket Codes, der im Test zur Ausführung kam.

Page 16: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Version Control System

Git

SVN

TFS

Ticket System

JIRA

Redmine

GitHub

Test Coverage

JaCoCo

NCover

CTC

Ticket Coverage

CR#9838:AddedTODO 26.07.1616:38CR#9838:Adjustnaming 26.07.1615:33CR#9533:RED 26.07.1615:13CR#9533:GREEN 26.07.1615:12CR#10181:Addednewfindingfordeprecatedclasses,methodsandfields 26.07.1614:43CR#10037:MovedReviewMetricsSynchronizertoCruciblepackageandmadesomeimprovementstoitsinternalstructure 26.07.1614:31CR#10037:UpdatedaggregaUonstrategyofopenreviewssoeachreviewisonlycountedonce,evenovermulUplefiles 26.07.1613:04CR#10203:Fixed"fieldcouldbemadefinal"forJavainterfaces 26.07.1612:16CR#10200:RenamepathRestricUon->subPath(1) 26.07.1611:35CR#10200:RenamepathRestricUon->subPath(1) 26.07.1611:35CR#10172:RemovedunwantedcolonsfromheadersinthecommitviewoftheacUvityperspecUve 26.07.1611:20CR#9838:Fix:onlyonecolorofathresholdisspecifiedinacorridor 26.07.1611:14CR#0:Fixfindings 26.07.1611:01CR#9838:minorimprovement 26.07.1610:56CR#10199:MailnoUficaUonsdonowsupportstarTLS 26.07.1610:52CR#9533:workingondeveloperfeedback 26.07.1609:50CR#9838:Amendlastcommit 26.07.1609:38CR#9838:minorrefactoring 26.07.1609:05CR#9838:FixNPE 26.07.1609:01

CR#9838:AddedTODO 26.07.1616:38CR#9838:Adjustnaming 26.07.1615:33CR#9533:RED 26.07.1615:13CR#9533:GREEN 26.07.1615:12CR#10181:Addednewfindingfordeprecatedclasses,methodsandfields 26.07.1614:43CR#10037:MovedReviewMetricsSynchronizertoCruciblepackageandmadesomeimprovementstoitsinternalstructure 26.07.1614:31CR#10037:UpdatedaggregaUonstrategyofopenreviewssoeachreviewisonlycountedonce,evenovermulUplefiles 26.07.1613:04CR#10203:Fixed"fieldcouldbemadefinal"forJavainterfaces 26.07.1612:16CR#10200:RenamepathRestricUon->subPath(1) 26.07.1611:35CR#10200:RenamepathRestricUon->subPath(1) 26.07.1611:35CR#10172:RemovedunwantedcolonsfromheadersinthecommitviewoftheacUvityperspecUve 26.07.1611:20CR#9838:Fix:onlyonecolorofathresholdisspecifiedinacorridor 26.07.1611:14CR#0:Fixfindings 26.07.1611:01CR#9838:minorimprovement 26.07.1610:56CR#10199:MailnoUficaUonsdonowsupportstarTLS 26.07.1610:52CR#9533:workingondeveloperfeedback 26.07.1609:50CR#9838:Amendlastcommit 26.07.1609:38CR#9838:minorrefactoring 26.07.1609:05CR#9838:FixNPE 26.07.1609:01

Page 17: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Demo

www.teamscale.com

Page 18: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Pinta: Open Source Zeichenprogram (C# .NET) PintaProject/Pinta

Page 19: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

www.teamscale.com

UNTERSTÜTZTE TECHNOLOGIEN

Externe AnalysewerkzeugeClangESLintFindBugsFlexeLint

FxCopGoannaPC-lintPylint

SAP Code InspectorSPCopStyleCopTSLint

Issue TrackerGitHubIBM RTC/Jazz

JIRARedmine

TFS

IDE IntegrationABAP WorkbenchADT for EclipseEclipse

EmacsIntelliJ IDEANetBeans

SublimeviVisual Studio

VersionskontrollsystemeArtifactoryGit

GerritSubversion (SVN)

TFS

ProgrammiersprachenABAPAdaC#C/C++CobolDelphiFortranGroovyGosuHANA SQLScript

HANA ViewsIEC 61131-3 STJavaJavaScriptMagikMatlabOpen CLOScriptPHPPL/SQL

PythonRustSQLScriptSimulink/StateFlowSwiftTypeScriptVisual Basic .NETXtend

Review-WerkzeugeCrucible Gerrit

Test-WerkzeugeBullseyeCoverageCoberturacoverage.pyCTC

dotCovergcovJaCoCoJUnit, NUnit, xUnit

lcovSAP SCOVVS Test CoverageXR.Baboon

Page 20: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,
Page 21: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Fazit

Kürzere Release-Zyklen führen zu Parallelisierung in Entwicklung und Test. Dadurch steigt das Risiko ungetesteter Änderungen.

Ticket Coverage hilft, wichtige Änderungen zuverlässig zu testen. Wir unterstützen gerne bei der Evaluierung und Einführung.

Page 22: Haben wir alle wichtigen Features getestet?€¦ · Xtend Review-Werkzeuge Crucible Gerrit Test-Werkzeuge BullseyeCoverage Cobertura coverage.py CTC dotCover gcov JaCoCo JUnit, NUnit,

Dr. Elmar Jürgens · [email protected] · +49 179 675 3863 Dr. Dennis Pagano · [email protected] · +49 159 04062957 CQSE GmbH Lichtenbergstraße 8 85748 Garching bei München www.cqse.eu

Kontakt