2013-08-04 16 views
5

Çok fazla sql sorgusu üreten bir uygulama yapıyorum. Bazıları karmaşıktır (benim için) ve iyi testler yazmak zor.sql linter

Bir akıl testi olarak, oluşturulan SQL sorgularını bir linter aracılığıyla çalıştırmak güzel olurdu. Bu nedenle, testler veritabanında sorguları çalıştırmaz/yürütmez, ancak sorguyu ayrıştırır ve geçerli göründüğünden emin olur.

Bunun büyük bir test olmadığını anlıyorum, ancak bunun hızlı olacağını ve PHP linter'imin çok fazla sorunla karşılaşmamı sağladığını fark ettim, bu yüzden bunu birim testlere kurabilirsem hızlı bir yol gibi görünüyor düşük asılı meyve yakalamak için.

PHP ve MySql'de (linux) çalışıyorum, bu yüzden bu ortam için bir çözüm tercih ediyorum ama alabileceğim şeyi alacağım. Belki bana doğru yönde işaret eder.

+1

deneyin [SQL Fiddle] (http://sqlfiddle.com/) – paulsm4

cevap

3

Çeşitli olasılıklar (İtiraf - tek ben SQL Fiddle olduğu ile şahsen tanıdık):

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

  • tarihinde Testi Çerçevesi:

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

  • myTAP:

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

PHP kullandığınız için, muhtemelen de PHPUnit bakmak gerekir:

'Umut ... en azından biraz

+1

, orada Bir kısmını bazı ilginç şeyler var Biliyordum ama bir kısmı yoktu. Hiçbirinin istediğime benzemediğini sanmıyorum, ama onlara bakacağım. Kim bilir, belki çok serin olan bir şeye gireceğim/artık bir linter istemiyorum. – Jachin

+0

Peki, sen? Akıl yürüten beyinler bilmek ister – Mawg