File Upload bei funktionalen Tests in Grails

von Peter Soth

In diesem kurzen Blog-Post möchte ich zeigen, wie man bei Grails bei funktionalen Tests einen File Upload überprüfen kann. Laut Geb Dokumentation [1] funktioniert das folgendermaßen:

when: "lorem ipsum "
            ...
            assert uploadedIconFile1.exists()
            form.productIcon = uploadedIconFile1.absolutePath
            report 'lorem ipsum'
            saveButton()

Für die Tests bietet es sich an, bereits mit dem Asset-Pipeline-Plug-in verwaltete Bilder zu benutzen. Die Dokumentation hierzu ist jedoch recht dürftig.

Dieser Zugriff kann so erfolgen:

class ProductSpec extends GebServiceSpec {
    ...  
    @Shared
    File uploadedIconFile1 = new File(AssetHelper.fileForFullName('layer1.png').getInputStream().properties['inIfOpen'].path as String)
    ...

Kategorien: GebGrailsSpockTesting

Zurück