SlideShare ist ein Scribd-Unternehmen logo
WIE EINE WEBTESTSUITE MIT EINER
UMFANGREICHEN APPLIKATION
SCHRITT HALTEN KANN
EIN ERFAHRUNGSBERICHT
Florian Decker
florian.decker@rubicon.eu
Warum?
2
Webtest Recorder
Webtests Programmieren
ohne Applikationsunterstützung
Webtests Programmieren
mit Applikationsunterstützung
• Simpel zu schreiben
• Schwer zu warten
• Schwerer zu schreiben
• Einfacher zu warten
• Einfach zu schreiben
• Einfach zu warten
Inhalt
3
1. Welche Probleme gibt es mit Webtests?
2. Wie können diese Probleme minimiert werden?
Was?
4
BocAutoCompleteReferenceValue
Controls
Die Geschichte
5
WebAii
??
Grundprobleme mit Webtests
6
PerformanceWartungsintensiv
Instabil / Flaky
Grundkonzept
7
Tester
Selenium
Page Objects
Control Objects
Grundprobleme mit Webtests
8
PerformanceWartungsintensiv
Instabil / Flaky
Diagnostic Metadata
<span
id="body_DataEditControl_PartnerField_Normal"
data-control-type="BocAutoCompleteReferenceValue"
data-display-name="Partner"
data-bound-type="Remotion.ObjectBinding.Sample.Person,
Remotion.ObjectBinding.Sample"
data-is-readonly="false"
data-null-identifier="==null=="
>
9
Tester
Control Object
Wartungsintensiv
Diagnostic Metadata
10
Wartungsintensiv
Was?
11
Page Objects
12
Page Object Generator
Wartungsintensiv
Änderung
--> Fehler beim
Compilieren
Grundprobleme mit Webtests
13
PerformanceWartungsintensiv
Instabil / Flaky
Completion Detection
 100% Deterministisches System
14
Instabil / Flaky
Completion Detection
15
Instabil / Flaky 1
2
2
Grundprobleme mit Webtests
16
PerformanceWartungsintensiv
Instabil / Flaky
Internet Explorer vs. Chrome
17
Langsam
~500 Tests
vs.
11 Stunden 5 Stunden
Vorbereiten von Testdaten
18
Langsam
Oberflächenautomatisierung
=
langsam
Wie sieht ein Test aus?
19
Selenium Recorder
20
//Feld „Familienname" mit "Testname" befüllen
var lastNameTextBox = driver.FindElement (
By.Id ("BasePersonFormPage_ObjectFormPageDataSource_LastName_Value"));
lastNameTextBox.Click();
lastNameTextBox.Clear();
lastNameTextBox.SendKeys ("Testname");
//Feld "Geschlecht" mit "Männlich" befüllen
var genderDropDown = driver.FindElement (
By.Id ("BasePersonFormPage_ObjectFormPageDataSource_Gender_Value"));
genderDropDown.Click();
new SelectElement (genderDropDown).SelectByText ("Männlich");
driver.FindElement (By.Xpath ("//option[@value='Male']")).Click();
//Speichern
driver.FindElement(
By.Id ("BasePersonFormPage_ObjectFormPageDataSource_Save")).Click();
//Feld "Familienname" sollte mit "Testname" befüllt sein
lastNameBox.Text.Should.Be ("Testname");
re-motion Control Objects
21
//Feld "Familienname" mit "Testname" befüllen
var lastNameTextBox = home.GetTextBoxes().ById (
"BasePersonFormPage_ObjectFormPageDataSource_LastName_Value");
lastNameTextBox.FillWith ("Testname");
//Feld "Geschlecht" mit "Männlich" befüllen
var genderDropDown = home.GetDropDowns().ById (
"BasePersonFormPage_ObjectFormPageDataSource_Gender_Value"));
genderDropDown.SelectOptionByText ("Männlich");
//Speichern
home.GetWebButtons().ById (
"BasePersonFormPage_ObjectFormPageDataSource_Save")).Click();
//Feld "Familienname" sollte mit "Testname" befüllt sein
lastNameBox.GetText().Should().Be ("Testname");
Acta Nova Page Objects
22
//Feld „Familienname" mit "Testname" befüllen
personForm.LastName.FillWith ("Testname");
//Feld "Geschlecht" mit "Männlich" befüllen
personForm.Gender.SelectOptionByText ("Männlich");
//Speichern
personForm.Buttons.Save.Click();
//Feld „Familienname" sollte mit "Testname" befüllt sein
personForm.LastName.GetText().Should().Be ("Testname");
Worauf muss man achten?
23
Programmierer Tester
Hugo
1. Zu Tür hingehen
2. Tür öffnen
3. Sicherstellen, dass das Licht nicht brennt
Tür bereits offen
Worauf muss man achten?
24
Was kann man sonst noch damit machen?
25
Benutzerhandbuch
Was kann man sonst noch damit machen?
26
Benutzerhandbuch
1. Seite navigieren
2. Seite in korrekten Zustand bringen
3. Screenshot machen
Was kann man sonst noch damit machen?
27
Benutzerhandbuch
1. Seite navigieren
2. Seite in korrekten Zustand bringen
3. Zustand testen
Zusammenfassung
28
 Welche Probleme gibt es mit Webtests?
 Wartungsintensiv
 Contextinformationen für Tester und Automatisierungsschicht
 Page Objects automatisch generieren
 Fehler zu Compile time
 Instabil / Flaky
 Completion Detection
 Performance
 Schnellsten Browser verwenden
 Testdaten nicht über Weboberfläche anlegen
Interviewpartner gesucht!
 Titel
– Kommunikationsprobleme zwischen Entwicklern und Tester
 Dauer
– ca. 30 Minuten
 Ziel
– Leitfaden für erfolgreichen Kommunikationsprozess zwischen
Entwickler und Tester
 Kontaktiert mich
– florian.decker@rubicon.eu
– florian@deckerhome.at
29© FH Technikum Wien

Weitere ähnliche Inhalte

Empfohlen

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
Marius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
Expeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
Pixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
marketingartwork
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
Skeleton Technologies
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
SpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Lily Ray
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
Rajiv Jayarajah, MAppComm, ACC
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
Christy Abraham Joy
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
Vit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
MindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
RachelPearson36
 

Empfohlen (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Webtestsuite_umfangreiche_applikation

Hinweis der Redaktion

  1. Name hinzufügen
  2. Pfeil dazumachen
  3. Hovern erst nachher