Я полагаю, что это возможно при использовании опции пользовательских сред при планировании запуска в Device Farm. Правда, у меня нет опыта спокойствия, но вот блог, в котором используются тесты на огурец.
https://aws.amazon.com/blogs/mobile/testing-mobile-apps-with-cucumber-and-appium-through-testng-on-aws-device-farm/
Похоже, что спокойствие похоже или расширено от огурца, так что в теории это может сработать.
[Изменить]
Вот несколько коротких задач сборки, которые должны помочь создать тестовый пакет для Device Farm.
Примечание : предполагается, что зависимости структурированы в файле build.gradle следующим образом:
dependencies {
testCompile(
'net.serenity-bdd:serenity-junit:2.0.18',
'net.serenity-bdd:serenity-cucumber:1.9.20',
'org.assertj:assertj-core:3.11.1',
'ch.qos.logback:logback-classic:1.2.3',
'io.github.bonigarcia:webdrivermanager:3.0.0'
)
}
образец кода сборки. Код
//source: https://stackoverflow.com/a/27455099/8016330
task getDeps(type: Copy) {
from sourceSets.test.runtimeClasspath
// if you need this from the dependencies in the build.gradle then it should be :
// from sourceSets.main.runtimeClasspath
into 'build/libs/dependency-jars'
}
//packaging tests task which is generated from sample using gradle init
task packageTests(type: Jar) {
dependsOn getDeps
from sourceSets.test.output
classifier = 'tests'
}
//create zip archive
//source: https://stackoverflow.com/a/36883221/8016330
task zip(type: Zip) {
dependsOn packageTests
from 'build/libs/'
include '*'
include '*/*' //to include contents of a folder present inside dependency-jars directory
archiveName 'zip-with-dependencies.zip'
destinationDir(file('build/libs/'))
}
Тогда вы сможете создать zip-файл с помощью этой команды:
./gradlew clean zip
Примечание : вам понадобится команда clean, иначе она упакует предыдущий zip-архив в новый zip-архив.
Hth
-Джеймс