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#.

  1. Este un limbaj de programare orientat pe obiecte
  2. Suportฤƒ dezvoltarea de consolฤƒ, Windows ศ™i aplicaศ›ii bazate pe web
  3. 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

  1. Declaraศ›ie de spaศ›iu de nume
  2. Clase
  3. Atribute ศ™i metode de clasฤƒ
  4. Metoda principalฤƒ
  5. 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

Configuraศ›i Visual Studio cu Selenium webdriver

Pas 2) Deschideศ›i exe descฤƒrcat. Faceศ›i clic pe โ€žDaโ€ dacฤƒ vi se solicitฤƒ drepturi de administrator.

Configuraศ›i Visual Studio cu Selenium webdriver

Pas 3) Va apฤƒrea fereastra de mai jos. Faceศ›i clic pe butonul โ€žContinuareโ€.

Configuraศ›i Visual Studio cu Selenium unitate web

Fiศ™ierele vor fi descฤƒrcate aศ™a cum se aratฤƒ รฎn fereastra de mai jos.

Configuraศ›i Visual Studio cu Selenium unitate web

Pas 4) รŽn ecranul urmฤƒtor,

Bifaศ›i casetele de selectare pentru

  • Universal Windows Dezvoltarea platformei
  • Dezvoltare desktop .Net

Faceศ›i clic pe โ€žInstalareโ€.

Configuraศ›i Visual Studio cu Selenium unitate web

Aศ™teptaศ›i finalizarea instalฤƒrii fiecฤƒrei componente. Fiศ™ierele au o dimensiune de 16 GB ศ™i vor dura timp.

Configuraศ›i Visual Studio cu Selenium unitate web

Pas 5) Va fi afiศ™at pop-up-ul de mai jos. Faceศ›i clic pe butonul โ€žReporniศ›iโ€.

Configuraศ›i Visual Studio cu Selenium unitate web

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.

Configuraศ›i Visual Studio cu Selenium unitate web

Pas 7) รŽn ecranul urmฤƒtor,

  • Selectaศ›i tema de culoare pe placul dvs
  • Faceศ›i clic pe butonul โ€žPorniศ›i Visual Studioโ€

Configuraศ›i Visual Studio cu Selenium unitate web

Pas 8) Va apฤƒrea ecranul โ€žรŽncepeศ›iโ€ Visual Studio.

Configuraศ›i Visual Studio cu Selenium unitate web

Creaศ›i un nou proiect รฎn Visual Studio:

Pas 1) รŽn meniul Fiศ™ier, faceศ›i clic pe Nou > Proiect

Creaศ›i un proiect nou รฎn Visual Studio

Pas 2) รŽn ecranul urmฤƒtor,

  1. Selectaศ›i opศ›iunea โ€žVisual C#โ€
  2. Faceศ›i clic pe Console App (.Net Framework)
  3. Introduceศ›i numele ca โ€žGuru99โ€
  4. Faceศ›i clic pe OK

Creaศ›i un proiect nou รฎn Visual Studio

Pas 3) Ecranul de mai jos va fi afiศ™at odatฤƒ ce proiectul este creat cu succes.

Creaศ›i un proiect nou รฎn Visual Studio

Configuraศ›i Visual Studio cu Selenium WebDriver:

Pas 1) Navigaศ›i la Instrumente -> NuGet Manager de pachete -> Gestionaศ›i NuGet Pachete pentru soluศ›ie

Configuraศ›i Visual Studio cu Selenium webdriver

Pas 2) รŽn ecranul urmฤƒtor

  1. Cautฤƒ Selenium pe ecranul rezultat
  2. Selectaศ›i primul rezultat al cฤƒutฤƒrii
  3. Bifaศ›i caseta de selectare a proiectului
  4. Faceศ›i clic pe โ€žInstalareโ€

Configuraศ›i Visual Studio cu Selenium webdriver

Pas 3) Faceศ›i clic pe butonul โ€žOKโ€ din ecranul pop-up

Configuraศ›i Visual Studio cu Selenium webdriver

Pas 4) Mesajul de mai jos va fi afiศ™at odatฤƒ ce pachetul este instalat cu succes.

Configuraศ›i Visual Studio cu Selenium webdriver

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

Instalaศ›i NUnit Framework

Pas 2) รŽn fereastra urmฤƒtoare

  1. Cฤƒutaศ›i NUnit
  2. Selectaศ›i rezultatul cฤƒutฤƒrii
  3. Selectaศ›i Proiect
  4. Faceศ›i clic pe Instalare

Instalaศ›i NUnit Framework

Pas 3) Va apฤƒrea fereastra de mai jos. Faceศ›i clic pe butonul โ€žOkโ€.

Instalaศ›i NUnit Framework

Pas 4) Mesajul de mai jos va apฤƒrea dupฤƒ finalizarea instalฤƒrii.

Instalaศ›i NUnit Framework

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,

  1. Cฤƒutaศ›i NUnitTestAdapter
  2. Faceศ›i clic pe Rezultatul cฤƒutฤƒrii
  3. Selectaศ›i Proiect
  4. Faceศ›i clic pe Instalare

Descฤƒrcaศ›i adaptorul de testare NUnit

Pas 2) Faceศ›i clic pe OK รฎn fereastra pop-up de confirmare. Odatฤƒ ce instalarea este finalizatฤƒ, veศ›i vedea urmฤƒtorul mesaj -

Descฤƒrcaศ›i adaptorul de testare NUnit

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ฤƒ

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

Pas 2) Va apฤƒrea fereastra de creare a clasei.

  1. Furnizaศ›i un nume clasei
  2. Faceศ›i clic pe butonul Adฤƒugaศ›i

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

Pas 3) Va apฤƒrea ecranul de mai jos.

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

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โ€

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

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

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

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ฤƒโ€.

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

Pas 5) Odatฤƒ ce construirea are succes, trebuie sฤƒ deschidem fereastra Test Explorer. Faceศ›i clic pe Test -> Windows -> Test Explorer

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

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

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

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.

Creaศ›i o clasฤƒ de test NUnit รฎn Selenium

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#.

  1. Comenzi de browser
  2. Comenzi Web Element
  3. 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:

  1. Navigaศ›i la pagina web Demo Guru99 โ€“ https://demo.guru99.com/test/guru99home/
  2. Maximizaศ›i fereastra
  3. Faceศ›i clic pe meniul โ€žTestareโ€.
  4. รŽ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:

  1. Navigaศ›i la pagina demonstrativฤƒ Guru 99 โ€“ https://demo.guru99.com/test/guru99home/
  2. Introduceศ›i datele รฎn caseta de text de e-mail
  3. 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:

  1. Navigaศ›i la pagina demonstrativฤƒ Guru 99 โ€“ https://demo.guru99.com/test/guru99home/
  2. Introduceศ›i datele รฎn caseta de text de e-mail
  3. 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:

  1. Navigaศ›i la pagina demonstrativฤƒ Guru 99 โ€“ https://demo.guru99.com/test/guru99home/
  2. Faceลฃi clic pe SAP legฤƒturฤƒ
  3. Introduceศ›i datele รฎn casetele de text cu nume ศ™i e-mail
  4. Selectaศ›i o valoare din meniul derulant Curs
  5. รŽ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.

Rezumaศ›i aceastฤƒ postare cu: