Nuova versione di XmlBlackBox

Postati in Senza categoria su novembre 16, 2011 da xmlblackbox

E’ uscita la nuova versione 2.8.0 di XmlBlackBox.
Vedi http://code.google.com/p/xmlblackbox/downloads/list

Nuova versione aggiornata alle librerie di Selenium compatibili con Firefox 4

Postati in Senza categoria con i tag su giugno 1, 2011 da xmlblackbox

La versione 1.27 di Functional-test (http://code.google.com/p/xmlblackbox/downloads/list) è stata rilasciata configurata per supportare anche la nuova versione (la 4) di Firefox

java.lang.NoSuchMethodError xerces

Postati in XmlBlackBox su novembre 1, 2010 da xmlblackbox

Ho avuto questa eccezione eseguendo la suite da Eclipse dopo aver aggiornato il progetto alla nuova versione 1.0.3 di Selenium

java.lang.NoSuchMethodError: org.apache.xerces.impl.xs.XMLSchemaLoader.loadGrammar([Lorg/apache/xerces/xni/parser/XMLInputSource;)V
at org.apache.xerces.jaxp.validation.XMLSchemaFactory.newSchema(Unknown Source)
at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:594)
at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:610)
at org.xmlblackbox.test.infrastructure.util.ValidateXML.generaValidatore(ValidateXML.java:96)
at org.xmlblackbox.test.infrastructure.util.ValidateXML.validate(ValidateXML.java:110)
at org.xmlblackbox.test.infrastructure.xml.XmlValidate.execute(XmlValidate.java:70)
at org.xmlblackbox.test.infrastructure.FlowControl.execute(FlowControl.java:218)
at org.xmlblackbox.test.infrastructure.FlowControl.execute(FlowControl.java:119)
at org.xmlblackbox.test.functional.examples.v13.Example001WebApp.testExecute(Example001WebApp.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

Ho risolto il problema spostando le librerie di selenium più in alto come ordine nel classpath

costi

Postati in 1 su aprile 16, 2010 da xmlblackbox

Parlare dei costi dell’implementazione dei test è molto delicato. L’importanza dell’esistenza dei test non sempre viene ben compreso da chi gestisce i progetti, men che meno quindi la capacità di valutare il rapporto costi benefici.
La valutazione fatta sui tempi necessari alla creazione dei test è del 10%/20% rispetto al tempo di sviluppo della funzionalità da testare.
Con l’uso di XmlBlackBox i tempi possono essere ridotti notevolmente

RuntimeException: Trying XBeans path engine… Trying XQRL… Trying delegated path engine

Postati in XmlBlackBox su aprile 8, 2010 da xmlblackbox

I have had this exception when I try to use xpath query with index ($this//xsd:getPerson/xsd:arg0[1]/xsd:address) in XmlBeans :

java.lang.RuntimeException: Trying XBeans path engine… Trying XQRL… Trying delegated path engine… FAILED on declare namespace xsd=’http://webservice.test.xmlblackbox.org/’;$this//xsd:getPerson/xsd:arg0[1]/xsd:address
at org.apache.xmlbeans.impl.store.Path.getCompiledPath(Path.java:173)
at org.apache.xmlbeans.impl.store.Path.getCompiledPath(Path.java:130)
at org.apache.xmlbeans.impl.store.Cursor._selectPath(Cursor.java:902)
at org.apache.xmlbeans.impl.store.Cursor.selectPath(Cursor.java:2634)
at org.apache.xmlbeans.impl.values.XmlObjectBase.selectPath(XmlObjectBase.java:462)
at org.apache.xmlbeans.impl.values.XmlObjectBase.selectPath(XmlObjectBase.java:446)
at org.xmlblackbox.test.infrastructure.xml.CheckInsertXmlContent.insertValueInXml(CheckInsertXmlContent.java:284)
at org.xmlblackbox.test.infrastructure.xml.CheckInsertXmlContent.execute(CheckInsertXmlContent.java:420)
at org.xmlblackbox.test.infrastructure.FlowControl.execute(FlowControl.java:198)
at org.xmlblackbox.test.infrastructure.FlowControl.execute(FlowControl.java:118)
at org.xmlblackbox.test.functional.examples.v13.Example001WebApp.testExecute(Example001WebApp.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)

I solved the problem moving XmlBeans_Xpath library in the first position in the classpath and putting in the cp saxon library (in my case saxon-9-0-0-4)

NoSuchMethodException

Postati in XmlBlackBox su aprile 8, 2010 da xmlblackbox

I have had this exception:
java.lang.RuntimeException: java.lang.NoSuchMethodException: org.apache.xmlbeans.impl.xpath.saxon.XBeansXPath.(java.lang.String, java.util.Map, java.lang.String)
at org.apache.xmlbeans.impl.store.SaxonXBeansDelegate.init(SaxonXBeansDelegate.java:76)
at org.apache.xmlbeans.impl.store.SaxonXBeansDelegate.createInstance(SaxonXBeansDelegate.java:84)
at org.apache.xmlbeans.impl.store.Path$SaxonPathImpl.create(Path.java:448)
at org.apache.xmlbeans.impl.store.Path.getCompiledPathSaxon(Path.java:185)
at org.apache.xmlbeans.impl.store.Path.getCompiledPath(Path.java:115)
at org.apache.xmlbeans.impl.store.Path.getCompiledPath(Path.java:91)
at org.apache.xmlbeans.impl.store.Cursor._selectPath(Cursor.java:902)
at org.apache.xmlbeans.impl.store.Cursor.selectPath(Cursor.java:2634)
at org.apache.xmlbeans.impl.values.XmlObjectBase.selectPath(XmlObjectBase.java:431)
at org.apache.xmlbeans.impl.values.XmlObjectBase.selectPath(XmlObjectBase.java:415)
at org.xmlblackbox.test.infrastructure.xml.CheckInsertXmlContent.insertValueInXml(CheckInsertXmlContent.java:284)
at org.xmlblackbox.test.infrastructure.xml.CheckInsertXmlContent.execute(CheckInsertXmlContent.java:420)
at org.xmlblackbox.test.infrastructure.FlowControl.execute(FlowControl.java:198)
at org.xmlblackbox.test.infrastructure.FlowControl.execute(FlowControl.java:118)
at org.xmlblackbox.test.functional.examples.v13.Example001WebApp.testExecute(Example001WebApp.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: java.lang.NoSuchMethodException: org.apache.xmlbeans.impl.xpath.saxon.XBeansXPath.(java.lang.String, java.util.Map, java.lang.String)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.getConstructor(Unknown Source)
at org.apache.xmlbeans.impl.store.SaxonXBeansDelegate.init(SaxonXBeansDelegate.java:64)
… 32 more

I solved the problem moving the xmlbeans library in the first position of the classpath

Verifica periodica sullo stato dell’applicazione

Postati in Continuous integration su marzo 18, 2010 da xmlblackbox

L’esistenza di una suite di test permette di verificare periodicamente lo stato di “salute” dell’applicazione, eventuali errori introdotti vengono evidenziati nel giro di poco tempo e facilmente risolti. Inoltre l’introduzione di un server di continuous integration permetterebbe di monitorare ancor meglio la situazione.

Possibilità di introdurre vincoli per il commit agli sviluppatori…

Postati in Continuous integration su marzo 16, 2010 da xmlblackbox

La presenza nel progetto, di test (unit o functional) permette, se il tempo di esecuzione non è molto lungo, di obbligare l’esecuzione di tutti i test (o di un sottoinsieme a campione di essi) prima di qualsiasi commit. In questo modo i commit che creano regressioni diminuiscono notevolmente.

Nuova versione di XmlBlackBox

Postati in XmlBlackBox su marzo 14, 2010 da xmlblackbox

E’ uscita la nuova versione 1.8 di XmlBlackBox.
Vedi http://code.google.com/p/xmlblackbox/downloads/list

Certezza della correttezza del deploy

Postati in Continuous integration su marzo 14, 2010 da xmlblackbox

Quando una applicazione è composta da più parti e non solo ad esempio da una web application, l’esistenza di una suite completa da anche il vantaggio tra gli altri di verificare che tutte le componenti siano state correttamente installate e configurate.

Iscriviti

Get every new post delivered to your Inbox.