SlideShare a Scribd company logo
1 of 74
Download to read offline
@iPullRank
iPullRank
Software Testing for SEO
http://www.slideshare.net/ipullrank
Has this ever happened to
you?
IPULLRANK.COM @ IPULLRANKhttps://twitter.com/iPullRank/status/1045435603851063296
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
What is Automated
Testing?
So first, let’s talk just a little
bit about modern web
development and how it
works.
IPULLRANK.COM @ IPULLRANK
Model-View-Controller Design Pattern
A lot of modern software frameworks follow this design pattern that allows for a separation of concerns between data, logic and
frontend.
IPULLRANK.COM @ IPULLRANK
React + Laravel Example
In this example the PHP framework Laravel manages the Model and the Controller and the JavaScript framework React acts as
the View.
IPULLRANK.COM @ IPULLRANK
A URL is Converted
into a Route
URLs point to controllers
which then return the right
views featuring data from
the right models.
This is why segmented
crawls are important to
developers being able to
implement
recommendations.
IPULLRANK.COM @ IPULLRANK
Waterfall Rarely Makes
Sense Anymore
It’s unlikely that the websites
you work on will follow a
waterfall methodology.
Everything is agile now.
IPULLRANK.COM @ IPULLRANK
Most Dev Teams
Follow Agile
Methodology
Small pieces of functionality
are tackled in short time
frames or “sprints.”
IPULLRANK.COM @ IPULLRANK
Continuous Integration
Often engineering teams are following a Continuous Integration model where teams and individuals are
autonomously pushing their code as they complete it.
IPULLRANK.COM @ IPULLRANK
Continuous Integration means lots of people can break
things
IPULLRANK.COM @ IPULLRANK
Deployment Pipelines feature Automated Tests
Deployment pipelines allow for safeguards to be put in place to ensure that everyone is following the same process to get things
deployed.
IPULLRANK.COM @ IPULLRANK
Tests Can Make the Build Fail
Certain tests are deemed as critical to the infrastructure of the website and will cause the deployment process to fail and the
developer has to go back and fix it before they can continue with their work.
IPULLRANK.COM @ IPULLRANK
IPULLRANK.COM @ IPULLRANK
Automated Testing
There are three flavors of testing that are most relevant to us as SEOs: Unit Tests, Integration Tests and GUI Tests.
IPULLRANK.COM @ IPULLRANK
Unit Testing
With Unit tests you are
testing an individual function
or procedure to ensure that
that it works.
These are generally small
and fast. Codebases can
have many of these.
Unit tests can be used to determine the presence of tags and attributes in structure of code to be served to the
client, but not the rendered code.
IPULLRANK.COM @ IPULLRANK
Integration Testing
With integration testing you’re
testing how your logic comes
together to build the bigger
system. It can involve external
data such as APIs and
databases or how the various
pieces of the systems work
together.
This is significantly slower than
unit testing, but depends on
how much of the system needs
to be rendered in order to
complete the test.
Integration tests can be used to determine tags, features and content of completed HTML source being
served to the client. However, there can be overlap with what can be viewed in an UI test.
IPULLRANK.COM @ IPULLRANK
UI Testing
UI Testing is the testing of
the frontend interface of
your website. This is largely
used for ensuring front end
components work as
intended.
This is the slowest version of
testing because it requires
the page to be fully
rendered.
UI tests can be used to determine tags, features and content of the rendered DOM being served to the client.
IPULLRANK.COM @ IPULLRANK
This is What Headless Browsers are Actually For
In SEO we primarily use headless browsers for scraping JavaScript-rendered content, but they are actually intended for
automated tests.
IPULLRANK.COM @ IPULLRANK
Read Why the Chrome DevTools Team Made Puppeteer
https://github.com/GoogleChrome/puppeteer
IPULLRANK.COM @ IPULLRANK
Test Driven Development
Some moderndevelopersfollow thismethodologywhereintheywritetheirtestsfirstandthenwrite theircode until the tests pass.Unit
testsare primarilyusedforthis,butanytype of test could be used.Note:UITestswill dramatically slow downdeployment.
How Does This Apply to
SEO?
IPULLRANK.COM @ IPULLRANK
Last Year I Talked about Using Task Runners
https://searchengineland.com/get-developers-implement-seo-recommendations-280318
IPULLRANK.COM @ IPULLRANK
I explained the Anderson-Alderson Scale
This is a scale of which the developers you interface with are somewhere between an underachieving known-it-all and
overachieving do-it-all.
IPULLRANK.COM @ IPULLRANK
@BritneyMuller brings
upp a great point
My goal with that post and
talk is to introduce you to
another way to integrate
developers and ensure we’re
all moving towards working
better together.
Let’s go back through those
horror stories.
IPULLRANK.COM @ IPULLRANK
A Test Can Catch This
Unit Test Failure Condition
– Presence of meta noindex
tag on functions that impact
the <head>.
Integration Test Failure
Condition – Presence of
meta noindex on routes that
should not have them.
This is a critical issue so this test should fail the build.
IPULLRANK.COM @ IPULLRANK
Not Sure I’d Test for
this One
Integration Test Failure
Condition – H1 tag is the same
in the HTML on every accessed
page in our test dataset.
UI Test Failure Condition -
H1 tag is the same in the
rendered DOM on every
accessed page in our test
dataset.
I would not recommend having this test fail the build though.
IPULLRANK.COM @ IPULLRANK
Robots.txt Test
Unit Test Failure Condition
– Presence of “User-agent: *
Disallow: /” on prod in a
function for the robots.txt
route.
Integration Test Failure
Condition – Presence of
“User-agent: * Disallow: /” on
prod in robots.txt URL.
This is a critical issue so this test should fail the build.
IPULLRANK.COM @ IPULLRANK
SSR Test
Integrated Test/UI Test
Failure Condition -
Key body content is not
available in the HTML version.
This one requires the rendered
DOM as a comparison so it
technically could be a UI and/or
Integrated Test.
This should definitely fail the build.
IPULLRANK.COM @ IPULLRANK
Rel-canonical
UI Test Failure Condition –
URLs that should have a self-
referencing canonical do not in
the DOM.
Integration Test Failure
Condition – URLs that should
have a self-referencing
canonical do not in the HTML.
Unit Test Failure Condition -
Route does not set canonical
tag on the server side.
This is a critical issue so this test should fail the build.
IPULLRANK.COM @ IPULLRANK
SSR Test
Integrated Test/UI Test
Failure Condition -
Key body content is not
available in the HTML version.
This one requires the rendered
DOM as a comparison so it
technically could be a UI and/or
Integrated Test.
This should definitely fail the build.
IPULLRANK.COM @ IPULLRANK
Invalid Tag Tests
UI Test Failure Condition –
Rendered DOM features tags in
the <head> sub-tree that are
invalid.
Integration Test Failure
Condition – HTML features
tags in the <head> that are
invalid or HTML does not pass
W3C validation.
Unit Test Failure Condition -
Function that returns the
<head> features tags that
don’t fit a list of valid <head>
tags.
This is a critical issue so this test should fail the build.
IPULLRANK.COM @ IPULLRANK
But Testing is Not a
Magic Bullet
Sure, we can develop tests
for to look for the presence
of structured markup and to
enforce metadata
specifications, but when
things go this wrong, you
have to put your team
member, project
management, consultant,
management hat on and get
to the bottom of what went
wrong.
IPULLRANK.COM @ IPULLRANKIn my experience, it’s usually developers writing their own tests, but I’ve heard of QA Engineers also writing tests after the fact to
help ensure quality moving forward.
Who Usually Does this Work?
Developer QA Engineer
Doing an SEO Audit is
basically doing similar work
to that of a QA Engineer.
IPULLRANK.COM @ IPULLRANK
Crawling HTML is
Somewhat like
Integration Testing
You’re looking at the results
of what the software spits
out when all the systems
come together.
IPULLRANK.COM @ IPULLRANK
Crawling JavaScript is
more like UI Testing
You’re looking at the results
when the user interface is
rendered.
IPULLRANK.COM @ IPULLRANK
…And you should be comparing the differences
John Hogg from ClickConsult shared his diff comparison Chrome extension that computes the DIFF
between HTML and rendered DOM. When it’s released I encourage you to check it out.
IPULLRANK.COM @ IPULLRANK
Your Role is To Help Plan the Tests
You’ll want to work with a QA Engineer, a Product Manager or a Developer to develop test cases that can then be built into
IPULLRANK.COM @ IPULLRANK
Here are Few Examples
These examples of tests should be enough to get you started on defining your own potential tests for SEO.
Test Case ID Test
Scenario
Test Type Test
Steps
Test Data Expected
Results
Actual
Results
Pass/Fail
SEO01
Presence of Meta
Descriptions
Unit Test Check for presence
of meta
description tag in
HTML
Page template
code
All URLs should
have meta
description
Product Detail
Page is missing
meta description
PASS
SEO02
Viable Internal
Links
Functional Test 1. Render pages
2. Open all
internal links
3. Review
response codes
Crawled URL data All links return 200
response code
Many links to
redirects and 404s
FAIL
SEO03
Average Page
Speed Less than 2
Seconds
Functional/Integrat
ion Test
1. Render pages
2. Capture page
speed
3. Determine
average page
speed per page
type
Render all page
types from URL list
All page types
should return an
average of 2
seconds load time
Homepage takes 5
seconds to load
FAIL
Tools
Some tools you canuse to get your automated testing
for SEO off the ground
IPULLRANK.COM @ IPULLRANK
Meet Jenkins
If your developers are doing Continuous Integration or Continuous Delivery, it’s likely that they are using Jenkins.
https://jenkins.io/
IPULLRANK.COM @ IPULLRANK
Get Failure Alerts in Slack
https://plugins.jenkins.io/slack
IPULLRANK.COM @ IPULLRANK
Or in Jenkins’ logs
You could also just regularly the logs that Jenkins provides.
IPULLRANK.COM @ IPULLRANK
Or Pipe it into MySQL
Sending the Jenkins logs
into MySQL gives you the
opportunity to monitor and
visualize failures and
successes of builds with
respect to SEO in a variety of
ways such as through
Google Data Studio.
https://chburmeister.github.io/2017/01/27/jenkins-logging-directly-to-mysql-database.html
IPULLRANK.COM @ IPULLRANKYou’ll want a headless crawler and a text-based crawler to spin up pages and run tests on and a fixed list of pages that represent
all of the public-facing routes.
You’ll Also Need a Crawler
https://github.com/yujiosaka/
headless-chrome-crawler
https://github.com/antivanov/
js-crawler
IPULLRANK.COM @ IPULLRANK
Consider Making them Serverless
Building your crawler with AWS Lambda, Azure Functions or Google Clouds Functions may be a great way to enjoy scale without
having to manage additional servers.
Shoutout to @vvgomes
IPULLRANK.COM @ IPULLRANK
Vini’s Blog Post on Serverless Architectures
http://vvgomes.com/edas-and-serverless/
IPULLRANK.COM @ IPULLRANK
Tips On Testing
Make only mission critical SEO tests potentially fail the build.
Most SEO issues will be spotted in your integration tests.
Include your SEO tests in every build.
Keep your testing suites separate.
Do all crawling in parallel.
Things to Play With
BecauseI never like to leaveyou without having
something you can do
IPULLRANK.COM @ IPULLRANK
Check out these Video Tutorials on Jenkins
Play with Jenkins: https://www.youtube.com/playlist?list=PLzvRQMJ9HDiSaisKr7OnM4Fl7JXCDDcmt
IPULLRANK.COM @ IPULLRANK
Kantu Browser Automation Tool
See how Browser Automation tests work with a chrome extension: https://chrome.google.com/webstore/detail/kantu-
browser-automation/gcbalfbdmfieckjlnblleoemohcganoc?hl=en
IPULLRANK.COM @ IPULLRANK
Codeception
If you dabble in PHP or have a WP site you want to play around with, check out Codeception.
https://codeception.com
Wrapping Up
Who am I and where am I from?
IPULLRANK.COM @ IPULLRANK
I’M #ZORASDAD
First and foremost.
IPULLRANK.COM @ IPULLRANK
MY NAME IS MIKE
KING
Razorfish, Publicis Modem alum
Full Stack Developer
Full Stack Marketer
Moz Associate
IPULLRANK.COM @ IPULLRANK
We Do These Things
Machine
Learning
SEOContent
Strategy
Paid Media Measurement
& Optimization
Marketing
Automation
IPULLRANK.COM @ IPULLRANK
Machine Learning for Marketers Guide
skratchcoin.com
http://ipullrank.com/machine-learning-guide/
IPULLRANK.COM @ IPULLRANK
skratchcoin.com
THANK YOU /
Q&A
MICHAEL KING
FOUNDER &
MANAGING DIRECTOR
IPULLRANK
mike@ipullrank.com
DOWNLOAD THESE SLIDES: http://bit.ly/testeo

More Related Content

What's hot

How to launch 'new concept' products & services in new markets | Dave Cousin ...
How to launch 'new concept' products & services in new markets | Dave Cousin ...How to launch 'new concept' products & services in new markets | Dave Cousin ...
How to launch 'new concept' products & services in new markets | Dave Cousin ...Oban International
 
Agile SEO: Prioritise SEO Activities with Cadence and Risk Radius
Agile SEO: Prioritise SEO Activities with Cadence and Risk RadiusAgile SEO: Prioritise SEO Activities with Cadence and Risk Radius
Agile SEO: Prioritise SEO Activities with Cadence and Risk RadiusParth Suba
 
Content writers: will AI take your job?
Content writers: will AI take your job?Content writers: will AI take your job?
Content writers: will AI take your job?KatieThompson74137
 
Data Driven Approach to Scale SEO at BrightonSEO 2023
Data Driven Approach to Scale SEO at BrightonSEO 2023Data Driven Approach to Scale SEO at BrightonSEO 2023
Data Driven Approach to Scale SEO at BrightonSEO 2023Nitin Manchanda
 
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdfCore Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdfSophie Gibson
 
eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)
eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)
eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)Kristina Azarenko
 
The AIR Framework _ brightonSEO April 2023.pptx
The AIR Framework _ brightonSEO April 2023.pptxThe AIR Framework _ brightonSEO April 2023.pptx
The AIR Framework _ brightonSEO April 2023.pptxAlex Wright
 
BrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptx
BrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptxBrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptx
BrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptxJosephineHaagen
 
How SEO changes, as we say bye bye to cookies
How SEO changes, as we say bye bye to cookiesHow SEO changes, as we say bye bye to cookies
How SEO changes, as we say bye bye to cookiesAccuraCast
 
Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...
Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...
Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...Ahrefs
 
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)Gianna Brachetti-Truskawa 🐙
 
BrightonSEO 2022.pdf
BrightonSEO 2022.pdfBrightonSEO 2022.pdf
BrightonSEO 2022.pdfIlia Markov
 
Swipe left: Why your content is getting ghosted
Swipe left: Why your content is getting ghostedSwipe left: Why your content is getting ghosted
Swipe left: Why your content is getting ghostedEleni Cashell
 
Beyond the Basics – 5 Google Business Profile elements you might not know abo...
Beyond the Basics – 5 Google Business Profile elements you might not know abo...Beyond the Basics – 5 Google Business Profile elements you might not know abo...
Beyond the Basics – 5 Google Business Profile elements you might not know abo...Claire Carlile Marketing
 
Martin McGarry - SEO strategy c/o England manager Gareth Southgate
Martin McGarry - SEO strategy c/o England manager Gareth SouthgateMartin McGarry - SEO strategy c/o England manager Gareth Southgate
Martin McGarry - SEO strategy c/o England manager Gareth SouthgateMartin McGarry
 
Freddy Krueger's Guide to Scary Good Reporting
Freddy Krueger's Guide to Scary Good ReportingFreddy Krueger's Guide to Scary Good Reporting
Freddy Krueger's Guide to Scary Good ReportingGreg Gifford
 
How to leverage indexation tracking to monitor issues and improve performance
How to leverage indexation tracking to monitor issues and improve performanceHow to leverage indexation tracking to monitor issues and improve performance
How to leverage indexation tracking to monitor issues and improve performanceSimon Lesser
 
Shining a light on the dark funnel
Shining a light on the dark funnelShining a light on the dark funnel
Shining a light on the dark funnelRiaz Kanani
 
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...Jessica Maloney
 
How to Use Search Intent to Dominate Google Discover
How to Use Search Intent to Dominate Google DiscoverHow to Use Search Intent to Dominate Google Discover
How to Use Search Intent to Dominate Google DiscoverFelipe Bazon
 

What's hot (20)

How to launch 'new concept' products & services in new markets | Dave Cousin ...
How to launch 'new concept' products & services in new markets | Dave Cousin ...How to launch 'new concept' products & services in new markets | Dave Cousin ...
How to launch 'new concept' products & services in new markets | Dave Cousin ...
 
Agile SEO: Prioritise SEO Activities with Cadence and Risk Radius
Agile SEO: Prioritise SEO Activities with Cadence and Risk RadiusAgile SEO: Prioritise SEO Activities with Cadence and Risk Radius
Agile SEO: Prioritise SEO Activities with Cadence and Risk Radius
 
Content writers: will AI take your job?
Content writers: will AI take your job?Content writers: will AI take your job?
Content writers: will AI take your job?
 
Data Driven Approach to Scale SEO at BrightonSEO 2023
Data Driven Approach to Scale SEO at BrightonSEO 2023Data Driven Approach to Scale SEO at BrightonSEO 2023
Data Driven Approach to Scale SEO at BrightonSEO 2023
 
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdfCore Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
 
eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)
eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)
eCommerce Internal Linking - Into the Spider-Verse (BrightonSEO edition)
 
The AIR Framework _ brightonSEO April 2023.pptx
The AIR Framework _ brightonSEO April 2023.pptxThe AIR Framework _ brightonSEO April 2023.pptx
The AIR Framework _ brightonSEO April 2023.pptx
 
BrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptx
BrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptxBrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptx
BrightonSEO - NLP for SEOs - How to optimise your content for BERT.pptx
 
How SEO changes, as we say bye bye to cookies
How SEO changes, as we say bye bye to cookiesHow SEO changes, as we say bye bye to cookies
How SEO changes, as we say bye bye to cookies
 
Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...
Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...
Most Valuable SEO Presentation - Advanced Search Summit - DMO Advanced 2021 -...
 
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
 
BrightonSEO 2022.pdf
BrightonSEO 2022.pdfBrightonSEO 2022.pdf
BrightonSEO 2022.pdf
 
Swipe left: Why your content is getting ghosted
Swipe left: Why your content is getting ghostedSwipe left: Why your content is getting ghosted
Swipe left: Why your content is getting ghosted
 
Beyond the Basics – 5 Google Business Profile elements you might not know abo...
Beyond the Basics – 5 Google Business Profile elements you might not know abo...Beyond the Basics – 5 Google Business Profile elements you might not know abo...
Beyond the Basics – 5 Google Business Profile elements you might not know abo...
 
Martin McGarry - SEO strategy c/o England manager Gareth Southgate
Martin McGarry - SEO strategy c/o England manager Gareth SouthgateMartin McGarry - SEO strategy c/o England manager Gareth Southgate
Martin McGarry - SEO strategy c/o England manager Gareth Southgate
 
Freddy Krueger's Guide to Scary Good Reporting
Freddy Krueger's Guide to Scary Good ReportingFreddy Krueger's Guide to Scary Good Reporting
Freddy Krueger's Guide to Scary Good Reporting
 
How to leverage indexation tracking to monitor issues and improve performance
How to leverage indexation tracking to monitor issues and improve performanceHow to leverage indexation tracking to monitor issues and improve performance
How to leverage indexation tracking to monitor issues and improve performance
 
Shining a light on the dark funnel
Shining a light on the dark funnelShining a light on the dark funnel
Shining a light on the dark funnel
 
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...
 
How to Use Search Intent to Dominate Google Discover
How to Use Search Intent to Dominate Google DiscoverHow to Use Search Intent to Dominate Google Discover
How to Use Search Intent to Dominate Google Discover
 

Similar to Software Testing for SEO

iPullRank Webinar - Automated Testing For SEO With Hamlet Batista
iPullRank Webinar - Automated Testing For SEO With Hamlet BatistaiPullRank Webinar - Automated Testing For SEO With Hamlet Batista
iPullRank Webinar - Automated Testing For SEO With Hamlet BatistaMichael King
 
TechSEO Boost 2018: The Statelessness of Technical SEO
TechSEO Boost 2018: The Statelessness of Technical SEOTechSEO Boost 2018: The Statelessness of Technical SEO
TechSEO Boost 2018: The Statelessness of Technical SEOCatalyst
 
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...Applitools
 
The Technical SEO Renaissance
The Technical SEO RenaissanceThe Technical SEO Renaissance
The Technical SEO RenaissanceMichael King
 
How to scale your Test Automation
How to scale your Test AutomationHow to scale your Test Automation
How to scale your Test AutomationKlaus Salchner
 
The Technical Seo Renaissance - Mike King
 The Technical Seo Renaissance - Mike King   The Technical Seo Renaissance - Mike King
The Technical Seo Renaissance - Mike King Glen Dimaandal
 
Core Web Vitals and Your Search Rankings
Core Web Vitals and Your Search Rankings Core Web Vitals and Your Search Rankings
Core Web Vitals and Your Search Rankings Michael King
 
SearchLove Boston 2016 | Mike King | Developer Thinking for SEOs
SearchLove Boston 2016 | Mike King | Developer Thinking for SEOsSearchLove Boston 2016 | Mike King | Developer Thinking for SEOs
SearchLove Boston 2016 | Mike King | Developer Thinking for SEOsDistilled
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
Mastering Mobile Test Automation with Appium
Mastering Mobile Test Automation with AppiumMastering Mobile Test Automation with Appium
Mastering Mobile Test Automation with AppiumPerfecto by Perforce
 
Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...
Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...
Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...WSO2
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaEdureka!
 
A journey to_be_a_software_craftsman
A journey to_be_a_software_craftsmanA journey to_be_a_software_craftsman
A journey to_be_a_software_craftsmanJaehoon Oh
 
Refactoring to Testable Code
Refactoring to Testable CodeRefactoring to Testable Code
Refactoring to Testable CodeRichard Taylor
 
Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps  Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps Chetan Gordhan
 
WebTest - Efficient Functional Web Testing with HtmlUnit and Beyond
WebTest - Efficient Functional Web Testing with HtmlUnit and BeyondWebTest - Efficient Functional Web Testing with HtmlUnit and Beyond
WebTest - Efficient Functional Web Testing with HtmlUnit and Beyondmguillem
 

Similar to Software Testing for SEO (20)

iPullRank Webinar - Automated Testing For SEO With Hamlet Batista
iPullRank Webinar - Automated Testing For SEO With Hamlet BatistaiPullRank Webinar - Automated Testing For SEO With Hamlet Batista
iPullRank Webinar - Automated Testing For SEO With Hamlet Batista
 
TechSEO Boost 2018: The Statelessness of Technical SEO
TechSEO Boost 2018: The Statelessness of Technical SEOTechSEO Boost 2018: The Statelessness of Technical SEO
TechSEO Boost 2018: The Statelessness of Technical SEO
 
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
Unlocking the Power of ChatGPT and AI in Testing - NextSteps, presented by Ap...
 
The Technical SEO Renaissance
The Technical SEO RenaissanceThe Technical SEO Renaissance
The Technical SEO Renaissance
 
How to scale your Test Automation
How to scale your Test AutomationHow to scale your Test Automation
How to scale your Test Automation
 
The Technical Seo Renaissance - Mike King
 The Technical Seo Renaissance - Mike King   The Technical Seo Renaissance - Mike King
The Technical Seo Renaissance - Mike King
 
Core Web Vitals and Your Search Rankings
Core Web Vitals and Your Search Rankings Core Web Vitals and Your Search Rankings
Core Web Vitals and Your Search Rankings
 
SearchLove Boston 2016 | Mike King | Developer Thinking for SEOs
SearchLove Boston 2016 | Mike King | Developer Thinking for SEOsSearchLove Boston 2016 | Mike King | Developer Thinking for SEOs
SearchLove Boston 2016 | Mike King | Developer Thinking for SEOs
 
Why test with flex unit
Why test with flex unitWhy test with flex unit
Why test with flex unit
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Mastering Mobile Test Automation with Appium
Mastering Mobile Test Automation with AppiumMastering Mobile Test Automation with Appium
Mastering Mobile Test Automation with Appium
 
Continuous deployment
Continuous deploymentContinuous deployment
Continuous deployment
 
Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...
Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...
Trouble with Performance Debugging? Not Anymore with Choreo, the AI-Assisted ...
 
Future of QA
Future of QAFuture of QA
Future of QA
 
Futureofqa
FutureofqaFutureofqa
Futureofqa
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | Edureka
 
A journey to_be_a_software_craftsman
A journey to_be_a_software_craftsmanA journey to_be_a_software_craftsman
A journey to_be_a_software_craftsman
 
Refactoring to Testable Code
Refactoring to Testable CodeRefactoring to Testable Code
Refactoring to Testable Code
 
Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps  Microsoft DevOps Solution - DevOps
Microsoft DevOps Solution - DevOps
 
WebTest - Efficient Functional Web Testing with HtmlUnit and Beyond
WebTest - Efficient Functional Web Testing with HtmlUnit and BeyondWebTest - Efficient Functional Web Testing with HtmlUnit and Beyond
WebTest - Efficient Functional Web Testing with HtmlUnit and Beyond
 

More from Michael King

Using Tags & Taxonomies to super charge your eCommerce SEO
Using Tags & Taxonomies to super charge your eCommerce SEOUsing Tags & Taxonomies to super charge your eCommerce SEO
Using Tags & Taxonomies to super charge your eCommerce SEOMichael King
 
Building the content machine
Building the content machine Building the content machine
Building the content machine Michael King
 
iPullRank Webinar - Forecasting and Calculating ROI for SEO
iPullRank Webinar - Forecasting and Calculating ROI for SEOiPullRank Webinar - Forecasting and Calculating ROI for SEO
iPullRank Webinar - Forecasting and Calculating ROI for SEOMichael King
 
iPullRank Webinar - Navigating Black Friday in COVID-19
iPullRank Webinar - Navigating Black Friday in COVID-19iPullRank Webinar - Navigating Black Friday in COVID-19
iPullRank Webinar - Navigating Black Friday in COVID-19Michael King
 
iPullRank Webinar - Planning SEO for 2021
iPullRank Webinar - Planning SEO for 2021 iPullRank Webinar - Planning SEO for 2021
iPullRank Webinar - Planning SEO for 2021 Michael King
 
The Essentials to Modern Enterprise SEO
The Essentials to Modern Enterprise SEOThe Essentials to Modern Enterprise SEO
The Essentials to Modern Enterprise SEOMichael King
 
Marketing in the Age of COVID-19
Marketing in the Age of COVID-19Marketing in the Age of COVID-19
Marketing in the Age of COVID-19Michael King
 
How to Build an Empathetic Marketing Strategy During the Times of COVID19
How to Build an Empathetic Marketing Strategy During the Times of COVID19How to Build an Empathetic Marketing Strategy During the Times of COVID19
How to Build an Empathetic Marketing Strategy During the Times of COVID19Michael King
 
Technical Content Optimization
Technical Content OptimizationTechnical Content Optimization
Technical Content OptimizationMichael King
 
You Don't Know SEO
You Don't Know SEOYou Don't Know SEO
You Don't Know SEOMichael King
 
Modern SEO Players Guide
Modern SEO Players GuideModern SEO Players Guide
Modern SEO Players GuideMichael King
 
Building your outreach machine
Building your outreach machineBuilding your outreach machine
Building your outreach machineMichael King
 
The Pragmatic Future of Search
The Pragmatic Future of SearchThe Pragmatic Future of Search
The Pragmatic Future of SearchMichael King
 
SEO: Same as it Ever Was
SEO: Same as it Ever WasSEO: Same as it Ever Was
SEO: Same as it Ever WasMichael King
 
Major Keys to Video Content Strategy
Major Keys to Video Content StrategyMajor Keys to Video Content Strategy
Major Keys to Video Content StrategyMichael King
 
How to generate those leads all day everyday
How to generate those leads all day everydayHow to generate those leads all day everyday
How to generate those leads all day everydayMichael King
 
Technical Marketing is the Price of Admission
Technical Marketing is the Price of AdmissionTechnical Marketing is the Price of Admission
Technical Marketing is the Price of AdmissionMichael King
 
Actionable Data-Driven Personas for CRO
Actionable Data-Driven Personas for CROActionable Data-Driven Personas for CRO
Actionable Data-Driven Personas for CROMichael King
 
Perfect Starts: How to Get the Right Traffic with a Content Audit
Perfect Starts: How to Get the Right Traffic with a Content AuditPerfect Starts: How to Get the Right Traffic with a Content Audit
Perfect Starts: How to Get the Right Traffic with a Content AuditMichael King
 
Storytelling By Numbers
Storytelling By NumbersStorytelling By Numbers
Storytelling By NumbersMichael King
 

More from Michael King (20)

Using Tags & Taxonomies to super charge your eCommerce SEO
Using Tags & Taxonomies to super charge your eCommerce SEOUsing Tags & Taxonomies to super charge your eCommerce SEO
Using Tags & Taxonomies to super charge your eCommerce SEO
 
Building the content machine
Building the content machine Building the content machine
Building the content machine
 
iPullRank Webinar - Forecasting and Calculating ROI for SEO
iPullRank Webinar - Forecasting and Calculating ROI for SEOiPullRank Webinar - Forecasting and Calculating ROI for SEO
iPullRank Webinar - Forecasting and Calculating ROI for SEO
 
iPullRank Webinar - Navigating Black Friday in COVID-19
iPullRank Webinar - Navigating Black Friday in COVID-19iPullRank Webinar - Navigating Black Friday in COVID-19
iPullRank Webinar - Navigating Black Friday in COVID-19
 
iPullRank Webinar - Planning SEO for 2021
iPullRank Webinar - Planning SEO for 2021 iPullRank Webinar - Planning SEO for 2021
iPullRank Webinar - Planning SEO for 2021
 
The Essentials to Modern Enterprise SEO
The Essentials to Modern Enterprise SEOThe Essentials to Modern Enterprise SEO
The Essentials to Modern Enterprise SEO
 
Marketing in the Age of COVID-19
Marketing in the Age of COVID-19Marketing in the Age of COVID-19
Marketing in the Age of COVID-19
 
How to Build an Empathetic Marketing Strategy During the Times of COVID19
How to Build an Empathetic Marketing Strategy During the Times of COVID19How to Build an Empathetic Marketing Strategy During the Times of COVID19
How to Build an Empathetic Marketing Strategy During the Times of COVID19
 
Technical Content Optimization
Technical Content OptimizationTechnical Content Optimization
Technical Content Optimization
 
You Don't Know SEO
You Don't Know SEOYou Don't Know SEO
You Don't Know SEO
 
Modern SEO Players Guide
Modern SEO Players GuideModern SEO Players Guide
Modern SEO Players Guide
 
Building your outreach machine
Building your outreach machineBuilding your outreach machine
Building your outreach machine
 
The Pragmatic Future of Search
The Pragmatic Future of SearchThe Pragmatic Future of Search
The Pragmatic Future of Search
 
SEO: Same as it Ever Was
SEO: Same as it Ever WasSEO: Same as it Ever Was
SEO: Same as it Ever Was
 
Major Keys to Video Content Strategy
Major Keys to Video Content StrategyMajor Keys to Video Content Strategy
Major Keys to Video Content Strategy
 
How to generate those leads all day everyday
How to generate those leads all day everydayHow to generate those leads all day everyday
How to generate those leads all day everyday
 
Technical Marketing is the Price of Admission
Technical Marketing is the Price of AdmissionTechnical Marketing is the Price of Admission
Technical Marketing is the Price of Admission
 
Actionable Data-Driven Personas for CRO
Actionable Data-Driven Personas for CROActionable Data-Driven Personas for CRO
Actionable Data-Driven Personas for CRO
 
Perfect Starts: How to Get the Right Traffic with a Content Audit
Perfect Starts: How to Get the Right Traffic with a Content AuditPerfect Starts: How to Get the Right Traffic with a Content Audit
Perfect Starts: How to Get the Right Traffic with a Content Audit
 
Storytelling By Numbers
Storytelling By NumbersStorytelling By Numbers
Storytelling By Numbers
 

Recently uploaded

What are the 4 characteristics of CTAs that convert?
What are the 4 characteristics of CTAs that convert?What are the 4 characteristics of CTAs that convert?
What are the 4 characteristics of CTAs that convert?Juan Pineda
 
pptx.marketing strategy of tanishq. pptx
pptx.marketing strategy of tanishq. pptxpptx.marketing strategy of tanishq. pptx
pptx.marketing strategy of tanishq. pptxarsathsahil
 
Fiverr's Product Marketing Interview Assignment
Fiverr's Product Marketing Interview AssignmentFiverr's Product Marketing Interview Assignment
Fiverr's Product Marketing Interview AssignmentFarrel Brest
 
Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...
What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...
What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...Ahrefs
 
(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...
(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...
(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...Hugues Rey
 
The power of SEO-driven market intelligence
The power of SEO-driven market intelligenceThe power of SEO-driven market intelligence
The power of SEO-driven market intelligenceHinde Lamrani
 
2024 SEO Trends for Business Success (WSA)
2024 SEO Trends for Business Success (WSA)2024 SEO Trends for Business Success (WSA)
2024 SEO Trends for Business Success (WSA)Jomer Gregorio
 
Digital Marketing Spotlight: Lifecycle Advertising Strategies.pdf
Digital Marketing Spotlight: Lifecycle Advertising Strategies.pdfDigital Marketing Spotlight: Lifecycle Advertising Strategies.pdf
Digital Marketing Spotlight: Lifecycle Advertising Strategies.pdfDemandbase
 
The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...
The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...
The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...CIO Business World
 
Influencer Marketing Power point presentation
Influencer Marketing  Power point presentationInfluencer Marketing  Power point presentation
Influencer Marketing Power point presentationdgtivemarketingagenc
 
Research and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdf
Research and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdfResearch and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdf
Research and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdfVWO
 
How To Utilize Calculated Properties in your HubSpot Setup
How To Utilize Calculated Properties in your HubSpot SetupHow To Utilize Calculated Properties in your HubSpot Setup
How To Utilize Calculated Properties in your HubSpot Setupssuser4571da
 
Common Culture: Paul Willis Symbolic Creativity
Common Culture: Paul Willis Symbolic CreativityCommon Culture: Paul Willis Symbolic Creativity
Common Culture: Paul Willis Symbolic CreativityMonishka Adhikari
 
From Chance to Choice - Tactical Link Building for International SEO
From Chance to Choice - Tactical Link Building for International SEOFrom Chance to Choice - Tactical Link Building for International SEO
From Chance to Choice - Tactical Link Building for International SEOSzymon Słowik
 
定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一
定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一
定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一s SS
 
The Impact of Digital Technologies
The Impact of Digital Technologies The Impact of Digital Technologies
The Impact of Digital Technologies bruguardarib
 
TAM AdEx 2023 Cross Media Advertising Recap - Auto Sector
TAM AdEx 2023 Cross Media Advertising Recap - Auto SectorTAM AdEx 2023 Cross Media Advertising Recap - Auto Sector
TAM AdEx 2023 Cross Media Advertising Recap - Auto SectorSocial Samosa
 
The Pitfalls of Keyword Stuffing in SEO Copywriting
The Pitfalls of Keyword Stuffing in SEO CopywritingThe Pitfalls of Keyword Stuffing in SEO Copywriting
The Pitfalls of Keyword Stuffing in SEO CopywritingJuan Pineda
 
DIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdf
DIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdfDIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdf
DIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdfmayanksharma0441
 

Recently uploaded (20)

What are the 4 characteristics of CTAs that convert?
What are the 4 characteristics of CTAs that convert?What are the 4 characteristics of CTAs that convert?
What are the 4 characteristics of CTAs that convert?
 
pptx.marketing strategy of tanishq. pptx
pptx.marketing strategy of tanishq. pptxpptx.marketing strategy of tanishq. pptx
pptx.marketing strategy of tanishq. pptx
 
Fiverr's Product Marketing Interview Assignment
Fiverr's Product Marketing Interview AssignmentFiverr's Product Marketing Interview Assignment
Fiverr's Product Marketing Interview Assignment
 
Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Lajpat Nagar Delhi 💯Call Us 🔝8264348440🔝
 
What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...
What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...
What I learned from auditing over 1,000,000 websites - SERP Conf 2024 Patrick...
 
(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...
(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...
(Generative) AI & Marketing: - Out of the Hype - Empowering the Marketing M...
 
The power of SEO-driven market intelligence
The power of SEO-driven market intelligenceThe power of SEO-driven market intelligence
The power of SEO-driven market intelligence
 
2024 SEO Trends for Business Success (WSA)
2024 SEO Trends for Business Success (WSA)2024 SEO Trends for Business Success (WSA)
2024 SEO Trends for Business Success (WSA)
 
Digital Marketing Spotlight: Lifecycle Advertising Strategies.pdf
Digital Marketing Spotlight: Lifecycle Advertising Strategies.pdfDigital Marketing Spotlight: Lifecycle Advertising Strategies.pdf
Digital Marketing Spotlight: Lifecycle Advertising Strategies.pdf
 
The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...
The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...
The 10 Most Influential CMO's Leading the Way of Success, 2024 (Final file) (...
 
Influencer Marketing Power point presentation
Influencer Marketing  Power point presentationInfluencer Marketing  Power point presentation
Influencer Marketing Power point presentation
 
Research and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdf
Research and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdfResearch and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdf
Research and Discovery Tools for Experimentation - 17 Apr 2024 - v 2.3 (1).pdf
 
How To Utilize Calculated Properties in your HubSpot Setup
How To Utilize Calculated Properties in your HubSpot SetupHow To Utilize Calculated Properties in your HubSpot Setup
How To Utilize Calculated Properties in your HubSpot Setup
 
Common Culture: Paul Willis Symbolic Creativity
Common Culture: Paul Willis Symbolic CreativityCommon Culture: Paul Willis Symbolic Creativity
Common Culture: Paul Willis Symbolic Creativity
 
From Chance to Choice - Tactical Link Building for International SEO
From Chance to Choice - Tactical Link Building for International SEOFrom Chance to Choice - Tactical Link Building for International SEO
From Chance to Choice - Tactical Link Building for International SEO
 
定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一
定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一
定制(ULV毕业证书)拉文大学毕业证成绩单原版一比一
 
The Impact of Digital Technologies
The Impact of Digital Technologies The Impact of Digital Technologies
The Impact of Digital Technologies
 
TAM AdEx 2023 Cross Media Advertising Recap - Auto Sector
TAM AdEx 2023 Cross Media Advertising Recap - Auto SectorTAM AdEx 2023 Cross Media Advertising Recap - Auto Sector
TAM AdEx 2023 Cross Media Advertising Recap - Auto Sector
 
The Pitfalls of Keyword Stuffing in SEO Copywriting
The Pitfalls of Keyword Stuffing in SEO CopywritingThe Pitfalls of Keyword Stuffing in SEO Copywriting
The Pitfalls of Keyword Stuffing in SEO Copywriting
 
DIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdf
DIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdfDIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdf
DIGITAL MARKETING STRATEGY_INFOGRAPHIC IMAGE.pdf
 

Software Testing for SEO

  • 1. @iPullRank iPullRank Software Testing for SEO http://www.slideshare.net/ipullrank
  • 2. Has this ever happened to you?
  • 13. So first, let’s talk just a little bit about modern web development and how it works.
  • 14. IPULLRANK.COM @ IPULLRANK Model-View-Controller Design Pattern A lot of modern software frameworks follow this design pattern that allows for a separation of concerns between data, logic and frontend.
  • 15. IPULLRANK.COM @ IPULLRANK React + Laravel Example In this example the PHP framework Laravel manages the Model and the Controller and the JavaScript framework React acts as the View.
  • 16. IPULLRANK.COM @ IPULLRANK A URL is Converted into a Route URLs point to controllers which then return the right views featuring data from the right models. This is why segmented crawls are important to developers being able to implement recommendations.
  • 17. IPULLRANK.COM @ IPULLRANK Waterfall Rarely Makes Sense Anymore It’s unlikely that the websites you work on will follow a waterfall methodology. Everything is agile now.
  • 18. IPULLRANK.COM @ IPULLRANK Most Dev Teams Follow Agile Methodology Small pieces of functionality are tackled in short time frames or “sprints.”
  • 19. IPULLRANK.COM @ IPULLRANK Continuous Integration Often engineering teams are following a Continuous Integration model where teams and individuals are autonomously pushing their code as they complete it.
  • 20. IPULLRANK.COM @ IPULLRANK Continuous Integration means lots of people can break things
  • 21. IPULLRANK.COM @ IPULLRANK Deployment Pipelines feature Automated Tests Deployment pipelines allow for safeguards to be put in place to ensure that everyone is following the same process to get things deployed.
  • 22. IPULLRANK.COM @ IPULLRANK Tests Can Make the Build Fail Certain tests are deemed as critical to the infrastructure of the website and will cause the deployment process to fail and the developer has to go back and fix it before they can continue with their work.
  • 24. IPULLRANK.COM @ IPULLRANK Automated Testing There are three flavors of testing that are most relevant to us as SEOs: Unit Tests, Integration Tests and GUI Tests.
  • 25. IPULLRANK.COM @ IPULLRANK Unit Testing With Unit tests you are testing an individual function or procedure to ensure that that it works. These are generally small and fast. Codebases can have many of these. Unit tests can be used to determine the presence of tags and attributes in structure of code to be served to the client, but not the rendered code.
  • 26. IPULLRANK.COM @ IPULLRANK Integration Testing With integration testing you’re testing how your logic comes together to build the bigger system. It can involve external data such as APIs and databases or how the various pieces of the systems work together. This is significantly slower than unit testing, but depends on how much of the system needs to be rendered in order to complete the test. Integration tests can be used to determine tags, features and content of completed HTML source being served to the client. However, there can be overlap with what can be viewed in an UI test.
  • 27. IPULLRANK.COM @ IPULLRANK UI Testing UI Testing is the testing of the frontend interface of your website. This is largely used for ensuring front end components work as intended. This is the slowest version of testing because it requires the page to be fully rendered. UI tests can be used to determine tags, features and content of the rendered DOM being served to the client.
  • 28. IPULLRANK.COM @ IPULLRANK This is What Headless Browsers are Actually For In SEO we primarily use headless browsers for scraping JavaScript-rendered content, but they are actually intended for automated tests.
  • 29. IPULLRANK.COM @ IPULLRANK Read Why the Chrome DevTools Team Made Puppeteer https://github.com/GoogleChrome/puppeteer
  • 30. IPULLRANK.COM @ IPULLRANK Test Driven Development Some moderndevelopersfollow thismethodologywhereintheywritetheirtestsfirstandthenwrite theircode until the tests pass.Unit testsare primarilyusedforthis,butanytype of test could be used.Note:UITestswill dramatically slow downdeployment.
  • 31. How Does This Apply to SEO?
  • 32. IPULLRANK.COM @ IPULLRANK Last Year I Talked about Using Task Runners https://searchengineland.com/get-developers-implement-seo-recommendations-280318
  • 33. IPULLRANK.COM @ IPULLRANK I explained the Anderson-Alderson Scale This is a scale of which the developers you interface with are somewhere between an underachieving known-it-all and overachieving do-it-all.
  • 34. IPULLRANK.COM @ IPULLRANK @BritneyMuller brings upp a great point My goal with that post and talk is to introduce you to another way to integrate developers and ensure we’re all moving towards working better together.
  • 35. Let’s go back through those horror stories.
  • 36. IPULLRANK.COM @ IPULLRANK A Test Can Catch This Unit Test Failure Condition – Presence of meta noindex tag on functions that impact the <head>. Integration Test Failure Condition – Presence of meta noindex on routes that should not have them. This is a critical issue so this test should fail the build.
  • 37. IPULLRANK.COM @ IPULLRANK Not Sure I’d Test for this One Integration Test Failure Condition – H1 tag is the same in the HTML on every accessed page in our test dataset. UI Test Failure Condition - H1 tag is the same in the rendered DOM on every accessed page in our test dataset. I would not recommend having this test fail the build though.
  • 38. IPULLRANK.COM @ IPULLRANK Robots.txt Test Unit Test Failure Condition – Presence of “User-agent: * Disallow: /” on prod in a function for the robots.txt route. Integration Test Failure Condition – Presence of “User-agent: * Disallow: /” on prod in robots.txt URL. This is a critical issue so this test should fail the build.
  • 39. IPULLRANK.COM @ IPULLRANK SSR Test Integrated Test/UI Test Failure Condition - Key body content is not available in the HTML version. This one requires the rendered DOM as a comparison so it technically could be a UI and/or Integrated Test. This should definitely fail the build.
  • 40. IPULLRANK.COM @ IPULLRANK Rel-canonical UI Test Failure Condition – URLs that should have a self- referencing canonical do not in the DOM. Integration Test Failure Condition – URLs that should have a self-referencing canonical do not in the HTML. Unit Test Failure Condition - Route does not set canonical tag on the server side. This is a critical issue so this test should fail the build.
  • 41. IPULLRANK.COM @ IPULLRANK SSR Test Integrated Test/UI Test Failure Condition - Key body content is not available in the HTML version. This one requires the rendered DOM as a comparison so it technically could be a UI and/or Integrated Test. This should definitely fail the build.
  • 42. IPULLRANK.COM @ IPULLRANK Invalid Tag Tests UI Test Failure Condition – Rendered DOM features tags in the <head> sub-tree that are invalid. Integration Test Failure Condition – HTML features tags in the <head> that are invalid or HTML does not pass W3C validation. Unit Test Failure Condition - Function that returns the <head> features tags that don’t fit a list of valid <head> tags. This is a critical issue so this test should fail the build.
  • 43. IPULLRANK.COM @ IPULLRANK But Testing is Not a Magic Bullet Sure, we can develop tests for to look for the presence of structured markup and to enforce metadata specifications, but when things go this wrong, you have to put your team member, project management, consultant, management hat on and get to the bottom of what went wrong.
  • 44. IPULLRANK.COM @ IPULLRANKIn my experience, it’s usually developers writing their own tests, but I’ve heard of QA Engineers also writing tests after the fact to help ensure quality moving forward. Who Usually Does this Work? Developer QA Engineer
  • 45. Doing an SEO Audit is basically doing similar work to that of a QA Engineer.
  • 46. IPULLRANK.COM @ IPULLRANK Crawling HTML is Somewhat like Integration Testing You’re looking at the results of what the software spits out when all the systems come together.
  • 47. IPULLRANK.COM @ IPULLRANK Crawling JavaScript is more like UI Testing You’re looking at the results when the user interface is rendered.
  • 48. IPULLRANK.COM @ IPULLRANK …And you should be comparing the differences John Hogg from ClickConsult shared his diff comparison Chrome extension that computes the DIFF between HTML and rendered DOM. When it’s released I encourage you to check it out.
  • 49. IPULLRANK.COM @ IPULLRANK Your Role is To Help Plan the Tests You’ll want to work with a QA Engineer, a Product Manager or a Developer to develop test cases that can then be built into
  • 50. IPULLRANK.COM @ IPULLRANK Here are Few Examples These examples of tests should be enough to get you started on defining your own potential tests for SEO. Test Case ID Test Scenario Test Type Test Steps Test Data Expected Results Actual Results Pass/Fail SEO01 Presence of Meta Descriptions Unit Test Check for presence of meta description tag in HTML Page template code All URLs should have meta description Product Detail Page is missing meta description PASS SEO02 Viable Internal Links Functional Test 1. Render pages 2. Open all internal links 3. Review response codes Crawled URL data All links return 200 response code Many links to redirects and 404s FAIL SEO03 Average Page Speed Less than 2 Seconds Functional/Integrat ion Test 1. Render pages 2. Capture page speed 3. Determine average page speed per page type Render all page types from URL list All page types should return an average of 2 seconds load time Homepage takes 5 seconds to load FAIL
  • 51. Tools Some tools you canuse to get your automated testing for SEO off the ground
  • 52. IPULLRANK.COM @ IPULLRANK Meet Jenkins If your developers are doing Continuous Integration or Continuous Delivery, it’s likely that they are using Jenkins. https://jenkins.io/
  • 53. IPULLRANK.COM @ IPULLRANK Get Failure Alerts in Slack https://plugins.jenkins.io/slack
  • 54. IPULLRANK.COM @ IPULLRANK Or in Jenkins’ logs You could also just regularly the logs that Jenkins provides.
  • 55. IPULLRANK.COM @ IPULLRANK Or Pipe it into MySQL Sending the Jenkins logs into MySQL gives you the opportunity to monitor and visualize failures and successes of builds with respect to SEO in a variety of ways such as through Google Data Studio. https://chburmeister.github.io/2017/01/27/jenkins-logging-directly-to-mysql-database.html
  • 56. IPULLRANK.COM @ IPULLRANKYou’ll want a headless crawler and a text-based crawler to spin up pages and run tests on and a fixed list of pages that represent all of the public-facing routes. You’ll Also Need a Crawler https://github.com/yujiosaka/ headless-chrome-crawler https://github.com/antivanov/ js-crawler
  • 57. IPULLRANK.COM @ IPULLRANK Consider Making them Serverless Building your crawler with AWS Lambda, Azure Functions or Google Clouds Functions may be a great way to enjoy scale without having to manage additional servers.
  • 59. IPULLRANK.COM @ IPULLRANK Vini’s Blog Post on Serverless Architectures http://vvgomes.com/edas-and-serverless/
  • 60. IPULLRANK.COM @ IPULLRANK Tips On Testing Make only mission critical SEO tests potentially fail the build. Most SEO issues will be spotted in your integration tests. Include your SEO tests in every build. Keep your testing suites separate. Do all crawling in parallel.
  • 61. Things to Play With BecauseI never like to leaveyou without having something you can do
  • 62. IPULLRANK.COM @ IPULLRANK Check out these Video Tutorials on Jenkins Play with Jenkins: https://www.youtube.com/playlist?list=PLzvRQMJ9HDiSaisKr7OnM4Fl7JXCDDcmt
  • 63. IPULLRANK.COM @ IPULLRANK Kantu Browser Automation Tool See how Browser Automation tests work with a chrome extension: https://chrome.google.com/webstore/detail/kantu- browser-automation/gcbalfbdmfieckjlnblleoemohcganoc?hl=en
  • 64. IPULLRANK.COM @ IPULLRANK Codeception If you dabble in PHP or have a WP site you want to play around with, check out Codeception. https://codeception.com
  • 65. Wrapping Up Who am I and where am I from?
  • 66. IPULLRANK.COM @ IPULLRANK I’M #ZORASDAD First and foremost.
  • 67. IPULLRANK.COM @ IPULLRANK MY NAME IS MIKE KING Razorfish, Publicis Modem alum Full Stack Developer Full Stack Marketer Moz Associate
  • 68.
  • 69. IPULLRANK.COM @ IPULLRANK We Do These Things Machine Learning SEOContent Strategy Paid Media Measurement & Optimization Marketing Automation
  • 70. IPULLRANK.COM @ IPULLRANK Machine Learning for Marketers Guide skratchcoin.com http://ipullrank.com/machine-learning-guide/
  • 72.
  • 73.
  • 74. THANK YOU / Q&A MICHAEL KING FOUNDER & MANAGING DIRECTOR IPULLRANK mike@ipullrank.com DOWNLOAD THESE SLIDES: http://bit.ly/testeo