Applying the Pillars of

Object-Oriented Programming to

Test Automation

Angie Jones

http://angiejones.tech

@techgirl1908

Senior Automation Engineer

Twitter, San Francisco, CA, USA

Theory vs. Application

@techgirl1908

@techgirl1908


ENCAPSULATION
 

INHERITANCE

POLYMORPHISM
 

ABSTRACTION
 

Pillars of OOP

@techgirl1908

Encapsulation

hide the data

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

Inheritance

extend data and behaviors

@techgirl1908

@techgirl1908

@techgirl1908

Employee employee = new Employee();

employee.setName("Angie Jones");

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

More Inheritance

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

@techgirl1908

Polymorphism

the ability to take multiple forms

fetch is fun!

woof

here's your dog food

 

woof

here's your dog food

 

meow

here's your cat food

 

@techgirl1908

ProfilePage

MyProfilePage

UserProfilePage

@techgirl1908

@techgirl1908

?

?

@techgirl1908

@techgirl1908

Abstraction

provides templates to be implemented

@techgirl1908

@techgirl1908

@techgirl1908

Questions?

@techgirl1908

See ya!

Angie Jones

http://angiejones.tech

@techgirl1908

Senior Automation Engineer

Twitter, San Francisco, CA, USA