Cosa c'è di nuovo in Test YUI 3.1.0
2 aprile 2010 alle ore 9.00 da Nicholas C. Zakas | In Sviluppo | 1 CommentoNicholas C. Zakas ( slicknet @ su Twitter) è l'ingegnere frontend piombo sul Yahoo! home page , un YUI collaboratore e autore di Professional JavaScript per gli sviluppatori web e il neo-rilasciato, ad alte prestazioni JavaScript . Il suo Test-Driven Development presentazione è uno dei tanti da Nicholas su YUI Theater .
Uno dei grandi spinge in giro per YUI di prova per la release 3.1.0 YUI si trovava nella zona di automazione. Mentre è grande che gli sviluppatori stanno iniziando a scrivere unit test per il loro JavaScript, sviluppo test-driven raggiunge il suo vero potenziale solo quando questi test vengono eseguiti automaticamente e report vengono generati per tenere traccia delle tendenze. L'intero processo richiede più di un semplice JavaScript, naturalmente, e quindi questa ultima versione di YUI Test ha una serie di nuove funzionalità per rendere l'utilizzo in un ambiente di continua integrazione più facile.
Nuovo TestRunner Metodi
Uno dei browser più popolari strumenti di automazione di test è Selenio . Nel parlare con i tecnici che fanno uso di YUI Test regolarmente, abbiamo imparato che molti erano già utilizzando Selenium di automatizzare i test di unità JavaScript. Ci sono state due importanti punti di dolore che deriva da queste discussioni:
- E 'stato difficile stabilire se le prove sono state ancora in corso di esecuzione o meno.
- Non c'era modo facile per estrarre i risultati dei test.
Per rispondere a queste due realtà, due nuovi metodi sono stati aggiunti alla TestRunner interfaccia. Il primo metodo, isRunning() , restituisce true quando il TestRunner è nel mezzo di esecuzione di test e false altrimenti. Questo permette un facile uso con selenio waitForCondition() metodo per determinare quando le prove sono state completate.
Il nuovo secondo metodo è getResults() . Mentre i test vengono eseguiti, questo metodo restituisce sempre null . Una volta che i test sono completati, questo metodo restituisce un oggetto contenente tutte le informazioni sui risultati del test. Opzionalmente, è possibile passare in uno dei formati di testare il risultato (disponibile su Y.Test.Format ) per restituire una stringa che contiene le informazioni sui test di dominio nel formato specificato. Per esempio:
var results = Y.Test.Runner.getResults(Y.Test.Format.XML); Questo metodo permette anche di scripting con selenio facile, in quanto siete in grado di recuperare le informazioni del risultato del test dal tuo script in un formato utilizzabile.
Nota: Il selenio è capacità di scripting possono accedere solo gli oggetti nello scope globale, quindi è necessario assicurarsi che il TestRunner istanza è disponibile a livello globale.
Nuovi risultati Formati
Ci sono un sacco di strumenti che possono prendere i risultati dei test unitari e produrre report. Prima di YUI 3.1.0, YUI Test supportati solo i formati di base dei risultati del saggio in formato XML e JSON. Anche se questi potrebbero essere trasformati in altri formati, aveva senso realizzare due altri popolari formati in modo nativo: JUnit XML e TAP . È possibile accedere ai risultati in questi nuovi formati utilizzando getResults() :
var junitXml= Y.Test.Runner.getResults(Y.Test.Format.JUnitXML); var tap = Y.Test.Runner.getResults(Y.Test.Format.TAP); JUnit XML è uno dei formati di test più ampiamente supportato risultato tra gli strumenti esistenti. Anche se la sua configurazione non è esattamente la mappa di struttura YUI Test (per esempio, non c'è un concetto di suite di test JUnit nidificate in XML), è ancora ottenere abbastanza informazioni acquisite a presentare relazioni ragionevoli.
TAP è un formato di recente i risultati dei test che è un testo in forma libera. A differenza di JUnit XML, TAP non ha il concetto di raggruppamento test, e così YUI inserti Test commenti in output per identificare suite di test e test case.
Per ulteriori informazioni sui formati di nuova prova, così come di vedere l'output, ad esempio, vedere la Visualizzazione dei risultati del Test di sezione documentazione YUI. Questi nuovi formati possono essere utilizzati anche con il già esistente Test Reporting meccanismo.
Più di automazione On The Way
Questi sono solo i primi passi verso il miglioramento della automazione di test di unità con YUI JavaScript test. Nel corso dell'anno successivo, sentirete parlare di più su YUI Test e automazione di test. integrazione JavaScript continuo è una disciplina in continua evoluzione e ci piacerebbe sentire il vostro feedback su come YUI test possono rendere questo lavoro più facile per gli sviluppatori.
Condividi e ampliare: Bookmark con del.icio.us | digg it! | reddit!
1 Commento »
RSS feed dei commenti a questo post. TrackBack URI
Lascia un commento

Copyright © 2006-2011 Inizio Inc. Tutti i diritti riservati. Norme sulla privacy - Termini di servizio
Powered by WordPress su Yahoo! Web Hosting .


Questa notizia abbastanza impressionante! Usiamo CruiseControl (con phpUnderControl) e sono stati a voler mettere i nostri test di unità Javascript (con DoH) nel processo, ma il formato di uscita non è mai stato disponibile.
Daremo uno sguardo YUI prova, soprattutto perché ci avvaliamo di selenio, nonché (solo per le prove di accettazione, al momento).
Commento di Clemmons Eric - 2 aprile 2010 #