Rendono semplice?

2plus2 Make it simple? Specificazione è importante - questa affermazione è chiaro a tutti. Un prodotto largamente utilizzato, la tecnologia o la lingua, senza una specifica è inutile. Una specifica senza testsuite è pericoloso. A testsuite senza markup e le prove è impossibile. Questo processo è molto complesso. Tuttavia ci sono modi per semplificare la fase di marcatura.

Per quanto riguarda Java Language Specification (JLS) e Java Virtual Machine Specification (JVM) sono scritti in FrameMaker. Spec poi viene esportato in HTML e PDF. Il codice è incorporato in versione html. La mia opinione è che le informazioni di marcatura deve essere posto in (o connesso con) il testo di origine. Nel nostro caso si tratta del documento FrameMaker. Non sono sicuro che questo è possibile a tutti, ma credo che è. Se non, forse FrameMaker non è la soluzione migliore. Come risultato ci consentirà di ridurre notevolmente la quantità di tempo e lo sforzo necessari per il trasferimento di markup vecchia e la marcatura su nuovo testo. Inoltre durante la scrittura della prossima revisione della specifica l'autore insieme con il team di TCK deve markup affermazioni tutte chenged e nuovi. Direi che il modo migliore è quando la scrittura specifiche ed i processi di markup sono fatte allo stesso tempo. E 'ragionevole per l'autore a sottolineare gli sviluppatori di prova che le dichiarazioni devono essere testati.




  • Share / Bookmark
Print This Post Stampa questo post

Affermazione coloring

rainbow Assertion coloring Sviluppo di test di conformità implica l'identificazione di affermazioni in un apposito disciplinare, scrivendo test di conformità che controllano le affermazioni identificati e che collega la prova per l'affermazione che test.
Iniziamo dai seguenti punti:
- L'affermazione è contrassegnato
- L'affermazione reale è difficile da visualizzare nelle specifiche (attualmente ci sono solo gif affermazione piccolo, alla fine di ogni affermazione)
- Affermazioni completi sono visti solo leggendo il codice HTML direttamente o prova a guardare ogni singolo
- Inizio di affermazioni sono difficili da vedere nel codice html
- Fornire una rappresentazione visiva per visualizzare l'affermazione è facilmente il problema che stiamo cercando di risolvere.

Il punto principale è quello di colore le affermazioni (testo specifica stessa) utilizzando i tag HTML. La ricerca è stata fatta, che i tag HTML da usare. Div, span, tavolo e tipo di tag sono stati guardò. La soluzione migliore è il tag font. Modo che il testo è circondato con tag font. L'attributo class del tag font corrisponde al tipo di affermazione. Fe se il asserion è nuovo è colorata di rosso, per indicare, che i test devono essere scritte, le affermazioni vecchie sono colorati di verde per indicare che i test già esistenti. Ci dovrebbe essere un programma di utilità (script o un programma Java) per la scansione segnato specifica e aggiunge automaticamente i tag necessari per la colorazione. Il colore di sfondo del testo sarà determinata dal colore attributo titolo della tesi. Questo metodo è stato applicato e funziona bene. Ai fini di usabilità, ci dovrebbe essere un meccanismo per nascondere colorazione, fe uno javascript.

Uno svantaggio di questa soluzione è che il colore è statico in quanto si basa su l'attributo title. Una seconda soluzione sarebbe che lo strumento potrebbe verificare l'esistenza di un test (in base al id affermazione o creare un link nella affermazione). Se un test esiste, ci avrebbe fatto qualcosa per impostare il colore di tale affermazione. Potrebbe essere semplice come la fissazione di un attributo title. Uno svantaggio di questa soluzione è che la colorazione affermazione sarebbe ancora statica, ma in base a quando l'utente di eseguire gli script.

Una variazione della soluzione data è che avremmo generare dinamicamente i dati di copertura quando la specifica è visualizzato in un browser. Vorremmo sapere se esiste un test nella directory di prova per un determinato l'affermazione e il colore l'affermazione di conseguenza. Ciò potrebbe essere fatto attraverso un JavaScript / VBScript oggetti in uso, che consentono l'accesso al file system. Questo metodo dovrebbe essere dinamica e deve sempre avere l'ultimo stato di copertura affermazione.

Ecco alcuni esempi da capitoli JLS3 "conversioni e Promozioni" e "Interfacce":

JLS3 colored Assertion coloring

JLS3 colored2 Assertion coloring

Affermazioni conv063, conv047, conv065, conv48, conv66 e conv049 sono dalla versione precedente di specifiche, non sono state cambiate e le prove di aggiornamento non è necessario - colore acquamarina (verde neurtal). Conv155 e conv156 sono nuovi, nuovi test dovrebbero essere sviluppate, le affermazioni sono colorati in rosso abbagliante. Conv064 è stato modificato, l'aggiornamento di prova è necessario - colore arancione. Annot019 è una nuova, le prove esistono, ma sono necessari per cambiare - di colore salmone. Annot020 è nuovo, ma кудумфте esistono prove - di colore verde chiaro.

Il vantaggio principale di colorazione specifica è che le specifiche viene visualizzato. L'utente può vedere l'affermazione di tutto e il suo titolo. Uno può dire guardando le specifiche, dove ci sono aree con copertura bassa, in cui alcuni o molti dei test devono essere aggiunti o modificati. Ci sono fondamentalmente la possibilità di vedere come uno spec è segnata e quanto bene è testato.




  • Share / Bookmark
Print This Post Stampa questo post

Markup metadati

11 Markup metadata La definizione più semplice di metadati è che si tratta di dati sui dati. Metadati potrebbe essere molto utile. Per quanto riguarda il markup c'era qualche metadati incorporati: id, piccola descrizione di affermazione, link al test. Durante il trasferimento markup mi sono reso conto che più di metadati sarebbe molto utile. Nella nuova versione di specificazione, vi sono stati diversi tipi di asserzioni:

  • Old:
    non il testo modificato, i test non hanno bisogno di eventuali modifiche;
  • oldToBeChanged:
    testo modificato, i test hanno bisogno di essere cambiato;
  • Novità:
    totalmente nuovo testo, nuovi test necessari;
  • newWritten:
    nuovo testo, ma le prove già esistenti (in quanto il processo di sviluppo di test iniziato al più presto le specifiche del progetto era disponibile);
  • newWrittenToBeChanged:
    nuovo testo, le prove esistono, spec progetto modificato, in modo le prove devono essere modificate o prove esistenti non sono sufficienti.

L'aggiunta di questo tipo di dati per il markup semplificherebbe notevolmente il lavoro futuro - lo sviluppo di test. Perché solo guardando una affermazione in uno spec può facilmente dire se le prove sono necessarie più o di più dovrebbe essere aggiornato.

Con l'architettura data markup è stato deciso di utilizzare l'attributo titolo in un tag href (la seconda ancora). Quindi il codice sarà simile a:

name=assertionID> <a <! descrizione - shord come commento html ->
dichiarazione affermazione qui
src="pics/assert.gif"> <img <a href="path a test" title=assertType> test ID, che è la stessa affermazione ID </ a>

L'attributo title può essere visualizzato in un browser come un suggerimento.

JLS3 html Markup metadata

JLS3 html code Markup metadata




  • Share / Bookmark
Print This Post Stampa questo post