Course Outline: QA102-outline.doc
Classs One – Python Fundamentals
Description: This lesson introduces the core data types and flow structures of the Python language.
Slides: QA102-01.pdf
Exercise: QA102-assignment-1
Exercise Skeleton: QA102-assignment-1-skel.py*
Exercise Solution (one of many): QA102-assignment-1_3x.py*
Classs Two – Object, Exceptions, Files and Web Servers
Description: We continue exploring python by introducing classes and objects into the mix. We also learn how to handle exceptions, manipulate files and how to script talking to a web server.
Slides: QA102-02.pdf*
Exercise: QA102-assignment-2.txt*
Exercise Skeleton: QA102-assignment-2-skel.py*
Class Three – Databases, Shell Access, and a bunch of other tricks
Description: We wrap up our introduction to python with how to test a database, use console applications interactively, deal with time related tests, basic XML manipulation, Selenium RC and language iependent implementations.
Slides: QA102-03.pdf*
Exercise: QA102-assignment-3.doc*
Exercise Skeleton: assignment3-skel.py*
Class Four – Perl, Batch and Bash
Description: There are other languages aside from Python in use in the real world. In this class students are shown how the concepts learned in Python apply to Perl, Batch and Bash programming.
Slides: QA102-04.ppt*
Exercise: Coming Soon
* In order to get the current copy of the document, download the HEAD version (at the top of the page, just below ‘Parent Directory’)
Resources
Books
- Programming Python (3rd ed) by Lutz
- Learning the bash shell by Newham
- Learning Perl by Schwartz, Pheonix & Joy
Web Sites
- Python Library Reference
- Python Global Module Index
- Software Carpentry – “..an intensive introduction to basic software development practices for scientists and engineers…” (but it can apply to testers as well)
- PEP-249 – Python Database API
- sqlite3 – Built-in module for accessing SQLite
- Windows command line applications
In-class Logs
Downloads
- Python
- Python for Windows Extenstion – Gives you access to the Windows API, but more importantly the PythonWin editor
- SQLite – an embedded database that is great for learning with
- pysqlite – Python module for accessing SQLite databases
- Northwind – a SQLite port of Microsoft’s popular Northwind sample database
- Selenium RC – The Python bindings for Selenium
- ActivePerl – Windows installer of Perl; most unix systems come with it by default