Мы пытаемся использовать структуру огуречного безмятежности для сквозных тестов. Я довольно новичок в технологии, и я устал от этого простого кода ниже.
actor.attemptsTo(Enter.theValue(path).into(Upload));
где путь - это расположение файла, который я пытаюсь загрузить с помощью виджета загрузки браузера. Кому-нибудь когда-либо удавалось выполнять подобные действия, используя шаблон воспроизведения экрана безмятежности.
Это действительно заставляет нас задуматься о том, чтобы отказаться от безмятежности и просто использовать структуру огурца-селена, поскольку я могу легко выполнить это с помощью Upload.sendkeys(path); Буду признателен за любую оказанную помощь. Заранее спасибо.
ПО ЗАПРОСУ: Шаги листинга:
public class ListingSteps
{
@Before
public void set_the_stage() {
OnStage.setTheStage(new OnlineCast());
}
@Given("^(.*) is able to click import products$") public void userIsAbleToClick(String actorName) throws Throwable
{
theActorCalled(actorName).wasAbleTo(Start.theApplication());
}
@When("^s?he imports a single item successfully$") public void heImportsASingleItemSuccessfully() throws Throwable
{
theActorInTheSpotlight().attemptsTo(Import.spreadsheet());
}
@Then("^(.*) are listed on ebay and amazon with all the right information$") public void itemsAreListedOnEbayAndAmazonWithAllTheRightInformation(String actorName, String SKU)
throws Throwable
{ //в ожидании
}
Игнорируйте тогда пока, поскольку его работа продолжается.
Класс импорта:
public class Import implements Task
{
protected String path =
"C:\\somePathToFile\\populated_excel.xlsx";
public static Import spreadsheet()
{
return instrumented(Import.class);
}
@Override public <T extends Actor> void performAs(T actorName)
{
actorName.attemptsTo(Click.on(Products.ProductsScreen));
actorName.attemptsTo(Click.on(Products.Upload));
actorName.attemptsTo(Enter.theValue(path).into(Browse).thenHit(Keys.RETURN));//this is the line which is giving errors
actorName.attemptsTo(Click.on(Products.UploadButton));
}
}
Целевой просмотр
public class Products
{
public static Target Browse = Target.the("browse file").locatedBy("//input[@type='file']");
}