Selenium Tutorial C# cu Exemplu NUnit
Selenium Descriere
Selenium este un web cu sursฤ deschisฤ Testarea automatizฤrii instrument care acceptฤ mai multe browsere ศi mai multe sisteme de operare. Le permite testerilor sฤ foloseascฤ mai multe limbaje de programare, cum ar fi Java, C#, Python, .Net, Ruby, PHP ศi Perl pentru codarea testelor automate.
Prezentare generalฤ C#
C# este un limbaj de programare orientat pe obiecte derivat din C++ ศi Java. C# permite dezvoltatorilor sฤ construiascฤ aplicaศii folosind Visual Studio pe platforma .Net. Urmฤtoarele sunt caracteristicile cheie ale C#.
- Este un limbaj de programare orientat pe obiecte
- Suportฤ dezvoltarea de consolฤ, Windows ศi aplicaศii bazate pe web
- Oferฤ funcศii precum รฎncapsularea, moศtenirea ศi polimorfismul.
Sintaxa de bazฤ a C#
Un program รฎn C# trebuie sฤ conศinฤ urmฤtoarele secศiuni
- Declaraศie de spaศiu de nume
- Clase
- Atribute ศi metode de clasฤ
- Metoda principalฤ
- Declaraศii de program
Exemplu-
Mai jos este o mostrฤ Selenium Exemplu de program C# pentru a tipฤri textul โGuru99โ pe consola sistemului.
using System;
namespace FirstProgram {
class DemoPrint {
static void main(){
Console.WriteLine("Guru99");
}
}
}
Explicaลฃie:
- Un spaศiu de nume รฎn cele de mai sus Selenium Exemplul C# este o colecศie de mai multe clase. Fiecare spaศiu de nume trebuie declarat folosind cuvรขntul cheie โutilizareโ.
- Prima declaraศie a codului include spaศiul de nume โSystemโ รฎn programul nostru. Spaศiul de nume de sistem defineศte clasele ศi evenimentele fundamentale utilizate รฎn C#. Spaศiul de nume care trebuie utilizat depinde de cerinศele programului.
- A doua declaraศie este declararea unui spaศiu de nume โFirstProgramโ pentru clasa โDemoPrintโ. Fiศierul AC# poate conศine mai multe clase รฎn acelaศi spaศiu de nume.
- A treia declaraศie include declaraศia de clasฤ. O clasฤ poate conศine mai multe atribute ศi mai multe metode.
- A patra instrucศiune include o declaraศie a metodei Main. Metoda principalฤ este punctul de intrare de execuศie pentru fiecare clasฤ.
- Ultima declaraศie este sintaxa C# folositฤ pentru tipฤrirea unei instrucศiuni pe consolฤ. WriteLine este o metodฤ din clasa โConsole.
Selenium cu C# Setup
Cum se configureazฤ Visual Studio cu Selenium WebDriver:
Acum รฎn asta Selenium Tutorial C#, haideศi sฤ รฎnvฤศฤm procesul pas cu pas pentru a configura Visual Studio Selenium WebDriver:
Visual Studio este un mediu de dezvoltare integrat (IDE) care este utilizat de dezvoltatori pentru a construi aplicaศii pe mai multe platforme, cum ar fi Windows, Android, iOS ศi aplicaศii bazate pe cloud.
Pas 1) Navigaศi la adresa URL
https://visualstudio.microsoft.com/downloads/ ศi faceศi clic pe 'Descฤrcare gratuitฤ' butonul afiศat รฎn fila Comunitate Visual Studio
Pas 2) Deschideศi exe descฤrcat. Faceศi clic pe โDaโ dacฤ vi se solicitฤ drepturi de administrator.
Pas 3) Va apฤrea fereastra de mai jos. Faceศi clic pe butonul โContinuareโ.
Fiศierele vor fi descฤrcate aศa cum se aratฤ รฎn fereastra de mai jos.
Pas 4) รn ecranul urmฤtor,
Bifaศi casetele de selectare pentru
- Universal Windows Dezvoltarea platformei
- Dezvoltare desktop .Net
Faceศi clic pe โInstalareโ.
Aศteptaศi finalizarea instalฤrii fiecฤrei componente. Fiศierele au o dimensiune de 16 GB ศi vor dura timp.
Pas 5) Va fi afiศat pop-up-ul de mai jos. Faceศi clic pe butonul โReporniศiโ.
Pas 6) Odatฤ ce aparatul este repornit, cฤutaศi โVisual Studioโ รฎn meniul de pornire ศi faceศi clic pe rezultatul cฤutฤrii. Va apฤrea urmฤtorul pop-up. Faceศi clic pe linkul โNu acum, poate mai tรขrziuโ dacฤ nu aveศi un cont existent.
Pas 7) รn ecranul urmฤtor,
- Selectaศi tema de culoare pe placul dvs
- Faceศi clic pe butonul โPorniศi Visual Studioโ
Pas 8) Va apฤrea ecranul โรncepeศiโ Visual Studio.
Creaศi un nou proiect รฎn Visual Studio:
Pas 1) รn meniul Fiศier, faceศi clic pe Nou > Proiect
Pas 2) รn ecranul urmฤtor,
- Selectaศi opศiunea โVisual C#โ
- Faceศi clic pe Console App (.Net Framework)
- Introduceศi numele ca โGuru99โ
- Faceศi clic pe OK
Pas 3) Ecranul de mai jos va fi afiศat odatฤ ce proiectul este creat cu succes.
Configuraศi Visual Studio cu Selenium WebDriver:
Pas 1) Navigaศi la Instrumente -> NuGet Manager de pachete -> Gestionaศi NuGet Pachete pentru soluศie
Pas 2) รn ecranul urmฤtor
- Cautฤ Selenium pe ecranul rezultat
- Selectaศi primul rezultat al cฤutฤrii
- Bifaศi caseta de selectare a proiectului
- Faceศi clic pe โInstalareโ
Pas 3) Faceศi clic pe butonul โOKโ din ecranul pop-up
Pas 4) Mesajul de mai jos va fi afiศat odatฤ ce pachetul este instalat cu succes.
Cadrul NUnit: Prezentare generalฤ
NUnit este Testarea unitฤศii framework susศinut de Visual Studio ศi Selenium WebDriver. NUnit este cel mai utilizat cadru de testare unitarฤ pentru aplicaศiile .Net. NUnit prezintฤ rezultatele testelor รฎntr-un format care poate fi citit ศi permite unui tester sฤ depaneze testele automate.
Trebuie sฤ instalฤm NUnit Framework ศi NUnit Test Adapter pe Visual Studio pentru a le folosi.
Paศi pentru a instala NUnit Framework
Acum รฎn asta Selenium cu tutorialul C#, sฤ รฎnvฤศฤm procesul de instalare a cadrului NUnit:
Pas 1) Navigaศi la Instrumente -> NuGet Manager de pachete -> Gestionaศi NuGet Pachete pentru soluศie
Pas 2) รn fereastra urmฤtoare
- Cฤutaศi NUnit
- Selectaศi rezultatul cฤutฤrii
- Selectaศi Proiect
- Faceศi clic pe Instalare
Pas 3) Va apฤrea fereastra de mai jos. Faceศi clic pe butonul โOkโ.
Pas 4) Mesajul de mai jos va apฤrea dupฤ finalizarea instalฤrii.
Paศi pentru a descฤrca NUnit Test Adapter
Acum, รฎn acest tutorial NUnit, vom acoperi paศii pentru a descฤrca NUnit Test Adapter:
Vฤ rugฤm sฤ reศineศi cฤ paศii de mai jos funcศioneazฤ numai pentru maศinile pe 32 de biศi. Pentru maศinile pe 64 de biศi, trebuie sฤ descฤrcaศi โNunit3 Test Adapterโ urmรขnd acelaศi proces menศionat mai jos.
Pas 1) Navigaศi la Instrumente ->NuGet Manager de pachete -> Gestionaศi NuGet Pachete pentru soluศie. รn acel ecran,
- Cฤutaศi NUnitTestAdapter
- Faceศi clic pe Rezultatul cฤutฤrii
- Selectaศi Proiect
- Faceศi clic pe Instalare
Pas 2) Faceศi clic pe OK รฎn fereastra pop-up de confirmare. Odatฤ ce instalarea este finalizatฤ, veศi vedea urmฤtorul mesaj -
Selenium ศi cadrul NUnit
Integrarea seleniului cu cadrul NUnit permite unui tester sฤ facฤ diferenศa รฎntre diferitele clase de testare. NUnit permite, de asemenea, testerilor sฤ foloseascฤ adnotฤri precum SetUp, Test ศi TearDown pentru a efectua acศiuni รฎnainte ศi dupฤ rularea testului.
Cadrul NUnit poate fi integrat Selenium prin crearea unei clase de testare NUnit ศi rularea clasei de testare folosind cadrul NUnit.
Mai jos, paศii รฎn acest sens Selenium Tutorialul de framework C# este necesar pentru a crea ศi rula o clasฤ de testare folosind cadrul NUnit.
Paศi pentru a crea o clasฤ NUnit Test รฎn Selenium:
Pas 1) รn Solution Explorer, faceศi clic dreapta pe proiect > Adฤugaศi > Clasฤ
Pas 2) Va apฤrea fereastra de creare a clasei.
- Furnizaศi un nume clasei
- Faceศi clic pe butonul Adฤugaศi
Pas 3) Va apฤrea ecranul de mai jos.
Pas 4) Adฤugaศi urmฤtorul cod la clasa creatฤ. Vฤ rugฤm sฤ reศineศi cฤ trebuie sฤ specificaศi locaศia fiศierului โchromdriver.exeโ รฎn timpul iniศializฤrii driverului Chrome.
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Firefox;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Guru99Demo
{
class Guru99Demo
{
IWebDriver driver;
[SetUp]
public void startBrowser()
{
driver = new ChromeDriver("D:\\3rdparty\\chrome");
}
[Test]
public void test()
{
driver.Url = "http://www.google.co.in";
}
[TearDown]
public void closeBrowser()
{
driver.Close();
}
}
}
Pas 4) Faceศi clic pe โBuildโ -> โBuild Solutionโ
NOTฤ: Este posibil sฤ primiศi o eroare precum โNu conศine o metodฤ staticฤ โprincipalฤโ potrivitฤ pentru un punct de intrareโ atunci cรขnd construiศi
Pentru a rezolva acest lucru, Am ajuns la Proiect > Proprietฤศi ศi schimbaศi Tipul de ieศire รฎn โBiblioteca de clasฤโ. Valoarea implicitฤ este โAplicaศie de consolฤโ.
Pas 5) Odatฤ ce construirea are succes, trebuie sฤ deschidem fereastra Test Explorer. Faceศi clic pe Test -> Windows -> Test Explorer
Pas 6) Fereastra Test Explorer se deschide cu lista de teste disponibile. Faceศi clic dreapta pe Test Explorer ศi selectaศi Run Selected Tests
Pas 7) Selenium trebuie sฤ deschidฤ browserul cu adresa URL specificatฤ ศi sฤ รฎnchidฤ browserul. Starea cazului de testare va fi schimbatฤ รฎn โPassโ รฎn fereastra Test Explorer.
Selenium Comenzi WebDriver รฎn C#
C# foloseศte interfaศa โIWebDriverโ pentru interacศiunile cu browserul. Urmฤtoarele sunt categoriile de comenzi disponibile cu Selenium รฎn C#.
- Comenzi de browser
- Comenzi Web Element
- Comenzi derulante
Acum รฎn Selenium Tutorial C Sharp, haideศi sฤ studiem Selenium Comenzile WebDriver una cรขte una
Comenzi browser:
Mai jos este o listฤ de comenzi de browser disponibile รฎn C# cu Selenium.
| Numele comenzii | Descriere | Sintaxฤ |
|---|---|---|
| Comanda URL | Aceastฤ comandฤ este utilizatฤ pentru a deschide o adresฤ URL specificatฤ รฎn browser. |
driver.Url = "https://www.guru99.com" |
| Comanda titlului | Aceastฤ comandฤ este folositฤ pentru a prelua titlul paginii web care este deschisฤ รฎn prezent |
String title = driver.Title |
| Comanda PageSource | Aceastฤ comandฤ este folositฤ pentru a prelua codul sursฤ al paginii web care este deschisฤ รฎn prezent. |
String pageSource = driver.PageSource |
| รnchideศi comanda | Aceastฤ comandฤ este folositฤ pentru a รฎnchide instanศa de browser deschisฤ recent. |
driver.Close(); |
| Ieศiศi din comandฤ | Aceastฤ comandฤ este folositฤ pentru a รฎnchide toate instanศele de browser deschise |
driver.Quit(); |
| Comanda รฎnapoi | Aceastฤ comandฤ este utilizatฤ pentru a naviga la pagina anterioarฤ a istoricului browserului. |
driver.Navigate().Back(); |
| Comandฤ รฎnainte | Aceastฤ comandฤ este utilizatฤ pentru a naviga la urmฤtoarea paginฤ a istoricului browserului. |
driver.Navigate().Forward() |
| Comanda de reรฎmprospฤtare | Aceastฤ comandฤ este utilizatฤ pentru a efectua reรฎmprospฤtarea browserului. |
driver.Navigate().Refresh() |
Comenzi Webelement
Un Webelement reprezintฤ toate elementele dintr-o paginฤ web. Ele sunt reprezentate de etichete HTML. Fiecare dintre butoanele, casetele de text, linkurile, imaginile, tabelele ศi cadrele se รฎncadreazฤ รฎn Webelements. Operaacศiunile pe elemente web pot fi declanศate folosind interfaศa IWebelement. Pentru a interacศiona cu un Webelement, trebuie sฤ gฤsim elementul pe pagina web ศi apoi sฤ efectuฤm operaศiuni pe acesta. Instrumente precum Firebug ศi Firepath pot fi folosite pentru a identifica Xpath de Webelement.
Urmฤtoarele sunt lista comenzilor Webelement disponibile รฎn C#.
| Numele comenzii | Descriere | Sintaxฤ |
|---|---|---|
| Faceศi clic pe comandฤ | Aceastฤ comandฤ este folositฤ pentru a face clic pe un element Web. Pentru ca elementul sฤ poatฤ fi fฤcut clic, acesta trebuie sฤ fie vizibil pe pagina web. Aceastฤ comandฤ este folositฤ ศi pentru operaศiunile cu casetele de selectare ศi butoanele radio. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); element.Click();
|
| ศterge comanda | Aceastฤ comandฤ este utilizatฤ รฎn mod special pentru ศtergerea conศinutului existent al casetelor de text. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
element.Clear();
|
| Comanda SendKeys | Aceastฤ comandฤ este folositฤ pentru a introduce o valoare รฎn casetele de text. Valoarea care trebuie introdusฤ trebuie transmisฤ ca parametru cฤtre |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
element.SendKeys("guru99");
|
| Comanda afiศatฤ | Aceastฤ comandฤ este utilizatฤ pentru a identifica dacฤ un anumit element este afiศat pe pagina web. Aceastฤ comandฤ returneazฤ o valoare booleanฤ; adevฤrat sau fals รฎn funcศie de vizibilitatea elementului web. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
Boolean status = element.Displayed;
|
| Comanda activatฤ | Aceastฤ comandฤ este utilizatฤ pentru a identifica dacฤ un anumit element web este activat pe pagina web. Aceastฤ comandฤ returneazฤ o valoare booleanฤ; adevฤrat sau fals ca urmare. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
Boolean status = element.Enabled;
|
| Comanda selectatฤ | Aceastฤ comandฤ este utilizatฤ pentru a identifica dacฤ este selectat un anumit element web. Aceastฤ comandฤ este utilizatฤ pentru casete de selectare, butoane radio ศi operaศiuni de selectare. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
Boolean status = element.Selected;
|
| Trimite comanda: | Aceastฤ comandฤ este similarฤ cu comanda click, diferenศa constฤ รฎn faptul cฤ formularul HTML are un buton cu tipul Submit. รn timp ce comanda de clic dฤ clic pe orice buton, comanda de trimitere dฤ clic pe singurele butoane cu tipul de trimitere. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); element.submit();
|
| Comandฤ text | Aceastฤ comandฤ returneazฤ textul interior al unui element Web. Aceastฤ comandฤ returneazฤ o valoare ศir ca rezultat. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
String text=element.Text;
|
| Comanda TagName | Aceastฤ comandฤ returneazฤ eticheta HTML a unui element web. Returneazฤ o valoare ศir ca rezultat. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); String tagName = element.TagName;
|
| Comanda GetCSSValue: | Aceastฤ metodฤ este folositฤ pentru a returna culoarea unui element web sub forma unui ศir rgba (Roศu, Verde, Albastru ศi Alfa). |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
String color = element.getCSSValue;
producศieโ Dacฤ culoarea elementului este roศie, ieศirea ar fi rgba(255,0,0,1) |
Comenzi derulante:
Operaศiile dropdown รฎn C# pot fi realizate folosind clasa SelectElement.
Urmฤtoarele sunt diferitele operaศiuni derulante disponibile รฎn C#.
| Numele comenzii | Descriere | Sintaxฤ |
|---|---|---|
| Comanda SelectByText | Aceastฤ comandฤ selecteazฤ o opศiune dintr-un meniu vertical pe baza textului opศiunii. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
select.SelectByText("Guru99");
|
| Comanda SelectByIndex | Aceastฤ comandฤ este folositฤ pentru a selecta o opศiune pe baza indexului acesteia. Indicele derulant รฎncepe de la 0. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
select.SelectByIndex("4");
|
| Comanda SelectByValue | Aceastฤ comandฤ este utilizatฤ pentru a selecta o opศiune รฎn funcศie de valoarea acesteia. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
select.SelectByValue("Guru99");
|
| Comanda Opศiuni | Aceastฤ comandฤ este utilizatฤ pentru a prelua lista de opศiuni afiศate รฎntr-un meniu vertical. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
List<IWebelement> options = select. Options;
int size = options.Count;
for(int i=0;i<options.size();i++)
{
String value = size.elementAt(i).Text;
Console.writeLine(value);
}
Codul de mai sus imprimฤ toate opศiunile pe consolฤ รฎntr-un meniu vertical. |
| Comanda IsMultiple | Aceastฤ comandฤ este utilizatฤ pentru a identifica dacฤ un meniu derulant este un meniu derulant cu selecศie multiplฤ; Un meniu derulant cu selecศie multiplฤ permite utilizatorului sฤ selecteze mai mult de o opศiune dintr-un meniu derulant simultan. Aceastฤ comandฤ returneazฤ o valoare booleanฤ. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
Boolean status = select.IsMultiple();
|
| Comanda DeSelectAll | Aceastฤ comandฤ este utilizatฤ รฎn meniurile derulante cu selecศie multiplฤ. ศterge opศiunile care au fost deja selectate. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
select.DeSelectAll();
|
| Comanda DeSelectByIndex | Aceastฤ comandฤ deselecteazฤ o valoare deja selectatฤ folosind indexul acesteia. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
select.DeSelectByIndex("4");
|
| Comanda DeSelectByValue | Aceastฤ comandฤ deselecteazฤ o valoare deja selectatฤ folosind valoarea acesteia. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
select.DeSelectByValue("Guru99");
|
| Comanda DeSelectByText | Aceastฤ comandฤ deselecteazฤ o valoare deja selectatฤ folosind textul acesteia. |
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));
SelectElement select = new SelectElement(element);
select.DeSelectByText("Guru99");
|
Exemple de cod
Exemplul 1: Faceศi clic pe un link utilizรขnd XPATH Locator:
Scenariul de testare:
- Navigaศi la pagina web Demo Guru99 โ https://demo.guru99.com/test/guru99home/
- Maximizaศi fereastra
- Faceศi clic pe meniul โTestareโ.
- รnchideศi browserul
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Guru99Demo
{
class CSS
{
IWebDriver m_driver;
[Test]
public void cssDemo()
{
m_driver = new ChromeDriver("D:\\3rdparty\\chrome");
m_driver.Url = "https://demo.guru99.com/test/guru99home/";
m_driver.Manage().Window.Maximize();
IWebelement link = m_driver.FindElement(By.XPath(".//*[@id='rt-header']//div[2]/div/ul/li[2]/a"));
link.Click();
m_driver.Close();
}
}
}
Exemplul 2: Introducerea datelor รฎn textBox ศi faceศi clic pe un buton folosind XPATH locator:
Scenariul de testare:
- Navigaศi la pagina demonstrativฤ Guru 99 โ https://demo.guru99.com/test/guru99home/
- Introduceศi datele รฎn caseta de text de e-mail
- Faceศi clic pe butonul de รฎnregistrare
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Guru99Demo
{
class CSS
{
IWebDriver m_driver;
[Test]
public void cssDemo()
{
m_driver = new ChromeDriver("G:\\");
m_driver.Url = "https://demo.guru99.com/test/guru99home/";
m_driver.Manage().Window.Maximize();
// Store locator values of email text box and sign up button
IWebElement emailTextBox = m_driver.FindElement(By.XPath(".//*[@id='philadelphia-field-email']"));
IWebElement signUpButton = m_driver.FindElement(By.XPath(".//*[@id='philadelphia-field-submit']"));
emailTextBox.SendKeys("[email protected]");
signUpButton.Click();
}
}
}
Exemplul 3: Introducerea datelor รฎn textBox ศi faceศi clic pe un buton folosind locatorul CSS:
Scenariul de testare:
- Navigaศi la pagina demonstrativฤ Guru 99 โ https://demo.guru99.com/test/guru99home/
- Introduceศi datele รฎn caseta de text de e-mail
- Faceศi clic pe butonul de รฎnregistrare
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Guru99Demo
{
class CSS
{
IWebDriver m_driver;
[Test]
public void cssDemo()
{
m_driver = new ChromeDriver("G:\\");
m_driver.Url = "https://demo.guru99.com/test/guru99home/";
m_driver.Manage().Window.Maximize();
// Store locator values of email text box and sign up button
IWebElement emailTextBox = m_driver.FindElement(By.CssSelector("input[id=philadelphia-field-email]"));
IWebElement signUpButton = m_driver.FindElement(By.CssSelector("input[id=philadelphia-field-submit]"));
emailTextBox.SendKeys("[email protected]");
signUpButton.Click();
}
}
}
Exemplul 4: Selectaศi o valoare din meniul derulant:
Scenariul de testare:
- Navigaศi la pagina demonstrativฤ Guru 99 โ https://demo.guru99.com/test/guru99home/
- Faceลฃi clic pe SAP legฤturฤ
- Introduceศi datele รฎn casetele de text cu nume ศi e-mail
- Selectaศi o valoare din meniul derulant Curs
- รnchideศi browserul
using NUnit.Framework;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Support.UI;
namespace Guru99Demo
{
class TestSelect
{
IWebDriver m_driver;
[Test]
public void selectDemo()
{
m_driver = new ChromeDriver("G:\\");
m_driver.Url = "https://demo.guru99.com/test/guru99home/";
m_driver.Manage().Window.Maximize();
IWebElement course = m_driver.FindElement(By.XPath(".//*[@id='awf_field-91977689']"));
var selectTest = new SelectElement(course);
// Select a value from the dropdown
selectTest.SelectByValue("sap-abap");
}
}
}
Rezumat
- Pentru a putea utiliza Selenium WebDriver cu C#, trebuie sฤ instalaศi Visual Studio.
- NUnit este cadrul de testare unitarฤ susศinut de Visual Studio ศi Selenium webdriver
- Trebuie sฤ instalฤm NUnit Framework ศi NUnit Test Adapter pe Visual Studio pentru a le folosi.
- Cadrul NUnit poate fi integrat Selenium prin crearea unei clase de testare NUnit ศi rularea clasei de testare folosind cadrul NUnit.
- NUnit permite, de asemenea, testerilor sฤ foloseascฤ adnotฤri precum SetUp, Test ศi TearDown pentru a efectua acศiuni รฎnainte ศi dupฤ rularea testului.
- Selenium Comenzile WebDriver pot fi clasificate รฎn comenzi de browser, comenzi Webelement ศi comenzi drop-down.
































