Definisco le password per i server tramite proprietà che definisco nel mio ~/.m2/settings.xml (potrebbe essere ovunque, anche se include pom.xml) per il mio plug-in di distribuzione. Mi piacerebbe usare le stesse proprietà per i miei test di integrazione. c'è un modo per farlo?Posso inserire proprietà da Maven (password definite in settings.xml) nel mio contenitore Spring?
In caso contrario, c'è un modo conveniente per condividere le proprietà tra Maven e TestNG?
Voglio scrivere una bella suite di test che può essere eseguita su diversi server di integrazione continua, indicando diversi host remoti (sviluppo, test, staging e produzione), senza modificare il codice.
mi sto definendo credenziali per un servizio remoto in settings.xml:
<properties>
<my.host>http://my.company.com</my.host>
<my.username>my-un</my.username>
<my.password>my-pw</my.password>
</properties>
Mi piacerebbe essere in grado di fare riferimento le proprietà nella mia unità/test di integrazione (src/test/risorse) utilizzando:
<?xml version="1.0" encoding="UTF-8"?>
<beans....
<bean class="java.lang.String" id="un">
<constructor-arg value="${my.username}"/>
</bean>
<bean class="java.lang.String" id="pw">
<constructor-arg value="${my.password}"/>
</bean>
</beans>
Ci sono delle opzioni per farlo? Qualcun altro l'ha provato prima? Sto scrivendo molti test REST che richiedono l'autorizzazione nei miei test.
Grazie!
risposta perfetta +1 –
+1 Esattamente quello che stavo cercando una volta ho letto i documenti. Inizialmente ignorato pensando che "filtrare" fosse qualcos'altro. – marklai
A seconda dei flussi di lavoro c'è il rischio che queste proprietà, in particolare la password, siano mostrate nella build, ad es. in un ambiente CI. –