Hur man använder Selen IDE med skript & Kommandon (Assert, Verify)

Innehållsförteckning:

Anonim

Vi kommer att använda Mercury Tours webbplats som vår webbapplikation som testas. Det är ett online flygbokningssystem som innehåller alla element som vi behöver för denna handledning. Dess URL är http://demo.guru99.com/test/newtours/, och detta kommer att vara vår bas-URL.

Skapa ett skript genom inspelning

Låt oss nu skapa vårt första testskript i Selen IDE med den vanligaste metoden - genom inspelning. Därefter ska vi köra vårt skript med uppspelningsfunktionen.

Steg 1

  • Starta Firefox och Selen IDE.
  • Skriv värdet för vår grundadress: http://demo.guru99.com/test/newtours/.
  • Slå på inspelningsknappen (om den ännu inte är aktiverad som standard).
Steg 2

I Firefox navigerar du till http://demo.guru99.com/test/newtours/. Firefox ska ta dig till sidan som liknar den som visas nedan.

Steg 3
  • Högerklicka på ett tomt utrymme på sidan, som på Mercury Tours-logotypen i det övre vänstra hörnet. Detta kommer fram Selenium IDE-snabbmenyn. Obs! Klicka inte på några hyperlänkade objekt eller bilder
  • Välj alternativet "Visa tillgängliga kommandon".
  • Välj sedan "assertTitle exact: Welcome: Mercury Tours." Detta är ett kommando som ser till att sidrubriken är korrekt.
Steg 4
  • I textrutan "Användarnamn" i Mercury Tours skriver du ett ogiltigt användarnamn, "ogiltigt UNN".
  • Skriv ett ogiltigt lösenord, "invalidPWD", i textrutan "Lösenord".
Steg 5
  • Klicka på knappen "Logga in". Firefox borde ta dig till den här sidan.
Steg 6

Stäng av inspelningsknappen för att stoppa inspelningen. Ditt skript ska nu se ut som det som visas nedan.

Steg 7

Nu när vi är klara med vårt testmanus kommer vi att spara det i ett testfall. Välj "Spara testfall" på Arkiv-menyn. Alternativt kan du helt enkelt trycka på Ctrl + S.

Steg 8
  • Välj önskad plats och namnge sedan testfallet som "Ogiltigt_login".
  • Klicka på knappen "Spara".
Steg 9.

Observera att filen sparades som HTML.

Steg 10.

Gå tillbaka till Selen IDE och klicka på uppspelningsknappen för att utföra hela skriptet. Selen IDE borde kunna replikera allt felfritt.

Introduktion till selenkommandon - Selenese

  • Selenes-kommandon kan ha upp till två parametrar: mål och värde.
  • Parametrar krävs inte hela tiden. Det beror på hur många kommandot behöver.

3 typer av kommandon

Åtgärder

Det här är kommandon som direkt interagerar med sidelement.

Exempel: kommandot "klicka" är en åtgärd eftersom du direkt interagerar med det element du klickar på.

Kommandot "typ" är också en åtgärd eftersom du lägger in värden i en textruta, och textrutan visar dem i gengäld. Det finns en tvåvägs interaktion mellan dig och textrutan.

Tillbehör

De är kommandon som låter dig lagra värden i en variabel.

Exempel: kommandot "storeTitle" är en accessor eftersom det bara "läser" sidrubriken och sparar den i en variabel. Det interagerar inte med något element på sidan.

Påståenden

De är kommandon som verifierar om ett visst villkor är uppfyllt.

3 typer av påståenden

  • Påstå . När ett "assert" -kommando misslyckas stoppas testet omedelbart.
  • Verifiera . När ett "verifiera" -kommando misslyckas loggar Selenium IDE detta fel och fortsätter med testkörningen.
  • Vänta . Innan du fortsätter till nästa kommando väntar "waitFor" -kommandon först på att ett visst tillstånd blir sant.
    • Om villkoret blir sant inom väntetiden passerar steget.
    • Om villkoret inte blir sant misslyckas steget. Fel loggas och testkörningen fortsätter till nästa kommando.
    • Som standard är timeoutvärdet inställt på 30 sekunder. Du kan ändra detta i dialogrutan Selen IDE-alternativ under fliken Allmänt.

Assert vs. Verify

Vanliga kommandon

Kommando Antal parametrar Beskrivning
öppen 0 - 2

Öppnar en sida med en URL.

klicka / klickaAndWait 1

Klickar på ett angivet element.

typ / typKeys 2

Skriver en sekvens av tecken.

verifiera titel / assertTitle 1

Jämför den aktuella sidtiteln med ett förväntat värde.

verifieraTextPresent 1

Kontrollerar om en viss text finns på sidan.

verifyElementPresent 1

Kontrollerar närvaron av ett visst element.

verifiera tabellen 2

Jämför innehållet i en tabell med förväntade värden.

waitForPageToLoad 1

Pausar körningen tills sidan laddas helt.

waitForElementPresent 1

Pausar körningen tills det angivna elementet blir närvarande.

Skapa ett manuellt manuellt med Firebug

Nu ska vi återskapa samma testfall manuellt genom att skriva in kommandona. Den här gången måste vi använda Firebug.

Steg 1
  • Öppna Firefox och Selen IDE.
  • Skriv basadressen (http://demo.guru99.com/test/newtours/).
  • Inspelningsknappen ska vara AV.
Steg 2: Klicka på den översta tomma raden i Editor.

Skriv "öppna" i kommandot textrutan och tryck på Enter.

Steg 3
  • Navigera Firefox till vår bas-URL och aktivera Firebug
  • I fönstret Selen IDE Editor väljer du den andra raden (raden under kommandot "öppen") och skapar det andra kommandot genom att skriva "assertTitle" i rutan Kommando.
  • Använd gärna funktionen för autoslutförande.
Steg 4
  • I Firebug expanderar du -taggen för att visa -taggen.</li> <li>Klicka på värdet för <title> -taggen (som är "Välkommen: Mercury Tours") och klistra in den i fältet Mål i redigeraren.</li> </ul> </td> </tr> <tr> <td><strong>Steg 5</strong> <ul> <li>För att skapa det tredje kommandot, klicka på den tredje tomma raden i Editor och skriv in "typ" i textrutan Kommando.</li> <li>Klicka på "Inspektera" -knappen i Firebug.</li> </ul> </td> </tr> <tr> <td>Klicka på textrutan Användarnamn. Observera att Firebug automatiskt visar HTML-koden för det elementet.</td> </tr> <tr> <td><strong>Steg 6</strong> <p>Observera att textrutan Användarnamn inte har ett ID, men det har ett NAME-attribut. Vi kommer därför att använda dess NAMN som lokaliserare. Kopiera NAMN-värdet och klistra in det i fältet Mål i Selen IDE.</p> <p>Fortfarande i textrutan Target, prefix "userName" med "name =", vilket indikerar att Selen IDE ska rikta in sig på ett element vars NAME-attribut är "userName."</p> <p>Skriv "invalidUN" i textrutan Värde i Selen IDE. Ditt testskript ska nu se ut som bilden nedan. Vi är klara med det tredje kommandot. Obs! I stället för ogiltigt UN kan du ange vilken annan textsträng som helst. Men Selen IDE är skiftlägeskänslig och du skriver värden / attribut precis som i applikationen.</p> </td> </tr> <tr> <td><strong>Steg 7</strong> <ul> <li>För att skapa det fjärde kommandot, skriv in "skriv" i kommandot textrutan.</li> <li>Återigen, använd Firebugs "Inspektera" -knapp för att hämta sökaren till textrutan "Lösenord".</li> </ul> <ul> <li> <p>Klistra in attributet NAMN ("lösenord") i fältet Mål och prefix med "namn ="</p> </li> <li> <p>Skriv "invalidPW" i fältet Värde i Selen IDE. Ditt testskript ska nu se ut som bilden nedan.</p> </li> </ul> </td> </tr> <tr> <td><strong>Steg 8</strong> <ul> <li>För det femte kommandot skriver du "clickAndWait" i textrutan Kommando i Selen IDE.</li> <li>Använd Firebugs "Inspektera" -knapp för att hämta sökaren för "Logga in" -knappen.</li> </ul> <ul> <li>Klistra in värdet för attributet NAME ("login") i textrutan Target och prefix med "name =".</li> <li>Ditt testskript ska nu se ut som bilden nedan.</li> </ul> </td> </tr> </tbody> </table> <p><strong>Steg 9:</strong> Spara testfallet på samma sätt som vi gjorde i föregående avsnitt.</p> <a id="menu-6"></a> <h2>Använd Find-knappen</h2> <p><strong>Sök-knappen i Selen IDE används för att verifiera om det vi hade lagt i textrutan Mål verkligen är rätt UI-element.</strong></p> <p>Låt oss använda Invalid_login testfallet som vi skapade i föregående avsnitt. Klicka på valfritt kommando med en Target-post, säg det tredje kommandot.</p> <p>Klicka på Sök-knappen. Observera att textrutan Användarnamn på Mercury Tours-sidan markeras en sekund.</p> <p>Detta indikerar att Selen IDE kunde upptäcka och komma åt det förväntade elementet korrekt. Om Sök-knappen markerade ett annat element eller inget element alls, måste det vara något fel med ditt skript.</p> <a id="menu-7"></a> <h2>Utför kommandot</h2> <p><strong>Detta gör att du kan utföra ett enskilt kommando utan att köra hela testfallet</strong> . Klicka bara på raden som du vill utföra och klicka antingen på "Åtgärder> Utför kommandot" från menyraden eller tryck bara på "X" på tangentbordet.</p> <p><strong>Steg 1.</strong> Se till att din webbläsare finns på Mercury Tours hemsida. Klicka på det kommando du vill utföra. I det här exemplet klickar du på raden "typ | användarnamn | ogiltigUN".</p> <p><strong>Steg 2.</strong> Tryck på "X" på tangentbordet.</p> <p><strong>Steg 3.</strong> Observera att textrutan för användarnamn fylls med texten "invalidUN"</p> <p><strong>Att utföra kommandon på detta sätt är mycket beroende av den sida som Firefox för närvarande visar</strong> . Detta innebär att om du försöker exemplet ovan med Googles startsida visas istället för Mercury Tours, kommer ditt steg att misslyckas eftersom det inte finns någon textruta med attributet "userName" på Googles startsida.</p> <a id="menu-8"></a> <h2>Startpunkt</h2> <p><strong>En startpunkt är en indikator som berättar för Selen IDE vilka linjer körningen kommer att starta</strong> . <strong>Dess kortkommando är "S".</strong></p> <p>I exemplet ovan startar uppspelningen på tredje raden (typ | lösenord | ogiltigPW). <strong>Du kan bara ha en startpunkt i ett enda testskript.</strong></p> <p>Startpunkten liknar Execute Command så att de är beroende av den sida som för närvarande visas. Startpunkten misslyckas om du är på fel sida.</p> <a id="menu-9"></a> <h2>Brytpunkter</h2> <p>Brytpunkter är indikatorer som talar om för Selen IDE var testet ska pausas automatiskt. <strong>Genvägsknappen är "B".</strong></p> <p>Den gula markeringen betyder att det aktuella steget väntar. Detta bevisar att Selen IDE har pausat körningen i det steget. <strong>Du kan ha flera brytpunkter i ett testfall.</strong></p> <a id="menu-10"></a> <h2>Steg</h2> <p>Det låter dig utföra efterföljande kommandon en i taget efter att pausa testfallet. Låt oss använda scenariot i föregående avsnitt "Brytpunkter."</p> <table> <tbody> <tr> <td width="50%"> </td> <td> <p><strong>Innan du klickar på "Steg".</strong></p> <p>Testfallet pausar vid raden "clickAndWait | login".</p> </td> </tr> <tr> <td width="50%"> </td> <td> <p><strong>Efter att ha klickat på "Steg".</strong></p> <p>Raden "clickAndWait | login" körs och pausar till nästa kommando (verifyTitle | Inloggning: Mercury Tours).</p> <p>Observera att nästa rad är pausad även om det inte finns någon brytpunkt där. Detta är huvudsyftet med stegfunktionen - den utför de efterföljande kommandona en i taget för att ge dig mer tid att inspektera resultatet efter varje steg.</p> </td> </tr> </tbody> </table> <a id="menu-11"></a> <h2>Viktiga saker att tänka på när du använder andra format i källvyn</h2> <p><strong>Selen IDE fungerar bara bra med HTML - andra format är fortfarande i experimentläge</strong> . Det är <strong>INTE tillrådligt</strong> att skapa eller redigera tester med andra format i Source View eftersom det fortfarande finns mycket arbete som behövs för att göra det stabilt. Nedan följer de kända buggarna från version 1.9.1.</p> <ul> <li>Du kommer inte att kunna spela upp eller växla tillbaka till Table View om du inte återgår till HTML.</li> <li>Det enda sättet att lägga till kommandon säkert på källkoden är att spela in dem.</li> <li>När du ändrar källkoden manuellt kommer allt att gå förlorat när du byter till ett annat format.</li> <li>Även om du kan spara ditt testfall i Source View kommer Selenium IDE inte att kunna öppna det.</li> </ul> <p><strong>Det rekommenderade sättet att konvertera Selenese-tester är att använda alternativet "Exportera testfall som ..." under Arkiv-menyn och inte via källvyn.</strong></p> <a id="menu-12"></a> <h2>Sammanfattning</h2> <ul> <li>Testskript kan skapas antingen genom att spela in eller skriva in kommandon och parametrar manuellt.</li> <li>När man skapar skript manuellt används Firebug för att hämta sökaren.</li> <li>Sök-knappen används för att kontrollera att kommandot kan komma åt rätt element.</li> <li>Tabellvy visar ett testskript i tabellform medan Source View visar det i HTML-format.</li> <li>Att ändra källvyn till ett icke-HTML-format är fortfarande experimentellt.</li> <li>Använd inte källvyn när du skapar tester i andra format. Använd exportfunktionerna istället.</li> <li>Parametrar krävs inte hela tiden. Det beror på kommandot.</li> <li>Det finns tre typer av kommandon:</li> <ul> <li>Åtgärder - interagerar direkt med sidelement</li> <li>Accessors - "läser" en elementegenskap och lagrar den i en variabel</li> <li>Påståenden - jämför ett verkligt värde med ett förväntat värde</li> </ul> <li>Påståenden har tre typer:</li> <ul> <li>Påstående - vid misslyckande körs inte följande steg längre</li> <li>Verifiera - vid misslyckande körs efterföljande steg fortfarande.</li> <li>WaitFor - passerar om det angivna villkoret blir sant inom tidsgränsen; annars kommer det att misslyckas</li> </ul> <li>De vanligaste kommandona är:</li> <ul> <li>öppen</li> <li>klicka / klickaAndWait</li> <li>typ / typKeys</li> <li>verifiera titel / assertTitle</li> <li>verifieraTextPresent</li> <li>verifyElementPresent</li> <li>verifiera tabellen</li> <li>waitForPageToLoad</li> <li>waitForElementPresent</li> </ul> </ul> </div> </article> <div id="container-5533149ee6411a5f99b370c693e87966"></div> </div> </div> </div> </div> </div> <aside class="col-lg-4 sidebar sidebar--right"> <div class="widget widget-popular-posts"> <h2 class="widget-title">Populära Inlägg</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8003860-make-jquery-contains-case-insensitive" title="Gör jQuery: innehåller skiftlägeskänsliga - CSS-tricks" rel="bookmark"><img src="https://cdn.css-code.org/3932738/make_jquery_contains_case-insensitive_css-tricks.png.webp" loading="lazy" alt="Gör jQuery: innehåller skiftlägeskänsliga - CSS-tricks" title="Gör jQuery: innehåller skiftlägeskänsliga - CSS-tricks" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8003860-make-jquery-contains-case-insensitive" title="Gör jQuery: innehåller skiftlägeskänsliga - CSS-tricks" rel="bookmark">Gör jQuery: innehåller skiftlägeskänsliga - CSS-tricks 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8003861-outerhtml-jquery-plugin" title="Yttre HTML jQuery-plugin - CSS-tricks" rel="bookmark"><img src="https://cdn.css-code.org/8132165/outerhtml_jquery_plugin_css-tricks.png.webp" loading="lazy" alt="Yttre HTML jQuery-plugin - CSS-tricks" title="Yttre HTML jQuery-plugin - CSS-tricks" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8003861-outerhtml-jquery-plugin" title="Yttre HTML jQuery-plugin - CSS-tricks" rel="bookmark">Yttre HTML jQuery-plugin - CSS-tricks 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8003862-move-cursor-to-end-of-textarea-or-input" title="Flytta markören till slutet av textarea eller inmatning - CSS-tricks" rel="bookmark"><img src="https://cdn.css-code.org/4531581/move_cursor_to_end_of_textarea_or_input_css-tricks.png.webp" loading="lazy" alt="Flytta markören till slutet av textarea eller inmatning - CSS-tricks" title="Flytta markören till slutet av textarea eller inmatning - CSS-tricks" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8003862-move-cursor-to-end-of-textarea-or-input" title="Flytta markören till slutet av textarea eller inmatning - CSS-tricks" rel="bookmark">Flytta markören till slutet av textarea eller inmatning - CSS-tricks 2025</a></h3> </div> </div> </li> </ul> </div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Bästa omdömen om månaden</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224559-c-arraylist-tutorial-with-examples" title="C # ArrayList Tutorial med exempel" rel="bookmark">C # ArrayList Tutorial med exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224560-c-hashtable-with-examples" title="C # Hashtable med exempel" rel="bookmark">C # Hashtable med exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224561-c-stack-with-example" title="C # Stack med exempel" rel="bookmark">C # Stack med exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224562-c-queue-with-examples" title="C # kö med exempel" rel="bookmark">C # kö med exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224563-c-stream-tutorial-streamreader-streamwriter-with-example" title="C # Stream Tutorial: StreamReader, StreamWriter med exempel" rel="bookmark">C # Stream Tutorial: StreamReader, StreamWriter med exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224564-c-file-io-handling-operations-examples" title="C # File I / O-hantering (exempel)" rel="bookmark">C # File I / O-hantering (exempel)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224566-c-serialization-and-deserialization-with-example" title="C # Serialisering & Deserialisering med exempel" rel="bookmark">C # Serialisering & Deserialisering med exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224567-coded-ui-test-automation-framework-tutorial" title="Coded UI Test Automation Framework Tutorial" rel="bookmark">Coded UI Test Automation Framework Tutorial</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224569-c-tutorial-pdf-beginner-examples-download-now" title="C # Handledning PDF: Nybörjarexempel (Ladda ner nu)" rel="bookmark">C # Handledning PDF: Nybörjarexempel (Ladda ner nu)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224571-14-best-c-books-2021-update" title="14 BÄSTA C # -böcker (2021-uppdatering)" rel="bookmark">14 BÄSTA C # -böcker (2021-uppdatering)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224572-how-to-download-and-install-c-ide-on-windows" title="Hur man laddar ner och installerar C ++ IDE på Windows" rel="bookmark">Hur man laddar ner och installerar C ++ IDE på Windows</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224573-c-windows-forms-application-tutorial-with-example" title="C # Windows Forms Application Tutorial med exempel" rel="bookmark">C # Windows Forms Application Tutorial med exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224574-c-database-connection-how-to-connect-sql-server-example" title="C # databasanslutning: Hur man ansluter SQL Server (exempel)" rel="bookmark">C # databasanslutning: Hur man ansluter SQL Server (exempel)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224575-arrays-in-c-declare-initialize-pointer-to-array-examples" title="Arrayer i C ++ - Förklara - Initiera - Pointer to Array Exempel" rel="bookmark">Arrayer i C ++ - Förklara - Initiera - Pointer to Array Exempel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8224576-c-variables-and-types-int-double-char-string-bool" title="C ++ variabler och typer: int, dubbel, char, sträng, bool" rel="bookmark">C ++ variabler och typer: int, dubbel, char, sträng, bool</a></h3> </div> </div> </li> </ul> </div> <div id="container-5533149ee6411a5f99b370c693e87966"></div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Top Artiklar</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8222927-how-to-upload-and-download-a-file-using-selenium-webdriver" title="Hur laddar jag upp & Ladda ner en fil med Selenium Webdriver" rel="bookmark"><img src="https://cdn.css-code.org/8978956/how_to_upload_ampamp_download_a_file_using_selenium_webdriver.png.webp" loading="lazy" alt="Hur laddar jag upp & Ladda ner en fil med Selenium Webdriver" title="Hur laddar jag upp & Ladda ner en fil med Selenium Webdriver" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222927-how-to-upload-and-download-a-file-using-selenium-webdriver" title="Hur laddar jag upp & Ladda ner en fil med Selenium Webdriver" rel="bookmark">Hur laddar jag upp & Ladda ner en fil med Selenium Webdriver 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8222928-mouse-click-and-keyboard-event-action-class-in-selenium-webdriver" title="Musklick & Tangentbordshändelse: Actionklass i Selen Webdriver" rel="bookmark"><img src="https://cdn.css-code.org/9606273/mouse_click_ampamp_keyboard_event_action_class_in_selenium_webdriver.png.webp" loading="lazy" alt="Musklick & Tangentbordshändelse: Actionklass i Selen Webdriver" title="Musklick & Tangentbordshändelse: Actionklass i Selen Webdriver" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222928-mouse-click-and-keyboard-event-action-class-in-selenium-webdriver" title="Musklick & Tangentbordshändelse: Actionklass i Selen Webdriver" rel="bookmark">Musklick & Tangentbordshändelse: Actionklass i Selen Webdriver 2025</a></h3> </div> </div> </li><li class="post-list-small__item"> <div class="post-list-small__entry clearfix"> <div class="post-list-small__img-holder"> <div class="thumb-container thumb-100"><a href="/8222929-how-to-verify-tooltip-using-selenium-webdriver" title="Hur du verifierar verktygstips med Selenium WebDriver" rel="bookmark"><img src="https://cdn.css-code.org/2951204/how_to_verify_tooltip_using_selenium_webdriver.png.webp" loading="lazy" alt="Hur du verifierar verktygstips med Selenium WebDriver" title="Hur du verifierar verktygstips med Selenium WebDriver" class="post-list-small__img--rounded" style="width:88px;height:88px" /></a></div> </div> <div class="post-list-small__body"> <h3 class="post-list-small__entry-title"><a href="/8222929-how-to-verify-tooltip-using-selenium-webdriver" title="Hur du verifierar verktygstips med Selenium WebDriver" rel="bookmark">Hur du verifierar verktygstips med Selenium WebDriver 2025</a></h3> </div> </div> </li> </ul> </div> </aside> </div> </div> <footer class="footer footer--dark"> <div class="container"> <div class="footer__widgets"> <div class="row"> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Populära Inlägg</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8223912-how-to-post-outgoing-vendor-payment-f-53-in-sap" title="Så här bokar du utgående leverantörsbetalning F-53 i SAP" rel="bookmark">Så här bokar du utgående leverantörsbetalning F-53 i SAP</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8223913-how-to-post-a-purchase-return-fb65-in-sap-fi" title="Hur du bokar en köpretur FB65 i SAP FI" rel="bookmark">Hur du bokar en köpretur FB65 i SAP FI</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8223914-withholding-tax-in-sap-during-vendor-invoice-and-payment-posting" title="Kupongskatt i SAP under leverantörsfaktura & Betalning bokföring" rel="bookmark">Kupongskatt i SAP under leverantörsfaktura & Betalning bokföring</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8223916-how-to-map-symbolic-account-to-gl-account-in-sap" title="Så här kartlägger du ett symbolskonto till ett artskonto i SAP" rel="bookmark">Så här kartlägger du ett symbolskonto till ett artskonto i SAP</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8223917-posting-rounding-differences-in-sap-tutorial" title="Boka avrundningsskillnader i SAP-handledning" rel="bookmark">Boka avrundningsskillnader i SAP-handledning</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Redaktionen</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8222461-9-sap-ebook-bundle-just-49" title="9 SAP eBook-paket Bara $ 49" rel="bookmark">9 SAP eBook-paket Bara $ 49</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8222462-what-is-agile-testing-methodology-process-and-life-cycle" title="Vad är Agile Testing? Metodik, process & Livscykel" rel="bookmark">Vad är Agile Testing? Metodik, process & Livscykel</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8222463-scrum-testing-methodology-tutorial-what-is-process-artifacts-sprint" title="Scrum Testing Methodology Tutorial: What is, Process, Artefacts, Sprint" rel="bookmark">Scrum Testing Methodology Tutorial: What is, Process, Artefacts, Sprint</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8222464-automation-testing-framework-for-agilescrum-methodology" title="Automation Testing Framework for Agile / Scrum Methodology" rel="bookmark">Automation Testing Framework for Agile / Scrum Methodology</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8222465-agile-vs-waterfall-know-the-difference-between-methodologies" title="Agile Vs Waterfall: Känn skillnaden mellan metoder" rel="bookmark">Agile Vs Waterfall: Känn skillnaden mellan metoder</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Top Artiklar</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004080-facebook-like-button-for-wordpress" title="Facebook "Gilla" -knapp för Wordpress - CSS-tricks" rel="bookmark">Facebook "Gilla" -knapp för Wordpress - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004081-find-id-of-top-most-parent-page" title="Hitta ID för den översta föräldersidan - CSS-tricks" rel="bookmark">Hitta ID för den översta föräldersidan - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004082-embed-a-page-inside-a-page" title="Bädda in en sida inuti en sida - CSS-tricks" rel="bookmark">Bädda in en sida inuti en sida - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004083-dynamic-title-tag" title="Dynamisk titeltagg - CSS-tricks" rel="bookmark">Dynamisk titeltagg - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004084-get-content-by-id" title="Skaffa innehåll efter ID - CSS-tricks" rel="bookmark">Skaffa innehåll efter ID - CSS-tricks</a></h3> </div> </div> </li> </ul> </div> </div> </div> <p>© Copyright sv.css-code.org, 2025 Juli | <a href="https://sv.css-code.org/about-site" title="Om webbplatsen">Om webbplatsen</a> | <a href="https://sv.css-code.org/contacts" title="Kontakter">Kontakter</a> | <a href="https://sv.css-code.org/privacy-policy" title="Integritetspolicy">Integritetspolicy</a>. </p> </div> </div> </footer> <link href="https://css-code.org/template/css/style.min.css" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'" /> </body> </html>