"Many, perhaps most, software applications today are written as web-based applications to be run in an Internet browser. The effectiveness of testing these applications varies widely among companies and organizations. In an era of highly interactive and responsive software processes where many organizations are using some form of Agile methodology, test automation is frequently becoming a requirement for software projects. Test automation is often the answer. Test automation means using a software tool to run repeatable tests against the application to be tested. For regression testing this provides that responsiveness."
Create Our Own Test
Class inherits from unittest:
create your webdriver
your testing workhorse
You can create page objects.
Creating reusable code that can be shared across multiple test cases
Reducing the amount of duplicated code
If the user interface changes, the fix needs changes in only one place