Skip to content

Commit b3f74cb

Browse files
[e2e]Checking the URL redirections for kafka-ui pages (#3450)
* [e2e]Checking the URL redirections for kafka-ui pages * [e2e]Checking the URL redirections for kafka-ui pages * [e2e]Checking the URL redirections for kafka-ui pages * [e2e]Checking the URL redirections for kafka-ui pages * rmv ignore from copyMessageFromTopicProfile * move @QaseId(21) to manualSuite --------- Co-authored-by: VladSenyuta <[email protected]>
1 parent e261143 commit b3f74cb

File tree

10 files changed

+131
-84
lines changed

10 files changed

+131
-84
lines changed
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,20 @@
11
package com.provectus.kafka.ui.pages.consumers;
22

3+
import com.codeborne.selenide.Condition;
34
import com.codeborne.selenide.SelenideElement;
45
import com.provectus.kafka.ui.pages.BasePage;
6+
import io.qameta.allure.Step;
57

68
import static com.codeborne.selenide.Selenide.$x;
79

810
public class ConsumersList extends BasePage {
911

1012
protected SelenideElement consumerListHeader = $x("//h1[text()='Consumers']");
13+
14+
@Step
15+
public ConsumersList waitUntilScreenReady() {
16+
waitUntilSpinnerDisappear();
17+
consumerListHeader.shouldHave(Condition.visible);
18+
return this;
19+
}
1120
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
package com.provectus.kafka.ui.variables;
2+
3+
public interface Url {
4+
5+
String BROKERS_LIST_URL = "http://%s:8080/ui/clusters/local/brokers";
6+
String TOPICS_LIST_URL = "http://%s:8080/ui/clusters/local/all-topics?perPage=25";
7+
String CONSUMERS_LIST_URL = "http://%s:8080/ui/clusters/local/consumer-groups";
8+
String SCHEMA_REGISTRY_LIST_URL = "http://%s:8080/ui/clusters/local/schemas";
9+
String KAFKA_CONNECT_LIST_URL = "http://%s:8080/ui/clusters/local/connectors";
10+
String KSQL_DB_LIST_URL = "http://%s:8080/ui/clusters/local/ksqldb/tables";
11+
}

kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/BaseTest.java

Lines changed: 60 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import java.time.Duration;
2323
import java.util.List;
2424

25-
import static com.provectus.kafka.ui.pages.NaviSideBar.SideMenuOption.TOPICS;
25+
import static com.provectus.kafka.ui.pages.NaviSideBar.SideMenuOption.*;
2626
import static com.provectus.kafka.ui.settings.BaseSource.*;
2727
import static com.provectus.kafka.ui.settings.drivers.LocalWebDriver.*;
2828
import static com.provectus.kafka.ui.utilities.qaseUtils.QaseSetup.qaseIntegrationSetup;
@@ -108,6 +108,14 @@ public void beforeMethod() {
108108
public void afterMethod() {
109109
browserClear();
110110
}
111+
112+
@Step
113+
protected void navigateToBrokers() {
114+
naviSideBar
115+
.openSideMenu(BROKERS);
116+
brokersList
117+
.waitUntilScreenReady();
118+
}
111119

112120
@Step
113121
protected void navigateToTopics() {
@@ -127,7 +135,57 @@ protected void navigateToTopicsAndOpenDetails(String topicName) {
127135
topicDetails
128136
.waitUntilScreenReady();
129137
}
130-
138+
139+
@Step
140+
protected void navigateToConsumers() {
141+
naviSideBar
142+
.openSideMenu(CONSUMERS);
143+
consumersList
144+
.waitUntilScreenReady();
145+
}
146+
147+
@Step
148+
protected void navigateToSchemaRegistry() {
149+
naviSideBar
150+
.openSideMenu(SCHEMA_REGISTRY);
151+
schemaRegistryList
152+
.waitUntilScreenReady();
153+
}
154+
155+
@Step
156+
protected void navigateToSchemaRegistryAndOpenDetails(String schemaName) {
157+
navigateToSchemaRegistry();
158+
schemaRegistryList
159+
.openSchema(schemaName);
160+
schemaDetails
161+
.waitUntilScreenReady();
162+
}
163+
164+
@Step
165+
protected void navigateToConnectors() {
166+
naviSideBar
167+
.openSideMenu(KAFKA_CONNECT);
168+
kafkaConnectList
169+
.waitUntilScreenReady();
170+
}
171+
172+
@Step
173+
protected void navigateToConnectorsAndOpenDetails(String connectorName) {
174+
navigateToConnectors();
175+
kafkaConnectList
176+
.openConnector(connectorName);
177+
connectorDetails
178+
.waitUntilScreenReady();
179+
}
180+
181+
@Step
182+
protected void navigateToKsqlDb() {
183+
naviSideBar
184+
.openSideMenu(KSQL_DB);
185+
ksqlDbList
186+
.waitUntilScreenReady();
187+
}
188+
131189
@Step
132190
protected void verifyElementsCondition(List<SelenideElement> elementList, Condition expectedCondition) {
133191
SoftAssert softly = new SoftAssert();

kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/manualSuite/suite/TopicsTest.java

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,75 +21,81 @@ public void testCaseA() {
2121
public void testCaseB() {
2222
}
2323

24+
@Automation(state = NOT_AUTOMATED)
25+
@QaseId(21)
26+
@Test()
27+
public void testCaseC() {
28+
}
29+
2430
@Automation(state = NOT_AUTOMATED)
2531
@QaseId(22)
2632
@Test
27-
public void testCaseC() {
33+
public void testCaseD() {
2834
}
2935

3036
@Automation(state = NOT_AUTOMATED)
3137
@QaseId(46)
3238
@Test
33-
public void testCaseD() {
39+
public void testCaseE() {
3440
}
3541

3642
@Automation(state = NOT_AUTOMATED)
3743
@QaseId(47)
3844
@Test
39-
public void testCaseE() {
45+
public void testCaseF() {
4046
}
4147

4248
@Automation(state = NOT_AUTOMATED)
4349
@QaseId(48)
4450
@Test
45-
public void testCaseF() {
51+
public void testCaseG() {
4652
}
4753

4854
@Automation(state = NOT_AUTOMATED)
4955
@QaseId(49)
5056
@Test
51-
public void testCaseG() {
57+
public void testCaseH() {
5258
}
5359

5460
@Automation(state = NOT_AUTOMATED)
5561
@QaseId(50)
5662
@Test
57-
public void testCaseH() {
63+
public void testCaseI() {
5864
}
5965

6066
@Automation(state = NOT_AUTOMATED)
6167
@QaseId(57)
6268
@Test
63-
public void testCaseI() {
69+
public void testCaseJ() {
6470
}
6571

6672
@Automation(state = NOT_AUTOMATED)
6773
@QaseId(58)
6874
@Test
69-
public void testCaseJ() {
75+
public void testCaseK() {
7076
}
7177

7278
@Automation(state = NOT_AUTOMATED)
7379
@QaseId(269)
7480
@Test
75-
public void testCaseK() {
81+
public void testCaseL() {
7682
}
7783

7884
@Automation(state = NOT_AUTOMATED)
7985
@QaseId(270)
8086
@Test
81-
public void testCaseL() {
87+
public void testCaseM() {
8288
}
8389

8490
@Automation(state = NOT_AUTOMATED)
8591
@QaseId(271)
8692
@Test
87-
public void testCaseM() {
93+
public void testCaseN() {
8894
}
8995

9096
@Automation(state = NOT_AUTOMATED)
9197
@QaseId(272)
9298
@Test
93-
public void testCaseN() {
99+
public void testCaseO() {
94100
}
95101
}

kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/SmokeTest.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,20 @@
11
package com.provectus.kafka.ui.smokeSuite;
22

33
import com.codeborne.selenide.Condition;
4+
import com.codeborne.selenide.WebDriverRunner;
45
import com.provectus.kafka.ui.BaseTest;
6+
import io.qameta.allure.Step;
57
import io.qase.api.annotation.QaseId;
8+
import org.testng.Assert;
69
import org.testng.annotations.Test;
710

811
import java.util.stream.Collectors;
912
import java.util.stream.Stream;
1013

14+
import static com.provectus.kafka.ui.settings.BaseSource.BROWSER;
15+
import static com.provectus.kafka.ui.variables.Browser.LOCAL;
16+
import static com.provectus.kafka.ui.variables.Url.*;
17+
1118
public class SmokeTest extends BaseTest {
1219

1320
@QaseId(198)
@@ -20,4 +27,28 @@ public void checkBasePageElements() {
2027
Stream.concat(topPanel.getAllEnabledElements().stream(), naviSideBar.getAllMenuButtons().stream())
2128
.collect(Collectors.toList()), Condition.enabled);
2229
}
30+
31+
@QaseId(45)
32+
@Test
33+
public void checkUrlWhileNavigating() {
34+
navigateToBrokers();
35+
verifyCurrentUrl(BROKERS_LIST_URL);
36+
navigateToTopics();
37+
verifyCurrentUrl(TOPICS_LIST_URL);
38+
navigateToConsumers();
39+
verifyCurrentUrl(CONSUMERS_LIST_URL);
40+
navigateToSchemaRegistry();
41+
verifyCurrentUrl(SCHEMA_REGISTRY_LIST_URL);
42+
navigateToConnectors();
43+
verifyCurrentUrl(KAFKA_CONNECT_LIST_URL);
44+
navigateToKsqlDb();
45+
verifyCurrentUrl(KSQL_DB_LIST_URL);
46+
}
47+
48+
@Step
49+
private void verifyCurrentUrl(String expectedUrl) {
50+
String host = BROWSER.equals(LOCAL) ? "localhost" : "host.testcontainers.internal";
51+
Assert.assertEquals(WebDriverRunner.getWebDriver().getCurrentUrl(),
52+
String.format(expectedUrl, host), "getCurrentUrl()");
53+
}
2354
}

kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/brokers/BrokersTest.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,10 @@
22

33
import com.codeborne.selenide.Condition;
44
import com.provectus.kafka.ui.BaseTest;
5-
import io.qameta.allure.Step;
65
import io.qase.api.annotation.QaseId;
76
import org.testng.Assert;
87
import org.testng.annotations.Test;
98

10-
import static com.provectus.kafka.ui.pages.NaviSideBar.SideMenuOption.BROKERS;
119
import static com.provectus.kafka.ui.pages.brokers.BrokersDetails.DetailsTab.CONFIGS;
1210

1311
public class BrokersTest extends BaseTest {
@@ -40,12 +38,4 @@ public void checkExistingBrokersInCluster() {
4038
verifyElementsCondition(brokersConfigTab.getEditButtons(), Condition.enabled);
4139
Assert.assertTrue(brokersConfigTab.isSearchByKeyVisible(), "isSearchByKeyVisible()");
4240
}
43-
44-
@Step
45-
private void navigateToBrokers() {
46-
naviSideBar
47-
.openSideMenu(BROKERS);
48-
brokersList
49-
.waitUntilScreenReady();
50-
}
5141
}

kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/connectors/ConnectorsTest.java

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import com.provectus.kafka.ui.BaseTest;
44
import com.provectus.kafka.ui.models.Connector;
55
import com.provectus.kafka.ui.models.Topic;
6-
import io.qameta.allure.Step;
76
import io.qase.api.annotation.QaseId;
87
import org.testng.Assert;
98
import org.testng.annotations.AfterClass;
@@ -14,7 +13,6 @@
1413
import java.util.List;
1514

1615
import static com.provectus.kafka.ui.pages.BasePage.AlertHeader.SUCCESS;
17-
import static com.provectus.kafka.ui.pages.NaviSideBar.SideMenuOption.KAFKA_CONNECT;
1816
import static com.provectus.kafka.ui.utilities.FileUtils.getResourceAsString;
1917
import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic;
2018

@@ -107,21 +105,4 @@ public void afterClass() {
107105
apiService.deleteConnector(CONNECT_NAME, connector.getName()));
108106
TOPIC_LIST.forEach(topic -> apiService.deleteTopic(topic.getName()));
109107
}
110-
111-
@Step
112-
private void navigateToConnectors() {
113-
naviSideBar
114-
.openSideMenu(KAFKA_CONNECT);
115-
kafkaConnectList
116-
.waitUntilScreenReady();
117-
}
118-
119-
@Step
120-
private void navigateToConnectorsAndOpenDetails(String connectorName) {
121-
navigateToConnectors();
122-
kafkaConnectList
123-
.openConnector(connectorName);
124-
connectorDetails
125-
.waitUntilScreenReady();
126-
}
127108
}

kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/ksqlDb/KsqlDbTest.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import org.testng.annotations.Test;
99
import org.testng.asserts.SoftAssert;
1010

11-
import static com.provectus.kafka.ui.pages.NaviSideBar.SideMenuOption.KSQL_DB;
1211
import static com.provectus.kafka.ui.pages.ksqlDb.enums.KsqlQueryConfig.SHOW_TABLES;
1312
import static org.apache.commons.lang3.RandomStringUtils.randomAlphabetic;
1413

@@ -34,10 +33,8 @@ public void beforeClass() {
3433
@QaseId(41)
3534
@Test(priority = 1)
3635
public void checkShowTablesRequestExecution() {
37-
naviSideBar
38-
.openSideMenu(KSQL_DB);
36+
navigateToKsqlDb();
3937
ksqlDbList
40-
.waitUntilScreenReady()
4138
.clickExecuteKsqlRequestBtn();
4239
ksqlQueryForm
4340
.waitUntilScreenReady()
@@ -53,10 +50,8 @@ public void checkShowTablesRequestExecution() {
5350
@QaseId(86)
5451
@Test(priority = 2)
5552
public void clearResultsForExecutedRequest() {
56-
naviSideBar
57-
.openSideMenu(KSQL_DB);
53+
navigateToKsqlDb();
5854
ksqlDbList
59-
.waitUntilScreenReady()
6055
.clickExecuteKsqlRequestBtn();
6156
ksqlQueryForm
6257
.waitUntilScreenReady()

kafka-ui-e2e-checks/src/test/java/com/provectus/kafka/ui/smokeSuite/schemas/SchemasTest.java

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import com.provectus.kafka.ui.BaseTest;
55
import com.provectus.kafka.ui.api.model.CompatibilityLevel;
66
import com.provectus.kafka.ui.models.Schema;
7-
import io.qameta.allure.Step;
87
import io.qase.api.annotation.QaseId;
98
import org.testng.Assert;
109
import org.testng.annotations.AfterClass;
@@ -15,7 +14,6 @@
1514
import java.util.ArrayList;
1615
import java.util.List;
1716

18-
import static com.provectus.kafka.ui.pages.NaviSideBar.SideMenuOption.SCHEMA_REGISTRY;
1917
import static com.provectus.kafka.ui.utilities.FileUtils.fileToString;
2018

2119
public class SchemasTest extends BaseTest {
@@ -188,21 +186,4 @@ public void deleteSchemaProtobuf() {
188186
public void afterClass() {
189187
SCHEMA_LIST.forEach(schema -> apiService.deleteSchema(schema.getName()));
190188
}
191-
192-
@Step
193-
private void navigateToSchemaRegistry() {
194-
naviSideBar
195-
.openSideMenu(SCHEMA_REGISTRY);
196-
schemaRegistryList
197-
.waitUntilScreenReady();
198-
}
199-
200-
@Step
201-
private void navigateToSchemaRegistryAndOpenDetails(String schemaName) {
202-
navigateToSchemaRegistry();
203-
schemaRegistryList
204-
.openSchema(schemaName);
205-
schemaDetails
206-
.waitUntilScreenReady();
207-
}
208189
}

0 commit comments

Comments
 (0)