Building websites like applications means bringing more attention to testing. From unit tests early on to load and regression testing later in the game, the primary purpose of testing is to detect software failures so that defects are discovered and corrected before they make it to the customer. Depending on your size, different testing strategies and things like automation may or may not be necessary. I'll cover some great free tools, some simple command line scripts as well as some commercial choices for the various types of testing.
4. Unit Testing
Test driven development (TDD) encourages
simple designs and inspires confidence.
Tests define:
• The expected behavior
• What you want to achieve
• What your program should do
8. Benefits
There are numerous advantages:
• You have an execution environment for running
your code
• You have a place to document business rules
• Dramatically simplifies refactoring
• Forces you to write smaller, less complex functions
and methods
9. Benefits
Write tests for failing code.
• Problem is replicated and clearly described
• Fix is proven by demonstration
11. Tools
Unit testing frameworks are available in almost any
language:
• PHP’s PHPUnit
• Java’s JUnit
• Ruby’s Test::Unit
• iOS / Objective C (native)
• Python’s unittest
• .NET’s xUnit
12. Regression Testing
Automated scripts or playback of recordings.
• Verify changes don’t introduce unexpected faults
• Monitor performance changes
• Checks correctness of the program and its output
• Interacts with the program as a user would
13. Selenium
seleniumhq.org
Open Source
• Clicks links
• Fills out forms
• Scans for content
• Runs in-browser
• Interacts as a user would
• WebDriver Compatible
20. Usability Testing
Evaluate your product using real users to:
• Discover errors
• Identify areas for improvement
• Efficiency
• Accuracy
• Recall
• Emotional Response
21. Hallway Testing
Participants chosen
from a random pool.
Can be cost prohibitive
for smaller companies.
22. Click Tracking
labsmedia.com
Price: Free
ClickHeat is a visual
heatmap of clicks on a
web page.
23. Crowd Sourcing
conceptfeedback.com
Price: Free
Submit your ideas,
designs, products to an
expert community for
feedback.
24. Five Second Test
fivesecondtest.com
Price: Free
Helps you fine tune
your landing pages and
calls to action by
analyzing the most
prominent elements of
your design.
25. Cross Browser Testing
browserling.com
Free Version (5 minute sessions)
• Driven by HTML5 Canvas
• Multiple Browser Support
• Reverse Proxy Support
• Automated Regression Support
26. Device / Mobile Testing
Emulators and simulators are your best bet.
Opera mini, blackberry, Android, iPhone, simulate headers, etc.
27. Lower Environments
turnkeylinux.org
Free
• Rapidly deploy applications
• Download or on the cloud
• Latest versions