-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAmazon_test.java
More file actions
76 lines (51 loc) · 1.93 KB
/
Amazon_test.java
File metadata and controls
76 lines (51 loc) · 1.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
package pom.amazon.amazon;
import java.time.Duration;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import io.github.bonigarcia.wdm.WebDriverManager;
public class Amazon_test {
@DataProvider(name = "BookData")
public Object[][] getData() {
return JsonReader.getBookData();
}
WebDriver driver;
@BeforeMethod
public void setup() {
driver = new ChromeDriver();
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(Duration.ofSeconds(10));
driver.get("https://www.amazon.in");
}
@Test(dataProvider = "BookData")
public void Amazon_books(String bookName) throws InterruptedException {
// TODO Auto-generated method stub
WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10));
WebElement booksOption = driver.findElement(
By.xpath("//select[@id='searchDropdownBox']/option[text()='Books']"));
booksOption.click();
WebElement searchBox = driver.findElement(By.id("twotabsearchtextbox"));
searchBox.clear();
searchBox.sendKeys(bookName);
searchBox.sendKeys(Keys.ENTER);
Thread.sleep(3000);
WebElement price = wait
.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("(//span[@class='a-price-whole'])[1]")));
System.out.println("Book Name: " + bookName);
System.out.println("Price: " + price.getText());
System.out.println("----------------------");
}
@AfterMethod
public void tearDown() {
driver.quit();
}
}