Мне не известен учебник. Но я могу поделиться с вами своим мнением из того, что накопил за многие годы.
Написание UnitTests предназначено для тестирования функциональности приложения. Таким образом, допустим, вы пишете основной класс, который имеет 3 функции, getData setData и displaydata (просто мысли в слух). Вы хотите написать юнит-кейс, который устанавливает данные (вы передаете хорошие и плохие данные, потому что важно знать, что они ошибаются правильно). Затем вы проверяете setData, либо через вызов DB, либо с помощью того же класса, используя getData, и вы пытаетесь получить данные с плохими данными, хорошими данными и т.д. Убедитесь, что все это обрабатывается правильно. Затем вы записываете данные для отображения и повторяете все сначала.
По сути, вы хотите проверить, что основной класс (или классы приложений) правильно обрабатывает данные (ошибки / хорошие данные и т.д.). Если все тесты окажутся чистыми, то вы сможете перейти к написанию тестов для других классов, использующих этот основной класс. Но нет смысла двигаться дальше, если ваш основной класс не проходит/не проходил тесты, иначе отладка превратится в кошмар. Я никогда не изучал юнит-тесты PHP, я просто писал все свои тесты, учитывая сценарии использования (Use Case Scenarios, IE: Как функции будут использоваться / реализованы). Это общий способ думать, для чего писать тест-кейс.
Надеюсь, это поможет.
В качестве вступления я написал презентацию, посвященную именно этому. Надеюсь, она работает без заметок докладчика:
http://www.scribd.com/full/34941838?access_key=key-1u9c5kmupy1889f4o6tv
(на самом деле это еще ранняя редакция, любой отзыв, который вы можете мне дать, будет ценен :)
Она в значительной степени заимствована из книги "xUnit Test Patterns: Refactoring Test Code" http://rcm.amazon.com/e/cm?lt1=_blank&bc1=000000&IS2=1&bg1=FFFFFF&fc1=000000&lc1=0000FF&t=alex010-20&o=1&p=8&l=as1&m=amazon&f=ifr&md=10FE9736YVPPT7A0FBG2&asins=0131495054"
Также посмотрите презентации Sebastian Bergmann создателя PHPUnit http://talks.php.net/index.php/Testing
Если вы можете позволить себе эту книгу, я бы рекомендовал ее как книгу номер один для изучения моделей мышления юнит-тестирования.
Наконец (или, может быть, как вариант) ваши следующие шаги по достижению "профессиональных стандартов" в QA будут полезны, если вы пройдете через
Американское общество качества: http://www.asq.org/
Приобретя членство (примерно от 50 до 150 долларов США), вы можете записаться на курсы и получить сертификат QA.
Более того, материалы их учебного курса (стоимость неизвестна) могут быть отправлены на ваше рабочее место, чтобы вы могли самостоятельно заниматься, написать тест, получить сертификат и обучать других специалистов QA.
Очень надеюсь, что это поможет. - Alex
Было легко начать руководство по модульному тестированию с помощью php, которое использует SimpleTest вместо PHPUnit: http://net.tutsplus.com/tutorials/php/the-newbies-guide-to-test-driven -development /