habenwirallewichtigenfeatures getestet? ticket …...hana sqlscript hana views iec 61131-3 st java...

27
Haben wir alle wichtigen Features getestet? Ticket-Coverage live am Beispiel Dr. Dennis Pagano, CQSE GmbH

Upload: others

Post on 27-Jun-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

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

Dr. Dennis Pagano, CQSE GmbH

Page 2: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

CQSE GmbH

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

Praxis§ Quality Control und Test Control§ Software Audits

Analysewerkzeugwww.teamscale.com

Page 3: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Änderungen Ausführung

Test-Gap-Analyse

UngetesteteÄnderungen

Page 4: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow
Page 5: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

GUI.Base

GUI.DialogsAuthentication

UI Controls

Data Validation

Page 6: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow
Page 7: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow
Page 8: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Änderungen Ausführung

Test-Gap-Analyse

UngetesteteÄnderungen

Page 9: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

• Modifiziert• Neu

Page 10: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Änderungen Ausführung

Test-Gap-Analyse

UngetesteteÄnderungen

Page 11: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

• Ausgeführt im Test

Page 12: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Änderungen Ausführung

Test-Gap-Analyse

UngetesteteÄnderungen

Page 13: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

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

Page 14: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

100% Change Coverage

100% Change Coverage → 0 Fehler

Page 15: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Test Focus: Release

DEV TEST

RELEASE

2016 2017

DEV TEST

RELEASE

!

Page 16: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

RELEASE RELEASE RELEASE RELEASERELEASE RELEASE

Test Focus: Ticket

2016 2017

DEV TEST

Feature #9838

Page 17: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

RELEASE RELEASE RELEASE RELEASERELEASE RELEASE

2016 2017

?

Page 18: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

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 19: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

VersionControlSystem

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:MovedReviewMetricsSynchronizer toCruciblepackageandmadesomeimprovementstoitsinternalstructure 26.07.1614:31CR#10037:Updatedaggregationstrategyofopenreviewssoeachreviewisonlycountedonce,evenovermultiplefiles 26.07.1613:04CR#10203:Fixed"fieldcouldbemadefinal"forJavainterfaces 26.07.1612:16CR#10200:RenamepathRestriction ->subPath (1) 26.07.1611:35CR#10200:RenamepathRestriction->subPath(1) 26.07.1611:35CR#10172:Removedunwantedcolonsfromheadersinthecommitviewoftheactivityperspective 26.07.1611:20CR#9838:Fix:onlyonecolorofathresholdisspecifiedinacorridor 26.07.1611:14CR#0:Fixfindings 26.07.1611:01CR#9838:minorimprovement 26.07.1610:56CR#10199:MailnotificationsdonowsupportstarTLS 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:MovedReviewMetricsSynchronizer toCruciblepackageandmadesomeimprovementstoitsinternalstructure 26.07.1614:31CR#10037:Updatedaggregationstrategyofopenreviewssoeachreviewisonlycountedonce,evenovermultiplefiles 26.07.1613:04CR#10203:Fixed"fieldcouldbemadefinal"forJavainterfaces 26.07.1612:16CR#10200:RenamepathRestriction ->subPath (1) 26.07.1611:35CR#10200:RenamepathRestriction->subPath(1) 26.07.1611:35CR#10172:Removedunwantedcolonsfromheadersinthecommitviewoftheactivityperspective 26.07.1611:20CR#9838:Fix:onlyonecolorofathresholdisspecifiedinacorridor 26.07.1611:14CR#0:Fixfindings 26.07.1611:01CR#9838:minorimprovement 26.07.1610:56CR#10199:MailnotificationsdonowsupportstarTLS 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 20: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Demo

www.teamscale.com

Page 21: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Pixelitor: Open Source Zeichenprogram (Java)

lbalazscs/Pixelitor

Page 22: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

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 23: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow
Page 24: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow
Page 25: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow
Page 26: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Fazit

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

Ticket Coverage hilft, wichtige Änderungen trotzdem zuverlässig zu testen.

Wir unterstützen gerne bei der Evaluierung und Einführung.

Page 27: HabenwirallewichtigenFeatures getestet? Ticket …...HANA SQLScript HANA Views IEC 61131-3 ST Java JavaScript Magik Matlab Open CL OScript PHP PL/SQL Python Rust SQLScript Simulink/StateFlow

Dr. Dennis Pagano · [email protected] · +49 159 04062957Dr. Elmar Jürgens · [email protected] · +49 179 675 3863Fabian Streitel · [email protected] · +49 159 04046270

CQSE GmbHLichtenbergstraße 885748 Garching bei Münchenwww.cqse.eu

Kontakt