-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
Copy pathSelectDropdownElementLiveTest.cs
121 lines (77 loc) · 3.47 KB
/
SelectDropdownElementLiveTest.cs
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Support.UI;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.Edge;
namespace SelectDropdownOptionUsingSeleniumWebDriverTests;
public class SelectDropdownElementLiveTest
{
[Fact]
public void GivenTestInChrome_WhenDropdownElementIsSelectedByText_ThenOptionValueIsReturned()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("https://localhost:7006/");
var dropdown = driver.FindElement(By.Id("programming-language"));
var selectElement = new SelectElement(dropdown);
selectElement.SelectByText("JavaScript");
Assert.Equal("javascript", selectElement.SelectedOption.GetAttribute("value"));
driver.Quit();
}
[Fact]
public void GivenTestInChrome_WhenDropdownElementIsSelectedByIndex_ThenOptionValueIsReturned()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("https://localhost:7006/");
var dropdown = driver.FindElement(By.Id("programming-language"));
var selectElement = new SelectElement(dropdown);
selectElement.SelectByIndex(0);
Assert.Equal("csharp", selectElement.SelectedOption.GetAttribute("value"));
driver.Quit();
}
[Fact]
public void GivenTestInChrome_WhenDropdownElementIsSelectedByValue_ThenOptionValueIsReturned()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("https://localhost:7006/");
var dropdown = driver.FindElement(By.Id("programming-language"));
var selectElement = new SelectElement(dropdown);
selectElement.SelectByValue("php");
Assert.Equal("php", selectElement.SelectedOption.GetAttribute("value"));
driver.Quit();
}
[Fact]
public void GivenTestInChrome_WhenDropdownElementIsSelectedByXPath_ThenOptionValueIsReturned()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("https://localhost:7006/");
var option = driver.FindElement(
By.XPath("//select[@id='programming-language']/option[@value='typescript']"));
string selectedOptionValue = option.GetAttribute("value");
Assert.Equal("typescript", selectedOptionValue);
driver.Quit();
}
[Fact]
public void GivenTestInFirefox_WhenDropdownElementIsSelectedByText_ThenOptionValueIsReturned()
{
FirefoxDriverService service = FirefoxDriverService.CreateDefaultService();
IWebDriver driver = new FirefoxDriver(service);
driver.Navigate().GoToUrl("https://localhost:7006/");
var dropdown = driver.FindElement(By.Id("programming-language"));
var selectElement = new SelectElement(dropdown);
selectElement.SelectByText("Java");
Assert.Equal("java", selectElement.SelectedOption.GetAttribute("value"));
driver.Quit();
}
[Fact]
public void GivenTestInEdge_WhenDropdownElementIsSelectedByText_ThenOptionValueIsReturned()
{
EdgeDriverService service = EdgeDriverService.CreateDefaultService();
IWebDriver driver = new EdgeDriver(service);
driver.Navigate().GoToUrl("https://localhost:7006/");
var dropdown = driver.FindElement(By.Id("programming-language"));
var selectElement = new SelectElement(dropdown);
selectElement.SelectByText("Rust");
Assert.Equal("rust", selectElement.SelectedOption.GetAttribute("value"));
driver.Quit();
}
}