Per rendere i moduli meno dipendenti da versioni specifiche, vorrei testare i moduli con diverse versioni delle dipendenze in modo da poter determinare gli "angoli" della versione box che il modulo funzionerà felicemente inTest delle versioni delle dipendenze in maven
ad es. il modulo è integrato nella libreria foo.bar 2.1.2. Quindi lo strumento dovrebbe testare 2.0.0 e se fallisce le versioni intermedie come git bisect. Quindi simile tra 2.1.2 e qualunque sia l'ultima versione. Quindi fallo con la prossima dipendenza.
Ho scoperto che spesso è piuttosto semplice estendere l'intervallo di versioni modificando il modo in cui viene utilizzata la libreria. Quando si esegue la distribuzione su un contenitore OSGi, l'esecuzione di un ampio set di versioni per dipendenza rende la vita molto meno dolorosa. Tuttavia, testare manualmente così tante combinazioni è un vero incubo.
Qualcuno sa di tale strumento in modo che possa essere eseguito su un server CI di notte?
PS: So che un tale strumento avrebbe tutti i tipi di bordi e imperfezioni. Voglio solo ridurre la quantità di ipotesi che vengono fatte implicitamente quando si costruiscono moduli. I test normali cattureranno comunque questi casi bizzarri.
Che cosa intendi per "testare tutte le combinazioni"? Tutte le combinazioni di dipendenze o una dipendenza VS un insieme di contenitori? – Gimby
Non penso sia utile testare tutte le combinazioni. Trova la versione più piccola e più grande della versione del POM che supera ancora i test. Il test su più contenitori può quindi essere fatto sulla base di questi risultati. –
È una domanda molto interessante, ma ho difficoltà a trovare lo scope. In particolare, ho problemi con il fatto che non ci sono solo "dipendenze", Maven è costruito attorno all'idea di dipendenze transitorie che non si definiscono nemmeno nei propri poms. Una dipendenza generalmente si traduce in un host di dipendenze - con versioni molto specifiche. – Gimby