Как мне запустить Cucumber Runner из AWS Lambda Handler - PullRequest
0 голосов
/ 04 февраля 2020

Я пытаюсь запустить класс бегуна Cucumber с помощью Selenium Webdriver в AWS Lambda. До сих пор мне удавалось запускать селен в функции-обработчике AWS, но как мне вызвать Cucumber Runner из моего handleRequest, чтобы я мог запускать тесты в Lambda?

Вот фрагмент моего кода:

// following class is entry point for AWS, I need to call Cucumber runner from this function.
public class **LambdaFunctionHandler** implements RequestHandler<Object, String> {

    private AmazonS3 s3 = AmazonS3ClientBuilder.standard().build();

    @Override
    public String handleRequest(Object input, Context context) {        
        context.getLogger().log("Input: " + input);
        try {

            runner();  // how do I call my Cucumber Runner Class to execute my tests?

        catch (Exception e) {
            e.printStackTrace(System.out);
            context.getLogger().log(e.getMessage());
        }

        return "request done";
    }

The following is the runner class
package runner;

import cucumber.api.CucumberOptions;

import cucumber.api.junit.Cucumber;

import org.junit.runner.RunWith;

@RunWith(Cucumber.class)

@CucumberOptions(
        features = "src\\test\\resources\\features"
        ,glue={"com.smallcomp.abc.steps"}
        ,format = {"json:target/cucumber.json","html:target/cucumber-pretty"}
        ,dryRun = false
        ,tags = {"@smoke"}
)


public class runner {

}
...