J'ai un test dans lequel je veux passer trois paramètres:Junit5 @ParameterizedTest Comment passer un tableau comme paramètre
- cordes
- Enum
- Tableau de chaînes
Exemple:
@ParameterizedTest
@CsvSource({
"/path/to/first/file.xlsx, FIRST, {THIRD PARAMETER SHOULD BE ARRAY OF STRINGS}",
"/path/to/second/file.xlsx, SECOND, {THIRD PARAMETER SHOULD BE ARRAY OF STRINGS}"})
void uploadFile(String path, FileType type, String[] errors) {
HttpEntity httpEntity = prepareFileUploadEntity(path, type);
ResponseEntity<ArrayList> response = getRestTemplate(AppRole.USER).exchange(UPLOAD_URL, HttpMethod.POST, httpEntity, ArrayList.class);
assertNotNull(response);
assertEquals(HttpStatus.BAD_REQUEST, response.getStatusCode());
assertEquals(errors.length, response.getBody().size());
for (String error : errors) {
assertTrue(response.getBody().contains(error));
}
}
Comment puis-je pa ss le troisième paramètre comme un tableau de chaînes, faire maintenant, j'ai l'erreur que troisième paramètre `t être résolu:
org.junit.jupiter.api.extension.ParameterResolutionException: Error resolving parameter at index 2
"correction" n'est pas nécessaire. À mon avis, il est préférable d'indiquer le "tableau" comme dans Kapep répondre à l'intérieur d'une seule chaîne entre guillemets –