Selenium Εκμάθηση C# με Παράδειγμα NUnit

Selenium Επισκόπηση

Selenium είναι ένας ιστός ανοιχτού κώδικα Δοκιμές Αυτοματισμού εργαλείο που υποστηρίζει πολλαπλά προγράμματα περιήγησης και πολλαπλά λειτουργικά συστήματα. Επιτρέπει στους δοκιμαστές να χρησιμοποιούν πολλές γλώσσες προγραμματισμού όπως π.χ Java, C#, Python, .Net, Ruby, PHP και Perl για αυτοματοποιημένες δοκιμές κωδικοποίησης.

Επισκόπηση C#

Η C# είναι μια αντικειμενοστραφής γλώσσα προγραμματισμού που προέρχεται από C++ και Java. Το C# επιτρέπει στους προγραμματιστές να δημιουργούν εφαρμογές χρησιμοποιώντας το Visual Studio σε πλατφόρμα .Net. Τα παρακάτω είναι τα βασικά χαρακτηριστικά του C#.

  1. Είναι αντικειμενοστραφής γλώσσα προγραμματισμού
  2. Υποστηρίζει την ανάπτυξη κονσόλας, windows και διαδικτυακών εφαρμογών
  3. Παρέχει χαρακτηριστικά όπως Encapsulation, Inheritance και Polymorphism.

Βασική σύνταξη της C#

Ένα πρόγραμμα σε C# πρέπει να περιέχει τις ακόλουθες ενότητες

  1. Δήλωση χώρου ονομάτων
  2. μαθήματα
  3. Χαρακτηριστικά και Μέθοδοι Τάξης
  4. Κύρια μέθοδος
  5. Δηλώσεις προγράμματος

Παράδειγμα-

Παρακάτω είναι ένα δείγμα Selenium Παράδειγμα προγράμματος C# για την εκτύπωση του κειμένου «Guru99» στην κονσόλα συστήματος.

using System;
namespace FirstProgram {
class DemoPrint {
static void main(){
    Console.WriteLine("Guru99");
	}
  }
}

Επεξήγηση:

  • Ένας χώρος ονομάτων στο παραπάνω Selenium Το παράδειγμα C# είναι μια συλλογή από πολλές κλάσεις. Κάθε χώρος ονομάτων πρέπει να δηλωθεί χρησιμοποιώντας τη λέξη-κλειδί «χρήση».
  • Η πρώτη δήλωση του κώδικα περιλαμβάνει τον χώρο ονομάτων 'System' στο πρόγραμμά μας. Ο χώρος ονομάτων συστήματος ορίζει τις θεμελιώδεις κλάσεις και συμβάντα που χρησιμοποιούνται στην C#. Ο χώρος ονομάτων που θα χρησιμοποιηθεί εξαρτάται από την απαίτηση του προγράμματος.
  • Η δεύτερη πρόταση δηλώνει έναν χώρο ονομάτων "FirstProgram" για την κλάση "DemoPrint". Το αρχείο AC# μπορεί να περιέχει πολλές κλάσεις στον ίδιο χώρο ονομάτων.
  • Η τρίτη δήλωση περιλαμβάνει τη δήλωση κλάσης. Μια κλάση μπορεί να περιέχει πολλά χαρακτηριστικά και πολλές μεθόδους.
  • Η τέταρτη δήλωση περιλαμβάνει μια δήλωση της μεθόδου Main. Η κύρια μέθοδος είναι το σημείο εισόδου της εκτέλεσης για κάθε κλάση.
  • Η τελευταία πρόταση είναι η σύνταξη C# που χρησιμοποιείται για την εκτύπωση μιας δήλωσης στην κονσόλα. Το WriteLine είναι μια μέθοδος της κλάσης 'Κονσόλα.

Selenium με C# Setup

Πώς να ρυθμίσετε το Visual Studio με Selenium WebDriver:

Τώρα σε αυτό Selenium Εκμάθηση C#, ας μάθουμε τη διαδικασία βήμα προς βήμα για τη ρύθμιση του Visual Studio Selenium WebDriver:

Το Visual Studio είναι ένα ολοκληρωμένο περιβάλλον ανάπτυξης (IDE) που χρησιμοποιείται από προγραμματιστές για τη δημιουργία εφαρμογών σε πολλές πλατφόρμες όπως π.χ. Windows, Android, εφαρμογές που βασίζονται σε iOS και Cloud.

Βήμα 1) Μεταβείτε στη διεύθυνση URL

https://visualstudio.microsoft.com/downloads/ και κάντε κλικ στο 'ΔΩΡΕΑΝ Λήψη' κουμπί που εμφανίζεται στην καρτέλα Κοινότητα του Visual Studio

Ρύθμιση Visual Studio με Selenium Πρόγραμμα οδήγησης Web

Βήμα 2) Ανοίξτε το exe που κατεβάσατε. Κάντε κλικ στο «Ναι» εάν σας ζητηθεί δικαιώματα διαχειριστή.

Ρύθμιση Visual Studio με Selenium Πρόγραμμα οδήγησης Web

Βήμα 3) Θα εμφανιστεί το παρακάτω αναδυόμενο παράθυρο. Κάντε κλικ στο κουμπί «Συνέχεια».

Ρύθμιση Visual Studio με Selenium WebDrive

Τα αρχεία θα ληφθούν όπως φαίνεται στο αναδυόμενο παράθυρο παρακάτω.

Ρύθμιση Visual Studio με Selenium WebDrive

Βήμα 4) Στην επόμενη οθόνη,

Επιλέξτε τα πλαίσια ελέγχου για

  • Παγκόσμιος Windows Ανάπτυξη πλατφόρμας
  • .Net ανάπτυξη επιφάνειας εργασίας

Κάντε κλικ στο «Εγκατάσταση».

Ρύθμιση Visual Studio με Selenium WebDrive

Περιμένετε να ολοκληρωθεί η εγκατάσταση κάθε στοιχείου. Τα αρχεία έχουν μέγεθος 16 GB και θα χρειαστούν χρόνο.

Ρύθμιση Visual Studio με Selenium WebDrive

Βήμα 5) Θα εμφανιστεί το παρακάτω αναδυόμενο παράθυρο. Κάντε κλικ στο κουμπί «Επανεκκίνηση».

Ρύθμιση Visual Studio με Selenium WebDrive

Βήμα 6) Μόλις γίνει επανεκκίνηση του μηχανήματος, αναζητήστε το "Visual Studio" στο μενού έναρξης και κάντε κλικ στο αποτέλεσμα αναζήτησης. Θα εμφανιστεί το ακόλουθο αναδυόμενο παράθυρο. Κάντε κλικ στο σύνδεσμο «Όχι τώρα, ίσως αργότερα» εάν δεν έχετε υπάρχοντα λογαριασμό.

Ρύθμιση Visual Studio με Selenium WebDrive

Βήμα 7) Στην επόμενη οθόνη,

  • Επιλέξτε το χρωματικό θέμα της αρεσκείας σας
  • Κάντε κλικ στο κουμπί "Έναρξη Visual Studio"

Ρύθμιση Visual Studio με Selenium WebDrive

Βήμα 8) Θα εμφανιστεί η οθόνη "Έναρξη" του Visual Studio.

Ρύθμιση Visual Studio με Selenium WebDrive

Δημιουργήστε ένα νέο έργο στο Visual Studio:

Βήμα 1) Στο μενού Αρχείο, κάντε κλικ στην επιλογή Νέο > Έργο

Δημιουργήστε ένα νέο έργο στο Visual Studio

Βήμα 2) Στην επόμενη οθόνη,

  1. Επιλέξτε την επιλογή "Visual C#"
  2. Κάντε κλικ στην εφαρμογή Console (.Net Framework)
  3. Εισαγάγετε το όνομα ως "Guru99"
  4. κάντε κλικ στο OK

Δημιουργήστε ένα νέο έργο στο Visual Studio

Βήμα 3) Η παρακάτω οθόνη θα εμφανιστεί μόλις δημιουργηθεί με επιτυχία το έργο.

Δημιουργήστε ένα νέο έργο στο Visual Studio

Ρύθμιση του Visual Studio με Selenium WebDriver:

Βήμα 1) Μεταβείτε στα Εργαλεία -> NuGet Package Manager -> Manage NuGet Πακέτα για Λύση

Ρύθμιση Visual Studio με Selenium Πρόγραμμα οδήγησης Web

Βήμα 2) Στην επόμενη οθόνη

  1. Αναζήτηση Selenium στην οθόνη που προκύπτει
  2. Επιλέξτε το πρώτο αποτέλεσμα αναζήτησης
  3. Επιλέξτε το πλαίσιο ελέγχου του έργου
  4. Κάντε κλικ στο "Εγκατάσταση"

Ρύθμιση Visual Studio με Selenium Πρόγραμμα οδήγησης Web

Βήμα 3) Κάντε κλικ στο κουμπί «OK» στην αναδυόμενη οθόνη

Ρύθμιση Visual Studio με Selenium Πρόγραμμα οδήγησης Web

Βήμα 4) Το παρακάτω μήνυμα θα εμφανιστεί μόλις εγκατασταθεί επιτυχώς το πακέτο.

Ρύθμιση Visual Studio με Selenium Πρόγραμμα οδήγησης Web

NUnit Framework: Επισκόπηση

NUnit είναι το Δοκιμή μονάδας πλαίσιο που υποστηρίζεται από το Visual Studio και Selenium WebDriver. Το NUnit είναι το πιο ευρέως χρησιμοποιούμενο πλαίσιο Unit Testing για εφαρμογές .Net. Το NUnit παρουσιάζει τα αποτελέσματα των δοκιμών σε αναγνώσιμη μορφή και επιτρέπει σε έναν ελεγκτή να διορθώσει τα αυτοματοποιημένα τεστ.

Πρέπει να εγκαταστήσουμε το NUnit Framework και τον προσαρμογέα δοκιμής NUnit στο Visual Studio για να το χρησιμοποιήσουμε.

Βήματα για την εγκατάσταση του NUnit Framework

Τώρα σε αυτό Selenium με το σεμινάριο C#, ας μάθουμε τη διαδικασία εγκατάστασης του πλαισίου NUnit:

Βήμα 1) Μεταβείτε στα Εργαλεία -> NuGet Package Manager -> Manage NuGet Πακέτα για Λύση

Εγκαταστήστε το NUnit Framework

Βήμα 2) Στο επόμενο παράθυρο

  1. Αναζήτηση για NUnit
  2. Επιλέξτε το αποτέλεσμα αναζήτησης
  3. Επιλέξτε Έργο
  4. Κάντε κλικ στο κουμπί Εγκατάσταση

Εγκαταστήστε το NUnit Framework

Βήμα 3) Θα εμφανιστεί το παρακάτω αναδυόμενο παράθυρο. Κάντε κλικ στο κουμπί «Ok».

Εγκαταστήστε το NUnit Framework

Βήμα 4) Το παρακάτω μήνυμα θα εμφανιστεί μόλις ολοκληρωθεί η εγκατάσταση.

Εγκαταστήστε το NUnit Framework

Βήματα για τη λήψη του προσαρμογέα δοκιμής NUnit

Τώρα σε αυτό το σεμινάριο NUnit, θα καλύψουμε τα βήματα για τη λήψη του NUnit Test Adapter:

Λάβετε υπόψη ότι τα παρακάτω βήματα λειτουργούν μόνο για μηχανήματα 32 bit. Για μηχανήματα 64-bit, πρέπει να κάνετε λήψη του 'NUnit3 Test Adapter' ακολουθώντας την ίδια διαδικασία που αναφέρεται παρακάτω.

Βήμα 1) Μεταβείτε στα Εργαλεία ->ΝuGet Package Manager -> Manage NuGet Πακέτα για Λύση. Σε αυτή την οθόνη,

  1. Αναζήτηση NUnitTestAdapter
  2. Κάντε κλικ στο Αποτέλεσμα αναζήτησης
  3. Επιλέξτε Έργο
  4. Κάντε κλικ στο κουμπί Εγκατάσταση

Κατεβάστε τον προσαρμογέα δοκιμής NUnit

Βήμα 2) Κάντε κλικ στο OK στο αναδυόμενο παράθυρο επιβεβαίωσης. Μόλις ολοκληρωθεί η εγκατάσταση θα δείτε το ακόλουθο μήνυμα-

Κατεβάστε τον προσαρμογέα δοκιμής NUnit

Selenium και πλαίσιο NUnit

Η ενσωμάτωση του σεληνίου με το πλαίσιο NUnit επιτρέπει στον ελεγκτή να διαφοροποιεί τις διάφορες κατηγορίες δοκιμών. Το NUnit επιτρέπει επίσης στους δοκιμαστές να χρησιμοποιούν σχολιασμούς όπως SetUp, Test και TearDown για να εκτελούν ενέργειες πριν και μετά την εκτέλεση της δοκιμής.

Το πλαίσιο NUnit μπορεί να ενσωματωθεί με Selenium δημιουργώντας μια κλάση δοκιμής NUnit και εκτελώντας την κλάση δοκιμής χρησιμοποιώντας το πλαίσιο NUnit.

Παρακάτω βήματα σε αυτό Selenium Απαιτείται φροντιστήριο πλαισίου C# για τη δημιουργία και εκτέλεση μιας δοκιμαστικής τάξης χρησιμοποιώντας το πλαίσιο NUnit.

Βήματα για τη δημιουργία μιας κλάσης NUnit Test σε Selenium:

Βήμα 1) Στην Εξερεύνηση λύσεων, κάντε δεξί κλικ στο έργο > Προσθήκη > Τάξη

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Βήμα 2) Θα εμφανιστεί το παράθυρο δημιουργίας τάξης.

  1. Δώστε ένα όνομα στην τάξη
  2. Κάντε κλικ στο κουμπί Προσθήκη

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Βήμα 3) Θα εμφανιστεί η παρακάτω οθόνη.

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Βήμα 4) Προσθέστε τον ακόλουθο κώδικα στην κλάση που δημιουργήθηκε. Λάβετε υπόψη ότι πρέπει να καθορίσετε τη θέση του αρχείου 'chromdriver.exe' κατά την προετοιμασία του προγράμματος οδήγησης 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();
        }

    }
}

Βήμα 4) Κάντε κλικ στο "Δημιουργία" -> "Δημιουργία Λύσης"

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

ΣΗΜΕΊΩΣΗ: Ενδέχεται να λάβετε ένα σφάλμα όπως "Δεν περιέχει μια στατική "κύρια" μέθοδο κατάλληλη για ένα σημείο εισόδου" κατά τη δημιουργία

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Για να επιλύσετε αυτό, Πήγα στο έργο > Ιδιότητες και αλλάξτε τον Τύπο εξόδου σε "Βιβλιοθήκη τάξης". Η προεπιλογή είναι "Εφαρμογή Κονσόλας".

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Βήμα 5) Μόλις η κατασκευή είναι επιτυχής, πρέπει να ανοίξουμε το παράθυρο του Test Explorer. Κάντε κλικ στο Test -> Windows -> Test Explorer

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Βήμα 6) Ανοίγει το παράθυρο Test Explorer με τη λίστα των διαθέσιμων δοκιμών. Κάντε δεξί κλικ στο Test Explorer και επιλέξτε Run Selected Tests

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Βήμα 7) Selenium πρέπει να ανοίξει το πρόγραμμα περιήγησης με καθορισμένο URL και να κλείσει το πρόγραμμα περιήγησης. Η κατάσταση της δοκιμαστικής υπόθεσης θα αλλάξει σε "Επιτυχία" στο παράθυρο του Test Explorer.

Δημιουργήστε μια τάξη δοκιμής NUnit In Selenium

Selenium Εντολές WebDriver σε C#

Το C# χρησιμοποιεί τη διεπαφή 'IWebDriver' για αλληλεπιδράσεις με προγράμματα περιήγησης. Ακολουθούν η κατηγορία των εντολών που είναι διαθέσιμες με Selenium σε C#.

  1. Εντολές του προγράμματος περιήγησης
  2. Εντολές Web Element
  3. Αναπτυσσόμενες εντολές

Τώρα στο Selenium C Sharp tutorial, ας μελετήσουμε το Selenium Εντολές WebDriver μία προς μία

Εντολές προγράμματος περιήγησης:

Ακολουθεί μια λίστα εντολών του προγράμματος περιήγησης που είναι διαθέσιμες σε C# με Selenium.

Όνομα εντολής Τεχνικές Περιγραφές Σύνταξη
Εντολή Url Αυτή η εντολή χρησιμοποιείται για το άνοιγμα μιας καθορισμένης διεύθυνσης URL στο πρόγραμμα περιήγησης.
driver.Url = "https://www.guru99.com"
Εντολή τίτλου Αυτή η εντολή χρησιμοποιείται για την ανάκτηση του τίτλου της σελίδας της ιστοσελίδας που είναι ανοιχτή αυτήν τη στιγμή
String title = driver.Title
Εντολή Προέλευσης σελίδας Αυτή η εντολή χρησιμοποιείται για την ανάκτηση του πηγαίου κώδικα της ιστοσελίδας που είναι ανοιχτή αυτήν τη στιγμή.
String pageSource = driver.PageSource
Κλείσιμο εντολής Αυτή η εντολή χρησιμοποιείται για το κλείσιμο της παρουσίας του προγράμματος περιήγησης που άνοιξε πρόσφατα.
driver.Close();
Έξοδος από την εντολή Αυτή η εντολή χρησιμοποιείται για το κλείσιμο όλων των ανοιχτών παρουσιών του προγράμματος περιήγησης
driver.Quit();
Πίσω εντολή Αυτή η εντολή χρησιμοποιείται για πλοήγηση στην προηγούμενη σελίδα του ιστορικού του προγράμματος περιήγησης.
driver.Navigate().Back();
Εμπρός Εντολή Αυτή η εντολή χρησιμοποιείται για την πλοήγηση στην επόμενη σελίδα του ιστορικού του προγράμματος περιήγησης.
driver.Navigate().Forward()
Εντολή ανανέωσης Αυτή η εντολή χρησιμοποιείται για την εκτέλεση ανανέωσης του προγράμματος περιήγησης.
driver.Navigate().Refresh()

Εντολές Webelement

Ένα Webelement αντιπροσωπεύει όλα τα στοιχεία μιας ιστοσελίδας. Αντιπροσωπεύονται από ετικέτες HTML. Καθένα από τα κουμπιά, τα πλαίσια κειμένου, τους συνδέσμους, τις εικόνες, τους πίνακες και τα πλαίσια εμπίπτουν στην ενότητα Webelements. OperaΟι ενέργειες σε στοιχεία Ιστού μπορούν να ενεργοποιηθούν χρησιμοποιώντας τη διεπαφή IWebelement. Για να αλληλεπιδράσουμε με ένα Webelement, πρέπει να βρούμε το στοιχείο στην ιστοσελίδα και στη συνέχεια να εκτελέσουμε λειτουργίες σε αυτό. Εργαλεία όπως το Firebug και το Firepath μπορούν να χρησιμοποιηθούν για την αναγνώριση του Xpath του Webelement.

Ακολουθεί η λίστα με τις εντολές Webelement που είναι διαθέσιμες σε C#.

Όνομα εντολής Τεχνικές Περιγραφές Σύνταξη
Κάντε κλικ στην εντολή Αυτή η εντολή χρησιμοποιείται για κλικ σε ένα στοιχείο Web. Για να μπορεί να κάνει κλικ στο στοιχείο, το στοιχείο πρέπει να είναι ορατό στην ιστοσελίδα. Αυτή η εντολή χρησιμοποιείται επίσης για τις λειτουργίες του πλαισίου ελέγχου και των κουμπιών επιλογής.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));  element.Click();
Εκκαθάριση εντολής Αυτή η εντολή χρησιμοποιείται ειδικά για την εκκαθάριση των υπαρχόντων περιεχομένων των πλαισίων κειμένου.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
element.Clear();
Εντολή SendKeys Αυτή η εντολή χρησιμοποιείται για την εισαγωγή μιας τιμής σε πλαίσια κειμένου. Η τιμή που θα εισαχθεί πρέπει να μεταβιβαστεί ως παράμετρος
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
element.SendKeys("guru99");
Εμφανιζόμενη εντολή Αυτή η εντολή χρησιμοποιείται για να προσδιορίσει εάν ένα συγκεκριμένο στοιχείο εμφανίζεται στην ιστοσελίδα. Αυτή η εντολή επιστρέφει μια Boolean τιμή. true ή false ανάλογα με την ορατότητα του στοιχείου web.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
Boolean status = element.Displayed;
Ενεργοποιημένη εντολή Αυτή η εντολή χρησιμοποιείται για να προσδιορίσει εάν ένα συγκεκριμένο στοιχείο ιστού είναι ενεργοποιημένο στην ιστοσελίδα. Αυτή η εντολή επιστρέφει μια Boolean τιμή. αληθινό ή ψευδές ως αποτέλεσμα.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
Boolean status = element.Enabled;
Επιλεγμένη εντολή Αυτή η εντολή χρησιμοποιείται για να προσδιορίσει εάν έχει επιλεγεί ένα συγκεκριμένο στοιχείο web. Αυτή η εντολή χρησιμοποιείται για πλαίσια ελέγχου, κουμπιά ραδιοφώνου και λειτουργίες επιλογής.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
Boolean status = element.Selected;
Υποβολή εντολής: Αυτή η εντολή είναι παρόμοια με την εντολή κλικ. Η διαφορά έγκειται στο αν η φόρμα HTML έχει κουμπί με τον τύπο Υποβολή. Ενώ η εντολή κλικ κάνει κλικ σε οποιοδήποτε κουμπί, η εντολή υποβολής κάνει κλικ μόνο στα κουμπιά με τύπο υποβολής.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));  element.submit();
Εντολή κειμένου Αυτή η εντολή επιστρέφει το εσωτερικό κείμενο ενός Webelement. Αυτή η εντολή επιστρέφει μια τιμή συμβολοσειράς ως αποτέλεσμα.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
String text=element.Text;
Εντολή TagName Αυτή η εντολή επιστρέφει την ετικέτα HTML ενός στοιχείου ιστού. Επιστρέφει μια τιμή συμβολοσειράς ως αποτέλεσμα.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement"));  String tagName = element.TagName;
Εντολή GetCSSValue: Αυτή η μέθοδος χρησιμοποιείται για την επιστροφή του χρώματος ενός στοιχείου web στη μορφή μιας συμβολοσειράς rgba (Κόκκινο, Πράσινο, Μπλε και Άλφα).
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
String color = element.getCSSValue;

Παραγωγή– Εάν το χρώμα του στοιχείου είναι κόκκινο, η έξοδος θα είναι rgba(255,0,0,1)

Αναπτυσσόμενες εντολές:

Οι αναπτυσσόμενες λειτουργίες στη C# μπορούν να επιτευχθούν χρησιμοποιώντας την κλάση SelectElement.

Ακολουθούν οι διάφορες αναπτυσσόμενες λειτουργίες που είναι διαθέσιμες σε C#.

Όνομα εντολής Τεχνικές Περιγραφές Σύνταξη
Εντολή SelectByText Αυτή η εντολή επιλέγει μια επιλογή από ένα αναπτυσσόμενο μενού με βάση το κείμενο της επιλογής.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.SelectByText("Guru99");
Εντολή SelectByIndex Αυτή η εντολή χρησιμοποιείται για την επιλογή μιας επιλογής με βάση το ευρετήριό της. Το ευρετήριο του αναπτυσσόμενου μενού ξεκινά από το 0.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.SelectByIndex("4");
Εντολή SelectByValue Αυτή η εντολή χρησιμοποιείται για την επιλογή μιας επιλογής με βάση την τιμή της επιλογής της.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.SelectByValue("Guru99");
Εντολή Επιλογών Αυτή η εντολή χρησιμοποιείται για την ανάκτηση της λίστας επιλογών που εμφανίζεται σε ένα αναπτυσσόμενο μενού.
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);
}

Ο παραπάνω κώδικας εκτυπώνει όλες τις επιλογές στην κονσόλα μέσα σε ένα αναπτυσσόμενο μενού.

Εντολή IsMultiple Αυτή η εντολή χρησιμοποιείται για να προσδιορίσει εάν ένα αναπτυσσόμενο μενού είναι ένα αναπτυσσόμενο μενού πολλαπλών επιλογών. Ένα αναπτυσσόμενο μενού πολλαπλών επιλογών επιτρέπει στον χρήστη να επιλέξει περισσότερες από μία επιλογές σε ένα αναπτυσσόμενο μενού κάθε φορά. Αυτή η εντολή επιστρέφει μια Boolean τιμή.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
Boolean status = select.IsMultiple();
Εντολή DeSelectAll Αυτή η εντολή χρησιμοποιείται σε αναπτυσσόμενα μενού πολλαπλών επιλογών. Διαγράφει τις επιλογές που έχουν ήδη επιλεγεί.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectAll();
Εντολή DeSelectByIndex Αυτή η εντολή καταργεί την επιλογή μιας ήδη επιλεγμένης τιμής χρησιμοποιώντας το ευρετήριό της.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectByIndex("4");
Εντολή DeSelectByValue Αυτή η εντολή καταργεί την επιλογή μιας ήδη επιλεγμένης τιμής χρησιμοποιώντας την τιμή της.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectByValue("Guru99");
Εντολή DeSelectByText Αυτή η εντολή καταργεί την επιλογή μιας ήδη επιλεγμένης τιμής χρησιμοποιώντας το κείμενό της.
IWebelement element = driver.FindElement(By.xpath("xpath of Webelement")); 
SelectElement select = new SelectElement(element);
select.DeSelectByText("Guru99");

Δείγματα κώδικα

Παράδειγμα 1: Κάντε κλικ σε έναν σύνδεσμο χρησιμοποιώντας το XPATH Locator:

Σενάριο δοκιμής:

  1. Πλοηγηθείτε στην ιστοσελίδα Demo Guru99 – https://demo.guru99.com/test/guru99home/
  2. Μεγιστοποιήστε το παράθυρο
  3. Κάντε κλικ στο μενού «Δοκιμή».
  4. Κλείστε το πρόγραμμα περιήγησης
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();
        }
    }
}

Παράδειγμα 2: Εισαγωγή δεδομένων σε ΚείμενοBox και κάντε κλικ σε ένα κουμπί χρησιμοποιώντας τον εντοπιστή XPATH:

Σενάριο δοκιμής:

  1. Πλοηγηθείτε στη δοκιμαστική σελίδα Guru 99 – https://demo.guru99.com/test/guru99home/
  2. Εισαγάγετε δεδομένα στο πλαίσιο κειμένου email
  3. Κάντε κλικ στο κουμπί εγγραφή
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("test123@gmail.com");
            signUpButton.Click();
                        
        }
    }
}			

Παράδειγμα 3: Εισαγωγή δεδομένων σε ΚείμενοBox και κάντε κλικ σε ένα κουμπί χρησιμοποιώντας τον εντοπιστή CSS:

Σενάριο δοκιμής:

  1. Πλοηγηθείτε στη δοκιμαστική σελίδα Guru 99 – https://demo.guru99.com/test/guru99home/
  2. Εισαγάγετε δεδομένα στο πλαίσιο κειμένου email
  3. Κάντε κλικ στο κουμπί εγγραφή
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("test123@gmail.com");
            signUpButton.Click();

             
        }
    }
}

Παράδειγμα 4: Επιλέξτε μια τιμή στο αναπτυσσόμενο μενού:

Σενάριο δοκιμής:

  1. Πλοηγηθείτε στη δοκιμαστική σελίδα Guru 99 – https://demo.guru99.com/test/guru99home/
  2. Κάντε κλικ στο SAP σύνδεσμος
  3. Εισαγάγετε δεδομένα στα πλαίσια κειμένου ονόματος και email
  4. Επιλέξτε μια τιμή από το αναπτυσσόμενο μενού Course
  5. Κλείστε το πρόγραμμα περιήγησης
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");
                        
        }
    }
}

Περίληψη

  • Για να χρησιμοποιήσετε Selenium WebDriver με C#, πρέπει να εγκαταστήσετε το Visual Studio.
  • Το NUnit είναι το πλαίσιο δοκιμής μονάδας που υποστηρίζεται από το Visual Studio και Selenium πρόγραμμα οδήγησης web
  • Πρέπει να εγκαταστήσουμε το NUnit Framework και τον προσαρμογέα δοκιμής NUnit στο Visual Studio για να το χρησιμοποιήσουμε.
  • Το πλαίσιο NUnit μπορεί να ενσωματωθεί με Selenium δημιουργώντας μια κλάση δοκιμής NUnit και εκτελώντας την κλάση δοκιμής χρησιμοποιώντας το πλαίσιο NUnit.
  • Το NUnit επιτρέπει επίσης στους δοκιμαστές να χρησιμοποιούν σχολιασμούς όπως SetUp, Test και TearDown για να εκτελούν ενέργειες πριν και μετά την εκτέλεση της δοκιμής.
  • Selenium Οι εντολές WebDriver μπορούν να κατηγοριοποιηθούν σε εντολές προγράμματος περιήγησης, εντολές Webelement και αναπτυσσόμενες εντολές.