Ho creato una fase di test in soapui. Ho bisogno di impostare un ritardo lungo come 5 minuti per questo. Intendo dire che non vi è alcun ritardo tra le fasi del test, devo aspettare una risposta solo per un passo. Come posso farlo?Come timeout impostato per una fase di test in soapui?
risposta
Impostare il timeout socket su 300000 millisecondi. SoapUI Documentation
Opzioni TestCase ha un'impostazione di timeout del socket per quel test. Non è possibile impostare questo per un solo passaggio.
Grazie, sono stato in grado di impostare * timeout * per un test case :) – Zeeshan
Come altre risposte dice che non è possibile impostare il timeout del socket per un TestStep
, tuttavia è possibile fare il trucco con un TestStep
e groovy TestStep
. Si può fare a fare i passi successivi:
- Creare il
TestStep
all'interno del vostroTestCase
e disattivarla perché si eseguirlo dal groove. - Creare un
Groovy testStep
che cambierà il timeout del socket globale prima di eseguiretestStep
e di impostare nuovamente il valore predefinito dopo l'esecuzione utilizzandocom.eviware.soapui.SoapUI
class.
Il codice groovy
è possibile utilizzare è mostrato qui sotto:
import com.eviware.soapui.SoapUI
import com.eviware.soapui.settings.HttpSettings
import com.eviware.soapui.model.testsuite.TestStepResult.TestStepStatus
// get the settings
def settings = SoapUI.getSettings();
// save the possible previous timeout
def bk_timeout = settings.getString(HttpSettings.SOCKET_TIMEOUT,"");
// set the new timeout... in your case 5 minutes in miliseconds
settings.setString(HttpSettings.SOCKET_TIMEOUT,"300000");
// save the new settings
SoapUI.saveSettings();
// get the testStep by name
def testStep = testRunner.testCase.getTestStepByName('Test Request')
// run it
def result = testStep.run(testRunner, context)
if(result.status == TestStepStatus.OK)
{
// ... if all ok
}
// when finish set the timeout to default value again
settings.setString(HttpSettings.SOCKET_TIMEOUT, bk_timeout)
SoapUI.saveSettings()
tuo testCase volontà assomiglia:
notare che se si vuole verificare se modificare le impostazioni attraverso groovy
funziona come previsto puoi provare a modificare le proprietà e controllare se il file delle preferenze SOAPUI
è cambiato in $USER_HOME\soapui-settings.xml
e (evidentemente per testarlo non eseguire nuovamente il backup del valore originale come nell'esempio :)
).
'che cambierà il timeout globale del socket' - sembra che influisce su tutto il progetto soapui. Voglio dire che se ci sono altri test in esecuzione in parallelo, essi "vedranno" il timeout globale modificato. Ad esempio, quando diversi casi di test contengono quel codice, possono impostare il timeout globale in modo sincrono e per alcuni di essi può essere più piccolo del necessario. Potrebbe essere meglio impostare il timeout di TestCase come suggerito da [SiKing] (http://stackoverflow.com/a/26510622/1251549)? – Cherry
Nella tua domanda non ci sono requisiti per eseguire test in parallelo, ecco perché ti mostro una possibile soluzione per farlo con le proprietà globali. Tuttavia, se è presente un timeout del socket in livello testCase, penso che sia possibile creare uno script groovy simile modificando questa proprietà. Lo controllo, se esiste aggiorno la mia risposta. – albciff
Ho trovato un modo per impostare il timeout del socket testCase.
nello script di setup del testCase utilizzare il seguente codice:
testRunner.testCase.settings.setString("[email protected]_timeout","10000")
Tutti i passaggi all'interno della testCase saranno interessati da questo valore.
Il valore globale SOCKET_TIMEOUT non è interessato da questo.
- 1. Creazione dello scenario di timeout in SOAPUI
- 2. Cattura risposta a una soapUI test run
- 3. timeout impostato per l'input dell'utente
- 4. SoapUI Mock integrato nel test di Maven
- 5. Invoke-WebRequest impostato timeout
- 6. Timeout fase pipeline GitLab CI
- 7. timeout impostato per la ricezione socket
- 8. Timeout/interruzione fase AWP CodePipeline?
- 9. PHP MySQL impostato Timeout di connessione
- 10. Timeout per test individuali in NUnit
- 11. Test JUnit per un timeout previsto
- 12. Test unitario con timeout
- 13. Come prolungare il timeout per i test in circleci?
- 14. Creazione di libreria di script in versione gratuita SoapUI
- 15. Esiste uno strumento per il test RMI Java come fa SoapUI per i servizi Web?
- 16. Come creare una stringa datetime in soapui utilizzando groovy
- 17. Timeout impostato nel web.xml non funziona in java
- 18. XSLT: Parametro di test per sapere se è stato impostato
- 19. ritardo casuale soapui
- 20. Impostare una durata di timeout test con PHPUnit
- 21. Test del servizio Web con autenticazione SoapUI e Windows
- 22. Test API con SoapUI vs Postman vs Runscope
- 23. Come ripetere una fase in Jenkins Workflow
- 24. Timeout sui test con nosetests
- 25. Disabilita il timeout per i test delle unità in C#
- 26. Come specificare il timeout del test per Python Unittest?
- 27. Unità di test della fase di configurazione in AngularJS
- 28. Richiesta non valida in SOAPUI
- 29. Timeout a livello di programmazione di un test in MSTest
- 30. ricerca di "appeso simulatore presa" per presa test timeout
applt per tutte le richieste/risposte in soapui ma voglio solo per una prova – Cherry
Se il timeout non è impostato. Qual è il timeout predefinito? –
60 secondi è il valore predefinito. – gnaanaa