Projects‎ > ‎

Script Builder

ScriptBuilder es una herramienta para facilitar el desarrollo de refactorings y otras herramientas que utilicen metaprogramación en Pharo. 
Permite "grabar" nuestras clases de prueba en un script y luego reconstruirlas para poder testear nuestros metaprogramas.

Download

El proyecto se puede bajar del Monticello: http://squeaksource.com/DeRBIS. Se bajar con el Monticello Browser o bien directamente en un workspace:
Gofer it url: 'http://www.squeaksource.com/DeRBIS'; 
package: 'Derbis-Tools'; 
load.

Uso como TestResource

La forma más fácil de uso es teniendo dos carpetas, una conteniendo y otra conteniendo las clases de prueba que tenga el mismo nombre que la anterior agregando '-Model'. 
Por ejemplo si mis tests están en MiProyecto-Tests, mis clases de prueba estarán en MiProyecto-Tests-Model. Y al hacer:
DrBScriptBuilder createTestResourceInPackage: 'MiProyecto-Tests'

Eso me creará la clase MiProyectoTestsModel en la categoría 'MiProyecto-Tests'.
Luego, en mis tests debo agregar el método de clase:
resources 
^Array with: MiProyectoTestsModel 

Logrando que antes de correr la batería de tests se re-creen las clases. 

Atención: 
De esta forma se recrean antes de comenzar la ejecución de la suite entera y no antes de ejecutar cada test.

Uso Manual

Otra opción es utilizar el ScriptBuilder para crear el script de reconstrucción en un método de clase:
(DrBScriptBuilder forPackage: 'MiProyecto-Tests-Model')
    asMethod: #createClasses in: MisScripts

Creará un método denominado createClasses en la clase MisScripts. Luego cuando querramos reconstruir nuestras clases de prueba podemos hacer:
MisScripts createClasses

Comments