Index
A
- acceptAlert method / Writing Selenium tests
- Android Development Tools (ADT) / Eclipse PDT
- assertion
- about / What is a unit test?
- assertTrue() / Assertions
- assertFalse() / Assertions
- assertEquals() / Assertions
- assertSame() / Assertions
- assertNull() / Assertions
- assertEmpty() / Assertions
- attribute method / Writing Selenium tests
B
- backward method / Writing Selenium tests
- BDD
- about / Behavior-driven development, Understanding BDD
- SpecBDD / Understanding BDD
- StoryBDD / Understanding BDD
- testing, with PHPSpec / Testing with PHPSpec, Using PHPSpec
- functional testing, Behat used / Functional testing with Behat, Installing Behat, Using Behat
- Behat
- URL / Functional testing with Behat
- used, for functional testing / Functional testing with Behat
- installing / Installing Behat
- using / Using Behat
- documentation, URL / Using Behat
- black box testing approaches
- selenium tests / Black box testing
- integration tests / Black box testing
- database-focused integration tests / Black box testing
- isolation / Black box testing
- bootstrap
- using / Using the bootstrap file
- byClassName selector / Writing Selenium tests
- byCssSelector selector / Writing Selenium tests
- byId selector / Writing Selenium tests
- byLinkText selector / Writing Selenium tests
- byName selector / Writing Selenium tests
- byTag selector / Writing Selenium tests
- byXPath() selector / Writing Selenium tests
C
- Change Risk Anti-Patterns (CRAP) index / Code coverage analysis
- checkPage method / Writing Selenium tests
- clear method / Writing Selenium tests
- click method / Writing Selenium tests
- clickOnElement method / Writing Selenium tests
- close method / Writing Selenium tests
- code coverage
- analyzing / Code coverage analysis
- configuring / Configuring the code coverage
- code coverage command-line switches
- --coverage-clover / Code coverage
- --coverage-html / Code coverage
- --coverage-php / Code coverage
- --coverage-text / Code coverage
- command-line switches
- about / Command-line switches
- command-line switches, code coverage
- --coverage-clover / Code coverage
- --coverage-html / Code coverage
- --coverage-php / Code coverage
- --coverage-text / Code coverage
- command-line switches, configuration options
- --strict / Configuration options
- --verbose / Configuration options
- --debug / Configuration options
- --process-isolation / Configuration options
- --no-globals-backup / Configuration options
- --static-backup / Configuration options
- --bootstrap / Configuration options
- --configuration / Configuration options
- --no-configuration / Configuration options
- --include-path / Configuration options
- --d key=value / Configuration options
- command-line switches, logging results
- --log-junit / Logging results
- --log-json / Logging results
- command-line switches, stopping test execution
- --stop-on-error / When to stop the test execution
- --stop-on-failure / When to stop the test execution
- --stop-on-skipped / When to stop the test execution
- --stop-on-incomplete / When to stop the test execution
- command-line switches, tests
- --filter / Including and excluding tests from the execution
- --testsuite / Including and excluding tests from the execution
- --group / Including and excluding tests from the execution
- --exclude-group / Including and excluding tests from the execution
- --list-groups / Including and excluding tests from the execution
- --test-suffix / Including and excluding tests from the execution
- Composer
- about / Composer – the dependency manager for PHP
- installing / Installing Composer
- Composer installation
- local installation / Local installation
- system-wide installation / System-wide installation
- Composite dataset / Datasets
- configuration options switches
- --strict / Configuration options
- --verbose / Configuration options
- --debug / Configuration options
- --process-isolation / Configuration options
- --no-globals-backup / Configuration options
- --static-backup / Configuration options
- --bootstrap / Configuration options
- --configuration / Configuration options
- --no-configuration / Configuration options
- --include-path / Configuration options
- --d key=value / Configuration options
- controllers
- testing / Testing controllers
- createPassword() function / Detecting dependencies
- createUser() function / Detecting dependencies
- css method / Writing Selenium tests
- CSV dataset / Datasets
- currentScreenshot method / Writing Selenium tests
D
- database
- choosing / Which database to use
- testing / Tests for a database
- database-focused integration tests
- about / Black box testing
- Database Abstraction Layer (DAL) / Doctrine 2 ORM and database testing
- data provider
- about / Data providers
- using / Data providers
- Dataset filter / Datasets
- datasets
- DBUnit
- about / DBUnit
- installing / Installing DBUnit
- database test cases / Database test cases
- datasets / Datasets
- using / Using DBUnit
- dependencies
- detecting / Detecting dependencies
- handling / Handling dependencies
- dismissAlert method / Writing Selenium tests
- displayed method / Writing Selenium tests
- Doctrine 2 ORM
- about / Doctrine 2 ORM and database testing
- and database, testing / Doctrine 2 ORM and database testing
- working with / Doctrine 2 ORM and database testing
E
- <env> element / The PHPUnit XML configuration file
- Eclipse PDT
- about / Eclipse PDT
- MakeGood plugin / Eclipse PDT, Installing MakeGood
- FirstTest.php, creating / Creating your FirstTest
- enabled method / Writing Selenium tests
- equals method / Writing Selenium tests
- error
- handling, set_exception_handler() function used / Testing errors and exceptions
- handling, set_error_handler() function used / Testing errors and exceptions
- exceptions
- handling / Exceptions are expected
- and errors, testing / Testing errors and exceptions
- execute method / Writing Selenium tests
- expectations
- about / Using mocks and expectations
- basic structure elements / Using mocks and expectations
- using / Using mocks and expectations
- expects element
- about / Using mocks and expectations
- expects element methods
- any() / Using mocks and expectations
- never() / Using mocks and expectations
- atLeastOnce() / Using mocks and expectations
- once() / Using mocks and expectations
- exactly($count) / Using mocks and expectations
- at($index) / Using mocks and expectations
- Explorer tool
- URL / Testing the Facebook API
F
- Facebook API
- testing / Testing the Facebook API
- Facebook developer website
- URL / Testing the Facebook API
- Facebook PHP SDK
- URL / Testing the Facebook API
- adding / Testing the Facebook API
- fake test double
- using / Using fake
- flat XML dataset / Datasets
- forward method / Writing Selenium tests
- frame method / Writing Selenium tests
- functions
- testing / Testing functions
- func_get_args() function / Using Reflection
G
- getAccessToken method / Testing the Facebook API
- getConnection() method / Database test cases, Using DBUnit
- getDataSet() method / Database test cases, Using DBUnit
- getMock() method parameters
- string $originalClassName / Creating test doubles
- array $methods / Creating test doubles
- array $arguments / Creating test doubles
- string $mockClassName / Creating test doubles
- boolean $callOriginalConstructor / Creating test doubles
- boolean $callOriginalClone / Creating test doubles
- boolean $callAutoload / Creating test doubles
- boolean $cloneArguments / Creating test doubles
- boolean $callOriginalMethods / Creating test doubles
- Object $proxyTarget / Creating test doubles
- getMockBuilder() method / Creating test doubles
- getTransaction method / Testing the PayPal API
- get_currentuserinfo() function / The Patchwork library
- Gherkin
- URL / Using Behat
- global state
- about / Global state
- problems / Global state
- global variables, modifying / Global state
- global variables, using / Global state
- group tests
- configuring / Groups
I
- <includePath> element / The PHPUnit XML configuration file
- <ini> element / The PHPUnit XML configuration file
- IDEs, PHPUnit support
- about / IDEs and PHPUnit
- NetBeans / NetBeans
- Zend Studio / Zend Studio
- Eclipse PDT / Eclipse PDT, Installing MakeGood, Creating your FirstTest
- PhpStorm / PhpStorm
- integration test
- example / An example of integration testing
- integration tests
- about / Black box testing
- Invoice class / Tests for a database
- InvoiceManager class
- about / Tests for a database
- implementation / Tests for a database
- testing / Tests for a database
- isInputValid() function / Detecting dependencies
- isolation
- about / Black box testing
- is_user_logged_in() function / The Patchwork library
J
- Jenkins CI job features
- Source Code Management / Source Code Management
- Build Triggers / Build Triggers
- Build / Build
- post-build actions / Post-build Actions
- Jenkins CI server
- about / Using the Jenkins CI server
- disadvantage / Using the Jenkins CI server
- advantage / Using the Jenkins CI server
- URL / Installation
- installing / Installation
- plugins / Installation
- using / Usage, Source Code Management, Build
- job, creating / Creating a job
- using, results / Results
- Jenkins plugins
- Email-ext / Installation
- Git/Subversion / Installation
- xUnit / Installation
- Clover PHP / Installation
K
- keys method / Writing Selenium tests
L
- legacy code
- spaghetti code, testing / Testing spaghetti code
- dependencies, handling / Handling dependencies
- testing, Patchwork library used / The Patchwork library
- testing, vfsStream library used / The vfsStream library
- testing, runkit PHP extension used / The runkit PHP extension
- loadInvoice() method / Tests for a database
- location method / Writing Selenium tests
M
- Mail class / Handling dependencies
- MakeGood
- URL / Eclipse PDT
- installing / Installing MakeGood
- makePayment method / Testing the PayPal API
- method element
- about / Using mocks and expectations
- methods
- testing / Testing methods
- Mockery
- about / Understanding Mockery
- installation methods / Installation methods
- comparing, to PHPUnit / Comparing Mockery to PHPUnit
- using / How to use Mockery
- using, example / How to use Mockery
- URL / PHPUnit extensions
- Mockery installation methods
- URL / Installation methods
- mock test double
- using / Using mocks and expectations
- moveto method / Writing Selenium tests
- MVC
- application architecture / The MVC application architecture and tests
- unit testing / The MVC application architecture and tests
- controllers, testing / Testing controllers
- myCallback() method / Using mocks and expectations
- MySQL Workbench tool
- URL / Tests for a database
- MySQL XML dataset / Datasets
N
O
- ObjectBehavior class / Using PHPSpec
- onNotSuccessfulTest method / Writing Selenium tests
- OOP
- about / Testing methods
- ORM
- OrmTestCase class
P
- <phpunit> element
- attributes / The PHPUnit XML configuration file
- <includePath> element / The PHPUnit XML configuration file
- <ini> element / The PHPUnit XML configuration file
- <env> element / The PHPUnit XML configuration file
- <post> element / The PHPUnit XML configuration file
- <post> element / The PHPUnit XML configuration file
- Patchwork library
- about / The Patchwork library
- URL / The Patchwork library, PHPUnit extensions
- used, for testing legacy code / The Patchwork library
- PayPal API
- testing / Testing the PayPal API
- PayPal developer website
- URL / Testing the PayPal API
- PDT
- about / Eclipse PDT
- URL / Eclipse PDT
- PEAR
- installing / Installing PEAR
- PECL tool
- URL / The runkit PHP extension
- Phactory
- URL / PHPUnit extensions
- Phing
- URL / Usage
- PHP
- running, from command line / Running PHP from the command line
- PHP-SeleniumClient
- about / PHP-SeleniumClient
- installing / PHP-SeleniumClient
- using / PHP-SeleniumClient
- PHP CLI
- PHP, running from command line / Running PHP from the command line
- phpinfo() function / Running PHP from the command line
- PHPSpec
- URL / Testing with PHPSpec
- testing with / Testing with PHPSpec
- installing / Installing PHPSpec
- using / Using PHPSpec
- PhpStorm
- PHPUnit
- URL / Requirements
- Mockery, comparing to / Comparing Mockery to PHPUnit
- PHPUnit installation
- requirements / Requirements
- Composer, used / Installation, System-wide installation
- PEAR, used / Installing PEAR, PHPUnit installation
- Linux package installation / Installing the Linux package
- manual installation / Manual installation
- testing / Testing the installation
- testing, Xdebug used / Xdebug, Installing Xdebug
- PHPUnit Selenium2TestCase
- about / PHPUnit Selenium2TestCase
- PHPUnit Selenium extension
- installing / The PHPUnit Selenium extension
- PHPUnit test
- anatomy / Anatomy of a PHPUnit test
- methods, defining / Defining test methods
- functions, testing / Testing functions
- methods, testing / Testing methods
- PHPUnit third-party extensions
- about / PHPUnit extensions
- Mockery / PHPUnit extensions
- Prophecy / PHPUnit extensions
- TestIt library / PHPUnit extensions
- Patchwork / PHPUnit extensions
- PHPUnit XML configuration file
- about / The PHPUnit XML configuration file
- example code / The PHPUnit XML configuration file
- attributes / The PHPUnit XML configuration file
- <php> elements / The PHPUnit XML configuration file
- test listeners / Test listeners
- code coverage configuration / Configuring the code coverage
- Prophecy
- URL / PHPUnit extensions
- providerArray() method / Data providers
R
- raiseInvoice() method / Tests for a database
- Reflection
- about / Using Reflection
- using / Using Reflection, Handling dependencies
- ReflectionMethod class / Using Reflection
- refresh method / Writing Selenium tests
- Replacement dataset / Datasets
- result property / Before and after each test method
- results logging command-line switches
- --log-junit / Logging results
- --log-json / Logging results
- returnValueMap() method / Using mocks and expectations
- RPC architecture
- runkit PHP extension
- used, for testing legacy code / The runkit PHP extension
S
- scoreGoal() method / Using PHPSpec
- search method
- used, for finding PHPUnit information / An example of integration testing
- selected method / Writing Selenium tests
- selectors
- byId / Writing Selenium tests
- byClassName / Writing Selenium tests
- byCssSelector / Writing Selenium tests
- byLinkText / Writing Selenium tests
- byName / Writing Selenium tests
- byTag / Writing Selenium tests
- byXPath() / Writing Selenium tests
- Selenium
- testing, in browser / Testing in the browser
- Selenium IDE
- installing / The Selenium IDE
- URL / The Selenium IDE
- Selenium installation
- Selenium IDE / The Selenium IDE
- Selenium Server, installing / The Selenium Server, Installing drivers
- PHPUnit Selenium extension / The PHPUnit Selenium extension
- Selenium Server
- installing / The Selenium Server
- URL / The Selenium Server
- drivers, installing / Installing drivers
- Selenium tests
- recording / Recording Selenium tests
- PHPUnit Selenium2TestCase / PHPUnit Selenium2TestCase
- writing / Writing Selenium tests, PHP-SeleniumClient
- organizing / Organizing Selenium tests
- selenium tests
- about / Black box testing
- sendActivationEmail() function / Detecting dependencies
- service-oriented architecture
- setBrowser method call
- about / Writing Selenium tests
- setBrowserUrl method call
- about / Writing Selenium tests
- setHost method call
- about / Writing Selenium tests
- setPort method call
- about / Writing Selenium tests
- setUp() method
- setUpBeforeClass() method
- used, for setting test fixtures / Before and after each test suite class
- size method / Writing Selenium tests
- SoapUI
- SomeListener class / Test listeners
- source method / Writing Selenium tests
- spaghetti code
- about / Testing spaghetti code
- testing / Testing spaghetti code
- black box testing / Black box testing
- Reflection, using / Using Reflection
- SpecBDD
- about / Understanding BDD
- Stack Overflow
- StackOverflow class
- about / An example of integration testing
- __constructor method / An example of integration testing
- buildUrl method / An example of integration testing
- search method / An example of integration testing
- storeInvoice() method / Tests for a database
- StoryBDD
- about / Understanding BDD
- stub test double
- using / Using stubs
- stubTwitter method / Testing the Twitter API
- submit method / Writing Selenium tests
- switch
- about / Command-line switches
T
- TeamSpec class / Using PHPSpec
- tearDown() method
- tearDownAfterClass() method
- used, for setting test fixtures / Before and after each test suite class
- test command-line switches
- --filter / Including and excluding tests from the execution
- --testsuite / Including and excluding tests from the execution
- --group / Including and excluding tests from the execution
- --exclude-group / Including and excluding tests from the execution
- --list-groups / Including and excluding tests from the execution
- --test-suffix / Including and excluding tests from the execution
- test dependencies
- about / Test dependencies
- test doubles
- creating / Creating test doubles
- using, example / Test doubles in action
- test fixture options
- before and after each test / Before and after each test method
- before and after each test suite class / Before and after each test suite class
- test fixtures
- options / Test fixtures
- setting, tearDownAfterClass() method used / Before and after each test suite class
- setting, setUpBeforeClass() method used / Before and after each test suite class
- TestIt library
- URL / PHPUnit extensions
- test listeners
- creating / Test listeners
- test methods
- defining / Defining test methods
- testCompareArrays() method / Testing methods
- testFindSum() method / Testing methods
- test proxies
- about / Test proxies
- using / Test proxies
- test requirements
- PHP / Test statuses
- PHPUnit / Test statuses
- function / Test statuses
- extension / Test statuses
- test results
- processing / Processing test results
- test status / Test statuses
- tests
- running / Running tests
- command-line switches / Command-line switches, Code coverage, When to stop the test execution, Configuration options
- storing, locations / Where to store tests
- organizing, test suite used / Test suites
- groups / Groups
- testSearch method / Testing the Twitter API
- testSendrequest() method / Test proxies
- test status
- about / Test statuses
- test suite
- used, for organizing tests / Test suites
- TestTransaction class / Test proxies
- text method / Writing Selenium tests
- title method / Writing Selenium tests
- transactionId variable / Testing the PayPal API
- TransactionMockTest class / How to use Mockery
- Travis CI server
- about / Using a Travis CI hosted service
- setting up / Setting up Travis CI
- URL / Setting up Travis CI
- sample project, URL / Setting up Travis CI
- using / Using Travis CI
- Travis documentation for PHP
- URL / Using Travis CI
- Travis project
- configuring / Setting up Travis CI
- Twitter API
- testing / Testing the Twitter API
- Twitter developer website
- URL / Testing the Twitter API
U
- unit test
- about / What is a unit test?
- importance / The importance of unit testing
- generic rules / What makes a good test?
- unit testing
- about / Understanding unit testing
- possible scenarios, testing / Testing all possible scenarios
- unit testing alternatives
- about / Unit testing alternatives
- SimpleTest / Unit testing alternatives
- Lime / Unit testing alternatives
- SnapTest / Unit testing alternatives
- Testilence / Unit testing alternatives
- Atoum / Unit testing alternatives
- url method / Writing Selenium tests
- User class
- dependency, detecting / Detecting dependencies
- UserManager class
- sendActivationEmail() method / Handling dependencies
- createUser() method / Handling dependencies
- tests / Handling dependencies
V
- Vagrant tool
- URL / The runkit PHP extension
- value method / Writing Selenium tests
- verifyPassword() function / Detecting dependencies
- vfsStream library
- used, for testing legacy code / The vfsStream library
W
- Web Services Description Language (WSDL) / Testing the service-oriented architecture
- will element
- about / Using mocks and expectations
- window method / Writing Selenium tests
- with element
- about / Using mocks and expectations
- WordPress
- URL / Handling dependencies
- wp_cache_get() function / The runkit PHP extension
- wp_get_current_user() function / The Patchwork library
X
- Xdebug
- about / Xdebug
- features / Xdebug
- installing / Installing Xdebug
- URL / Installing Xdebug
- Xdebug features
- Xinc PHP CI server
- about / Using the Xinc PHP CI server
- advantage / Using the Xinc PHP CI server
- disadvantage / Using the Xinc PHP CI server
- installing / Installation
- using / Usage
- XML dataset / Datasets
Y
- YAML dataset / Datasets
Z
- ZendService_Twitter
- URL / Testing the Twitter API
- Zend Studio
- about / Zend Studio
- URL / Zend Studio
- configuring / Zend Studio
- using / Zend Studio