2013-08-04 14 views
5

Sto costruendo un'applicazione che genera molte query SQL. Alcuni di questi sono complessi (per me) e scrivere buoni test è complicato.sql linter per mysql e php

Come test di integrità sarebbe bello eseguire le query SQL generate attraverso un linter. Pertanto, i test non eseguivano/eseguivano effettivamente le query sul database, ma analizzavano la query e si assicuravano che risultasse valida.

Mi rendo conto che questo non è un gran test, ma immagino che sarebbe veloce, e il mio linter PHP mi ha aiutato a catturare molti problemi, quindi se potessi costruire questo in unit test mi sembrerebbe un modo veloce prendere un po 'di frutta bassa appesa.

Sto lavorando in PHP e MySql (su linux) quindi preferirei una soluzione per quell'ambiente, ma prendo quello che posso ottenere. Forse mi indicherà la giusta direzione.

+1

Prova [SQL violino] (http://sqlfiddle.com/) – paulsm4

risposta

3

Diverse possibilità (confesso - l'unico che io sono personalmente familiarità con SQL è Fiddle):

http://dev.mysql.com/doc/mysqltest/2.0/

  • Google framework di test:

http://dev.mysql.com/doc/mysqltest/2.0/en/unit-tests-google-test.html

  • myTAP:

http://theory.github.io/mytap/

Dal momento che si sta utilizzando PHP, probabilmente si dovrebbe anche guardare PHPUnit:

'Speranza che aiuta ... almeno un po'

+1

Ci sono alcune cose interessanti in là, alcuni dei quali ho sapevo ma in parte non l'ho fatto. Non credo che assomigli a quello che stavo chiedendo, ma li esaminerò. Chissà, forse mi imbatterò in qualcosa che è così bello che non voglio più/ho bisogno di una linter più. – Jachin

+0

E tu? Le menti curiose vogliono sapere – Mawg