Generate mocks and stubs with PHPUnit

Very interesting presentation of Juan Treminio about unit tests and PHPUnit: PDF. He explain how to generate mocks and stubs using the MockBuilder:

  • Generate a basic mock, without call setMethods() method:
    * All methods in mocked object are stubs
    * Return null
    * Methods easily overridable

    $payment = $this->getMockBuilder('AuthorizeNetAIM')
                    ->getMock();
  • Pass an empty array
    * Same as if not calling setMethods()
    * All methods in mocked object are stubs
    * Return null
    * Methods easily overridable

    $payment = $this->getMockBuilder('AuthorizeNetAIM')
                    ->setMethods(array())
                    ->getMock();
  • Pass null
    * All methods in mocked object are mocks
    * Run actual code in method
    * Not overridable

    $payment = $this->getMockBuilder('AuthorizeNetAIM')
                    ->setMethods(null)
                    ->getMock();
  • Pass an array with method names
    –Methods identified are stubs
    • Return null
    • Easily overridable
    –Methods *not* identified are mocks
    • Actual code is ran
    • Unable to override

    $payment = $this->getMockBuilder('Payment')
                    ->setMethods(
                        array('authorizeAndCapture',)
                    )
                    ->getMock();

Source – Juan Treminio presentation
Source – Juan Treminio blog

2 comentarios en “Generate mocks and stubs with PHPUnit

  1. mira tengo este problemon alguien de mi familia ovecino insite en quectengo wifi libre en un tiempo la empresa donde trabaje me dii acceso despues nopero conocido o no abuso no soy experta pero cualquuer corrro abierto fue redireccionadoy creo que me enviaron un virus i fue contrafuego ek caso es que fue en cpu y de ahi afectaron 6 cel. ya no se su fuera hacker te asegurovque averiguo pero abrio todo tipo de app y me metio en un proyecto tottall el caso es queme acaban saldo esto lo hicierin con megacable el caso que cambie muchas veces de # cel y salio la misma di de baja todo y enlazan este cekukar a mi tv que nunca di acceso y pienso que lo estan administrando desde otra cpu no mia .. me puedes ayudar. la empresa era grupo modelo y no creo que ese personal de informarmatica se preste a eso solo que sea depravado, o ya no se que pensar me cambie a movistar paso lo mismo, no di permiso no abri cuentas y me hecharon a perder 6 a 7 cel 3 cpu ya mejor regreso a las rocas de cel. siento que me espian dia y noche.

  2. Este correo fue unos de los que me robaron, ahorita desconfio de los accesos que me dio la emopresa , pero este problema me redirecciona ip, celulares etc y hable con un experto y me dijo que pudiera ser que algun familiar este abusando, el caso es que crees que alguien del grupo modelo se preste a eso, abri muchos correos familua mia amigos, tambien redireccionaron la ip y me aparece este cel ligado a un cpu ajeno, me imagino que vio esto o me dejo x que dije queiba demandar. este correo tambien fue robado, se los publico porque, entre telcel movistar, lg, tbajo o familia, amigos ya no sabe uno en quien puedes confiar.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>