diff --git a/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/Pages.java b/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/Pages.java index aced5fe89c..79a7652dd4 100644 --- a/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/Pages.java +++ b/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/Pages.java @@ -3,6 +3,7 @@ package com.provectus.kafka.ui.pages; import com.provectus.kafka.ui.pages.connector.ConnectorsList; import com.provectus.kafka.ui.pages.connector.ConnectorsView; import com.provectus.kafka.ui.pages.schema.SchemaRegistryList; +import com.provectus.kafka.ui.pages.topic.ProduceMessagePanel; import com.provectus.kafka.ui.pages.topic.TopicView; import com.provectus.kafka.ui.pages.topic.TopicsList; import io.qameta.allure.Step; @@ -14,7 +15,7 @@ public class Pages { public MainPage mainPage = new MainPage(); public TopicsList topicsList = new TopicsList(); public TopicView topicView = new TopicView(); - public ProduceMessagePage produceMessagePage = new ProduceMessagePage(); + public ProduceMessagePanel produceMessagePanel = new ProduceMessagePanel(); public ConnectorsList connectorsList = new ConnectorsList(); public ConnectorsView connectorsView = new ConnectorsView(); public SchemaRegistryList schemaRegistry = new SchemaRegistryList(); diff --git a/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/ProduceMessagePage.java b/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/ProduceMessagePage.java deleted file mode 100644 index 369cf56ea8..0000000000 --- a/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/ProduceMessagePage.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.provectus.kafka.ui.pages; - -import com.codeborne.selenide.Condition; -import com.codeborne.selenide.SelenideElement; -import com.provectus.kafka.ui.pages.topic.TopicView; -import io.qameta.allure.Step; -import org.openqa.selenium.By; -import org.openqa.selenium.Keys; -import org.openqa.selenium.support.ui.ExpectedConditions; - -import static com.codeborne.selenide.Selenide.$; -import static com.codeborne.selenide.Selenide.Wait; - -public class ProduceMessagePage{ - - private final SelenideElement keyField = $(By.xpath("//div[@id = 'key']/textarea")); - private final SelenideElement contentField = $(By.xpath("//div[@id = 'content']/textarea")); - private final SelenideElement headersField = $(By.xpath("//div[@id = 'headers']/textarea")); - private final SelenideElement sendBtn = $(By.xpath("//button[@type = 'submit']")); - @Step - public ProduceMessagePage setKeyField(String value) { - Wait().until(ExpectedConditions.urlContains("message")); - keyField.sendKeys(Keys.chord(Keys.DELETE)); - keyField.setValue(value); - return this; - } - @Step - public ProduceMessagePage setContentFiled(String value) { - Wait().until(ExpectedConditions.urlContains("message")); - contentField.sendKeys(Keys.DELETE); - contentField.setValue(value); - return this; - } - @Step - public ProduceMessagePage setHeaderFiled(String value) { - headersField.setValue(value); - return new ProduceMessagePage(); - } - @Step - public TopicView submitProduceMessage() { - sendBtn.shouldBe(Condition.visible).click(); - return new TopicView(); - } -} diff --git a/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topic/ProduceMessagePanel.java b/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topic/ProduceMessagePanel.java new file mode 100644 index 0000000000..6abd045a06 --- /dev/null +++ b/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topic/ProduceMessagePanel.java @@ -0,0 +1,48 @@ +package com.provectus.kafka.ui.pages.topic; + +import com.codeborne.selenide.Condition; +import com.codeborne.selenide.SelenideElement; +import io.qameta.allure.Step; +import org.openqa.selenium.By; +import org.openqa.selenium.Keys; + +import static com.codeborne.selenide.Selenide.$; +import static com.codeborne.selenide.Selenide.refresh; + +public class ProduceMessagePanel { + + private final SelenideElement keyField = $(By.xpath("//div[@id='key']/textarea")); + private final SelenideElement contentField = $(By.xpath("//div[@id='content']/textarea")); + private final SelenideElement headersField = $(By.xpath("//div[@id='headers']/textarea")); + private final SelenideElement submitBtn = headersField.$(By.xpath("../../../..//button[@type='submit']")); + + @Step + public ProduceMessagePanel setKeyField(String value) { + keyField.shouldBe(Condition.enabled) + .sendKeys(Keys.chord(Keys.DELETE)); + keyField.setValue(value); + return this; + } + + @Step + public ProduceMessagePanel setContentFiled(String value) { + contentField.shouldBe(Condition.enabled) + .sendKeys(Keys.DELETE); + contentField.setValue(value); + return this; + } + + @Step + public ProduceMessagePanel setHeaderFiled(String value) { + headersField.setValue(value); + return new ProduceMessagePanel(); + } + + @Step + public TopicView submitProduceMessage() { + submitBtn.shouldBe(Condition.enabled).click(); + submitBtn.shouldBe(Condition.disappear); + refresh(); + return new TopicView().waitUntilScreenReady(); + } +} diff --git a/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topic/TopicView.java b/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topic/TopicView.java index 83b08474e4..8d05508171 100644 --- a/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topic/TopicView.java +++ b/kafka-ui-e2e-checks/src/main/java/com/provectus/kafka/ui/pages/topic/TopicView.java @@ -5,13 +5,11 @@ import com.codeborne.selenide.Selenide; import com.codeborne.selenide.SelenideElement; import com.provectus.kafka.ui.extensions.WaitUtils; import com.provectus.kafka.ui.helpers.TestConfiguration; -import com.provectus.kafka.ui.pages.ProduceMessagePage; import com.provectus.kafka.ui.utils.BrowserUtils; import io.qameta.allure.Step; import lombok.experimental.ExtensionMethod; import org.openqa.selenium.By; -import static com.codeborne.selenide.Selectors.byLinkText; import static com.codeborne.selenide.Selenide.*; @ExtensionMethod({WaitUtils.class}) @@ -56,9 +54,9 @@ public class TopicView { } @Step - public ProduceMessagePage clickOnButton(String buttonName) { + public ProduceMessagePanel clickOnButton(String buttonName) { BrowserUtils.javaExecutorClick($(By.xpath(String.format("//div//button[text()='%s']", buttonName)))); - return new ProduceMessagePage(); + return new ProduceMessagePanel(); } @Step diff --git a/kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/SmokeTests.java b/kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/SmokeTests.java index fbfb0990eb..3c364bbeed 100644 --- a/kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/SmokeTests.java +++ b/kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/SmokeTests.java @@ -8,6 +8,7 @@ import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; public class SmokeTests extends BaseTest { + @Test @AutomationStatus(status = Status.AUTOMATED) @CaseId(198) @@ -17,5 +18,4 @@ public class SmokeTests extends BaseTest { .waitUntilScreenReady(); compareScreenshots("main"); } - }