add Feature and Description, add test on assign several devices

This commit is contained in:
Seraphym-Tuhai 2023-05-17 18:04:21 +03:00
parent c53ed73ac2
commit 253e82b6c8

View File

@ -15,6 +15,8 @@
*/
package org.thingsboard.server.msa.ui.tests.devicessmoke;
import io.qameta.allure.Description;
import io.qameta.allure.Feature;
import org.openqa.selenium.WebElement;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
@ -27,16 +29,20 @@ import org.thingsboard.server.msa.ui.pages.CustomerPageHelper;
import org.thingsboard.server.msa.ui.tabs.AssignDeviceTabHelper;
import org.thingsboard.server.msa.ui.utils.EntityPrototypes;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
import static org.thingsboard.server.msa.ui.base.AbstractBasePage.random;
import static org.thingsboard.server.msa.ui.utils.Const.ENTITY_NAME;
@Feature("Assign to customer")
public class AssignToCustomerTest extends AbstractDeviceTest {
private AssignDeviceTabHelper assignDeviceTab;
private CustomerPageHelper customerPage;
private CustomerId customerId;
private Device device;
private Device device1;
private String customerName;
@BeforeClass
@ -46,12 +52,14 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
Customer customer = testRestClient.postCustomer(EntityPrototypes.defaultCustomerPrototype(ENTITY_NAME + random()));
customerId = customer.getId();
customerName = customer.getName();
device1 = testRestClient.postDevice("", EntityPrototypes.defaultDevicePrototype("Device " + random()));
}
@AfterClass
public void deleteCustomer() {
deleteCustomerById(customerId);
deleteCustomerByName("Public");
deleteDeviceByName(device1.getName());
}
@BeforeMethod
@ -60,7 +68,8 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
deviceName = device.getName();
}
@Test
@Test(groups = "smoke")
@Description("Assign to customer by right side of device btn")
public void assignToCustomerByRightSideBtn() {
sideBarMenuView.goToDevicesPage();
devicePage.assignBtn(deviceName).click();
@ -74,7 +83,8 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
assertIsDisplayed(devicePage.device(deviceName));
}
@Test
@Test(groups = "smoke")
@Description("Assign to customer by 'Assign to customer' btn on details tab")
public void assignToCustomerFromDetailsTab() {
sideBarMenuView.goToDevicesPage();
devicePage.device(deviceName).click();
@ -93,7 +103,8 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
assertIsDisplayed(devicePage.device(deviceName));
}
@Test
@Test(groups = "smoke")
@Description("Assign marked device by btn on the top")
public void assignToCustomerMarkedDevice() {
sideBarMenuView.goToDevicesPage();
devicePage.assignMarkedDevices(deviceName);
@ -107,7 +118,8 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
assertIsDisplayed(devicePage.device(deviceName));
}
@Test
@Test(groups = "smoke")
@Description("Unassign from customer by right side of device btn")
public void unassignedFromCustomerByRightSideBtn() {
device.setCustomerId(customerId);
testRestClient.postDevice("", device);
@ -122,7 +134,8 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
devicePage.assertEntityIsNotPresent(deviceName);
}
@Test
@Test(groups = "smoke")
@Description("Unassign from customer by 'Unassign from customer' btn on details tab")
public void unassignedFromCustomerFromDetailsTab() {
device.setCustomerId(customerId);
testRestClient.postDevice("", device);
@ -141,7 +154,8 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
devicePage.assertEntityIsNotPresent(deviceName);
}
@Test
@Test(groups = "smoke")
@Description("Can't assign device on several customer")
public void assignToSeveralCustomer() {
device.setCustomerId(customerId);
testRestClient.postDevice("", device);
@ -150,11 +164,30 @@ public class AssignToCustomerTest extends AbstractDeviceTest {
assertIsDisable(devicePage.assignBtnVisible(deviceName));
}
@Test
@Test(groups = "smoke")
@Description("Can't assign public device")
public void assignPublicDevice() {
testRestClient.setDevicePublic(device.getId());
sideBarMenuView.goToDevicesPage();
assertIsDisable(devicePage.assignBtnVisible(deviceName));
}
@Test(groups = "smoke")
@Description("Assign several devices by btn on the top")
public void assignSeveralDevices() {
sideBarMenuView.goToDevicesPage();
devicePage.assignMarkedDevices(deviceName, device1.getName());
assignDeviceTab.assignOnCustomer(customerName);
assertIsDisplayed(devicePage.deviceCustomerOnPage(deviceName));
assertThat(devicePage.deviceCustomerOnPage(deviceName).getText())
.as("Customer added correctly").isEqualTo(customerName);
assertThat(devicePage.deviceCustomerOnPage(device1.getName()).getText())
.as("Customer added correctly").isEqualTo(customerName);
sideBarMenuView.customerBtn().click();
customerPage.manageCustomersDevicesBtn(customerName).click();
List.of(deviceName, device1.getName()).
forEach(d -> assertIsDisplayed(devicePage.device(d)));
}
}