Index
A
- add_auth command / add_auth
- add_extra_header command / add_extra_header
- agent command / agent
- ANY / ANY
- ARGS / ARGS, ARGSKWARGS
- assertAlmostEqual / assertAlmostEqual
- assertEqual / assertionsassertFalseassertFalseassertEqual
- assertFalse / assertFalse, assertionsassertFalseassertFalseassertEqual
- assertions
- about / Assertions
- assertTrue / assertTrue
- assertFalse / assertFalse, assertionsassertFalseassertFalseassertEqual
- assertEqual / assertionsassertFalseassertFalseassertEqual
- assertNotEqual / assertNotEqual
- assertAlmostEqual / assertAlmostEqual
- assertNotAlmostEqual / assertNotAlmostEqual
- assertRaises / assertRaises, fail
- fail / fail
- assertNotAlmostEqual / assertNotAlmostEqual
- assertNotEqual / assertNotEqual
- assertRaises / assertRaises, fail
- assertTrue / assertTrue
- automated continuous integration
- about / Automated continuous integration
- Buildbot / Buildbot
- AVL tree
- about / Putting it in practice: an AVL tree
- english specification / English specification
- node data / Node data
- constructor / Constructor
- recalculate_height method / Recalculate height
- make_test_tree function / Recalculate height
- make deletable / Make deletable
- rotate functions / Rotation
- locate method / Locating a node
B
- back command / back
- Bazaar
- about / Bazaar
- Nose, installing as Bazaar post-commit hook / Time for action – installing Nose as a Bazaar post-commit hook, WBazaarNose, installing as Bazaar post-commit hookhat just happened?
- browser object, methods / Browser methods
- Buildbot
- about / Buildbot
- buildmaster mode / Buildbot
- buildslave mode / Buildbot
- using, with Bazaar / Time for action – using Buildbot with Bazaar, PopBuildbotusing, with Bazaar quiz – Buildbot
C
- clear_cookies command / clear_cookies
- clear_extra_headers command / clear_extra_headers
- clicked method / clicked
- code
- fixing / Fixing the code
- writing / Time for action – writing and debugging code
- debugging / Time for action – writing and debugging code
- code command / code
- code coverage
- about / Code coverage
- coverage.py / coverage.py
- complex expressions, Python Mocker
- mocking / Mocking complex expressions
- config command / config
- constructor, AVL tree / Constructor
- containers
- container[index].attribute.method() / Mocking complex expressions
- CONTAINS(some_object) / CONTAINS
- coverage.py
- about / coverage.py
- using / Time for action – using coverage.py, What just happened?
D
- Darcs
- about / Darcs
- Nose, installing as Darcs post-commit hook / Time for action – installing Nose as a Darcs post-record hook
- debug command / debug, echoTwill, commandsdebug commanddebug command
- design phase
- about / Design phase
- unit testing / Time for action – unit testing during design, Pop quiz – unit testing during design
- development phase
- development process, unit testing
- about / Unit testing throughout the development process
- design phase / Design phase
- development phase / Development phase, Back to the development phase
- feedback phase / Feedback phase
- maintenance phase / Maintenance phase
- reuse phase / Reuse phase
- docstrings
- doctests, embedding / Time for action – embedding a doctest in a docstring
- doctest
- about / Basic doctest
- creating / Time for action – creating and running your first doctest
- running / Time for action – creating and running your first doctest
- syntax / The syntax of doctests
- complex test, writing / Time for action – writing a more complex test
- exceptions, expecting / Expecting exceptions
- exception, expecting / Time for action – expecting an exception
- blank lines in output, expecting / Expecting blank lines in the output
- directives / Other doctest directives, Doctest directives
- execution scope / Execution scope, Execution scope
- embedding, in Python docstrings / Embedding doctests in Python docstrings
- embedding, in docstrings / Time for action – embedding a doctest in a docstring, What just happened?
- Noseand Nose / Nose and doctest
- fixture, creating / Time for action – creating a fixture for a doctest
- role, in integration test / Automation with doctest, unittest, and Nose
- doctest, controlling
- directives used / Using directives to control doctest
- ellipsis, using / Time for action – using ellipsis in tests, doctest, controllingellipsis, usingellipsisusing, in testsWhat just happened?
- whitespace, ignoring / Ignoring whitespace
- example, skipping / Skipping an example entirely, Timedoctest, controllingexample, skipping for action – skipping tests
- tests, skipping / Timedoctest, controllingexample, skipping for action – skipping tests, What just happened?
- doctest, directives / Other doctest directives
- doctests
- finding / Finding doctests
E
- easy_install tool / Time for action – installing Python Mocker
- echo command / echoTwill, commandsdebug commanddebug command
- ellipsis
- english specification, AVL tree / English specification
- evaluate method / Time for action – exploring the basics of Mocker , Mockerused, for creating mock objectsmock objectscreating, Mocker usedWhat just happened?
- exceptions
- raising / Raising exceptions
- exceptions, raising / Raising exceptions
- excludes method / Coding planner.data
- execution scope, doctest
- about / Execution scope
- exit command / exitTwill, commandsecho command
- expectation
- occurance, specifying / Specifying that an expectation should occur multiple times
- extend_with command / extend_with
F
- fail / fail
- feedback phase
- about / Feedback phase
- unit testing / Time for action – unit testing during feedback
- find command / find
- find_link method / find_link, twill.get_browser() methodsfind_link methodfind_link methodfollow_link
- follow command / follow
- follow_link method / twill.get_browser() methodsfind_link methodfind_link methodfollow_link
- formaction command / formaction
- formclear command / formclear
- formfile command / formfile, formformfile command value
- formvalue command / formformfile command value
- frob module / Execution scope
- func function / Specifying that an expectation should occur multiple times
- functions
- mocking / Mocking functions, Python Mockerfunctions, mockingfunctionsmockingMocking containers
- calling, mock used / Calling functions via a mock
G
- getinput command / getinput
- getpassword command / getpassword
- get_all_forms method / get_all_forms
- get_code method / get_code
- get_form method / get_form, twill.get_browser() methodsget_form methodget_form methodget_form_field
- get_form_field method / twill.get_browser() methodsget_form methodget_form methodget_form_field
- get_html method / get_html
- get_title method / get_title
- get_url method / get_url
- Git
- about / Git
- Nose, installing as Git post-commit hook / Time for action – installing Nose as a Git post-commit hook
- go command / go
- grouped_tests class / What just happened?
H
- help command / help
I
- im_func attribute / What just happened?
- IN(some_container) / IN
- info command / info
- installing
- Python Mocker / Installing Python Mocker, Time for action – installing Python Mocker
- integration testing
- about / Integration testing, Integration tests and system tests
- integration order, checking / Time for action – figuring out the order of integration
- integration, diagramming / Pop quiz – diagramming integration
- and unit testing, differences / Automation with doctest, unittest, and Nose
- doctest, role / Automation with doctest, unittest, and Nose
- writing, for time planner / Time for action – writing integration tests for the time planner
- writing / Pop quiz – writing integration tests
- IS / parameters, Python MockerKWARGS, passing as function parameterIS
- IS(some_object) / parameters, Python MockerKWARGS, passing as function parameterIS
- iterators
- returning / Returning iterators
K
- KWARGS / ARGSKWARGS
L
- lambda keyword / Calling functions via a mock
- library objects
- replacing, with mocks / Replacing library objects with mocks, Pop quiz – Mocker usage
- datetime, mocking / Have a go hero – mocking datetime
- load_cookies command / load_cookies
- load_object method / Writing persistence code
- locate method, AVL tree / Locating a node
M
- maintenance phase
- about / Maintenance phase
- unit testing / Time for action – unit testing during maintenance
- make_test_tree function / Recalculate height
- MATCH / MATCH
- MATCH(test_function) / MATCH
- Mercurial
- about / Mercurial
- Nose, installing as Mercurial post-commit hook / Time for action – installing Nose as a Mercurial post-commit hook
- Mocker
- Mocker.count / Specifying that an expectation should occur multiple times
- Mocker.generate / Returning iterators
- mocker.Mock object / Python Mockerfunctions, mockingfunctionsmockingMocking containers
- Mocker.result / Returning iterators
- Mocker.throw / Raising exceptions
- mocker.verify() / Mockerused, for creating mock objectsmock objectscreating, Mocker usedWhat just happened?
- MockerTestCase class / Integrating with Python Mocker
- mock method / Mockerused, for creating mock objectsmock objectscreating, Mocker usedWhat just happened?
- mock object
- about / The idea of a mock object
- passing, as self / Time for action – passing a mock object as self, What just happened?
- mock objects
- multiply.evaluate / Mockerused, for creating mock objectsmock objectscreating, Mocker usedWhat just happened?
N
- node data, AVL tree / Node data
- non-TestCase test classes / Nose's own testing framework, Time for action – using Nose-specific tests
- Nose
- about / What is Nose?
- installing / Installing Nose
- testing with / PopPython documentationURL quiz – testing with Nose
- and doctest / Nose and doctest
- and unittest / Nose and unittest, Time Noseand unittestunittestand Nosefor action – creating a module fixture
- testing framework / Nose's own testing framework
- specific tests, using / Time for action – using Nose-specific tests, What just happened?
- Nose and doctest
- about / Nose and doctest
- fixture, creating for doctest / Time for action – creating a fixture for a doctest
- Nose and unittest
- about / Nose and unittest
- module fixture, creating / Time Noseand unittestunittestand Nosefor action – creating a module fixture
- package fixture, creating / Time for action – creating a package fixture
- Nose search
- customizing / Customizing Nose's search
- nosetests / Installing Nose
- notfind command / notfind
O
- operations module / Time for action – exploring the basics of Mocker
P
- parameters, Python Mocker
- matching / Parameter matching
- ANY, passing as function parameter / ANY
- ARGS, passing as function parameter / ARGS
- KWARGS, passing as function parameter / ARGSKWARGS, parameters, Python MockerKWARGS, passing as function parameterIS
- IS, passing as function parameter / parameters, Python MockerKWARGS, passing as function parameterIS
- IN, passing as function parameter / IN
- CONTAINS, passing as function parameter / CONTAINS
- MATCH / MATCH
- persistence code
- writing / Writing persistence code
- persistence tests
- writing / Writing persistence tests
- planner.data
- coding / Coding planner.data
- planner.data classes / Writing initial unit tests
- Python docstrings
- doctests, embedding / Embedding doctests in Python docstrings
- Python documentation
- Python Mocker
- installing / Installing Python Mocker, Time for action – installing Python Mocker
- about / Python Mocker
- basics / Time for action – exploring the basics of Mocker
- functions, mocking / Mocking functions, Python Mockerfunctions, mockingfunctionsmockingMocking containers
- containers, mocking / Python Mockerfunctions, mockingfunctionsmockingMocking containers
- parameters, matching / Parameter matching
- complex expressions, mocking / Mocking complex expressions
- iterators, returning / Returning iterators
- exceptions, raising / Raising exceptions
- functions calling, mock used / Calling functions via a mock
- expectation occurance, specifying / Specifying that an expectation should occur multiple times
- library objects, replacing with mocks / Replacing library objects with mocks, Pop quiz – Mocker usage
- integrating with / Integrating with Python Mocker
R
- recalculate_height method / Recalculate height
- redirect_error command / redirect_error
- redirect_output command / redirect_output
- replay method / Mockerused, for creating mock objectsmock objectscreating, Mocker usedWhat just happened?
- reset_browser command / reset_browser
- restore method / Mockerused, for creating mock objectsmock objectscreating, Mocker usedWhat just happened?
- reuse phase
- about / Reuse phase
- unit testing / Time for action – unit testing during reuse, reuse phaseunit testingUnit testingduring reuse phaseWhat just happened?, Pop quiz – unit testing
- test-driven development / Have a go hero – test-driven development
- rotate functions, AVL tree / Rotation
- run command / run
- runfile command / runfile
S
- @staticmethod notation / Writing persistence code
- @ syntax / Writing persistence code
- save_cookies command / save_cookies
- save_html command / save_html
- schedules class / Coding planner.data
- self
- mock object, passing / Time for action – passing a mock object as self, What just happened?
- self.assertTrue(expression) / assertTrue
- self object
- mocking / Mocking self
- setglobal command / setglobal
- setglocal command / setlocal
- setup() function / Nose and doctest
- setUp() function / Nose and doctest
- setUp method / Time for action – testing database-backed units, Writing initial unit tests
- set_value method / Twillbrowser object, accessingWhat just happened?
- show command / show
- showforms command / showforms
- showhistory command / showhistory
- showlinks command / showlinks
- show_cookies command / show_cookies
- show_extra_headers command / show_extra_headers
- Skip list / Have a go hero
- some_container / IN
- specification
- writing / Writing the specification
- staticmethod function / Writing persistence code
- store_object method / Writing persistence code
- submit command / submit
- submit method / submit
- Subversion
- Nose, installing as Subversion post-commit hook / Time for action – installing Nose as a Subversion post-commit hook, WSubversionNose, installing as Subversion post-commit hookhat just happened?
- system testing
- about / System testing
- and integration testing, differences / Automation with doctest, unittest, and Nose
T
- teardown() function / Nose and doctest
- tearDown() function / Nose and doctest
- tearDown method / Time for action – testing database-backed units, What just happened?
- testable.method3(target, 12) / What just happened?
- testable class / What just happened?
- TestCase class / Time for action – testing database-backed units, What just happened?
- test fixtures
- about / Test fixtures
- database-backed units, testing / Time for action – testing database-backed units
- file path, abstracting / Have a go hero – file path abstraction
- testing
- uses / How can testing help?
- types / Types of testing
- unit testing / Unit testing
- integration testing / Integration testing
- system testing / System testing
- tests, organizing
- about / Organizing tests
- from previous chapters / Time for action – organizing tests from previous chapters, What just happened?
- test_assertAlmostEqual method / assertAlmostEqual
- test_assertEqual method / assertAlmostEqual
- test_basic test / Writing persistence tests
- test_excludes method / Writing initial unit tests
- test_function / MATCH
- test_multiple_tags test / Writing persistence tests
- test_valid method / Writing initial unit tests
- tidy_ok command / tidy_ok
- time / Replacing library objects with mocks
- time.time / The idea of a mock object
- title command / title
- Twill
- installing / Installing Twill
- language, exploring / Exploring the Twill language
- web, browsing / Time for action – browsing the web with Twill
- scripting / Time for action – Twill scripting, What just happened?
- commands / Twill commands
- operations, integrating into unittest tests / Integrating Twill operations into unittest tests, Twillbrowser object, accessingWhat just happened?
- browser object, accessing / Time for action – using Twill's browser object, Twillbrowser object, accessingWhat just happened?
- browser object, methods / Browser methods
- Twill, commands
- help command / help
- setglobal command / setglobal
- setlocal command / setlocal
- add_auth command / add_auth
- add_extra_header command / add_extra_header
- clear_extra_headers command / clear_extra_headers
- show_extra_headers command / show_extra_headers
- agent command / agent
- back command / back
- clear_cookies command / clear_cookies
- code command / code
- config command / config
- debug command / debug, echoTwill, commandsdebug commanddebug command
- echo command / echoTwill, commandsdebug commanddebug command, exitTwill, commandsecho command
- exit command / exitTwill, commandsecho command
- extend_with command / extend_with
- find command / find
- notfind command / notfind
- follow command / follow
- formaction command / formaction
- formclear command / formclear
- formfile command / formfile
- formvalue command / formformfile command value
- getinput command / getinput
- getpassword command / getpassword
- go command / go
- info command / info
- save_cookies command / save_cookies
- load_cookies command / load_cookies
- show_cookies command / show_cookies
- redirect_error command / redirect_error
- redirect_output command / redirect_output
- reset_error command / reset_error
- reset_output command / reset_output
- reload command / reload
- reset_browser command / reset_browser
- run command / run
- runfile command / runfile
- save_html command / save_html
- show command / show
- showforms command / showforms
- showhistory command / showhistory
- showlinks command / showlinks
- sleep command / sleep
- submit command / submit
- tidy_ok command / tidy_ok
- title command / title
- url command / url
- twill.get_browser()
- methods / Browser methods
- twill.get_browser() methods
- get_code method / get_code
- get_html method / get_html
- get_title method / get_title
- get_url method / get_url
- find_link method / find_link, twill.get_browser() methodsfind_link methodfind_link methodfollow_link
- follow_link method / twill.get_browser() methodsfind_link methodfind_link methodfollow_link
- get_all_forms method / get_all_forms
- get_form method / get_form, twill.get_browser() methodsget_form methodget_form methodget_form_field
- get_form_field method / twill.get_browser() methodsget_form methodget_form methodget_form_field
- clicked method / clicked
- submit method / submit
- Twill language
- exploring / Exploring the Twill language
- web, browsing / Time for action – browsing the web with Twill
- Twill, scripting / Time for action – Twill scripting, What just happened?
- Twill scripts
- files, running / Time for action – running Twill script files
- strings, running / Time for action – running Twill script strings, Twill scriptsstrings, runningWhat just happened?
U
- unittest
- unit testing
- about / Unit testing
- and integration testing, differences / Automation with doctest, unittest, and Nose
- Unit testing
- about / What is Unit testing and what it is not?
- units, identifying / Time for action – identifying units
- during design phase / Time for action – unit testing during design, Pop quiz – unit testing during design
- during development phase / Development phase, Time for action – unit testing during development, Time for action – unit testing during development... again, development phaseunit testingUnit testingduring development phaseWhat just happened?
- during feedback phase / Time for action – unit testing during feedback
- during maintenance phase / Time for action – unit testing during maintenance
- during reuse phase / Time for action – unit testing during reuse, reuse phaseunit testingUnit testingduring reuse phaseWhat just happened?, Pop quiz – unit testing
- unit tests
- writing / Writing initial unit tests
- specifications / Time for action – nailing down the specification with unit tests
V
- version control systems
- about / Version control hooks
- Bazaar / Bazaar
- Mercurial / Mercurial
- Git / Git
- Darcs / Darcs
- Subversion / Subversion
W
- when parameter / What just happened?