Sådan bruges Selen IDE med Scripts & Kommandoer (Assert, Verify)

Indholdsfortegnelse:

Anonim

Vi bruger Mercury Tours-webstedet som vores webapplikation under test. Det er et online flyreservationssystem, der indeholder alle de elementer, vi har brug for til denne vejledning. Dens URL er http://demo.guru99.com/test/newtours/, og dette vil være vores basis-URL.

Opret et script ved optagelse

Lad os nu oprette vores første testscript i Selen IDE ved hjælp af den mest almindelige metode - ved optagelse. Derefter udfører vi vores script ved hjælp af afspilningsfunktionen.

Trin 1

  • Start Firefox og Selen IDE.
  • Indtast værdien for vores basis-URL: http://demo.guru99.com/test/newtours/.
  • Slå optageknappen til (hvis den endnu ikke er slået til som standard).
Trin 2

I Firefox skal du navigere til http://demo.guru99.com/test/newtours/. Firefox skal føre dig til den side, der ligner den, der er vist nedenfor.

Trin 3
  • Højreklik på et tomt rum på siden, som på Mercury Tours-logoet i øverste venstre hjørne. Dette åbner Selenium IDE-kontekstmenuen. Bemærk: Klik ikke på hyperlinkede objekter eller billeder
  • Vælg indstillingen "Vis tilgængelige kommandoer".
  • Vælg derefter "assertTitle exact: Welcome: Mercury Tours." Dette er en kommando, der sørger for, at sidetitlen er korrekt.
Trin 4
  • I tekstfeltet "Brugernavn" i Mercury Tours skal du skrive et ugyldigt brugernavn, "ugyldigt UNN".
  • Skriv en ugyldig adgangskode, "ugyldigPWD", i tekstboksen "Adgangskode".
Trin 5
  • Klik på knappen "Log ind". Firefox skal føre dig til denne side.
Trin 6

Slå optageknappen fra for at stoppe optagelsen. Dit script skal nu se ud som det nedenfor.

Trin 7

Nu hvor vi er færdige med vores test script, gemmer vi det i en test sag. I menuen File skal du vælge "Save Test Case". Alternativt kan du blot trykke på Ctrl + S.

Trin 8
  • Vælg din ønskede placering, og navngiv derefter testsagen som "Ugyldig_login".
  • Klik på knappen "Gem".
Trin 9.

Bemærk, at filen blev gemt som HTML.

Trin 10.

Gå tilbage til Selenium IDE, og klik på knappen Afspil for at udføre hele scriptet. Selen IDE skal være i stand til at replikere alt fejlfrit.

Introduktion til Selen Commands - Selenese

  • Selenese-kommandoer kan maksimalt have to parametre: mål og værdi.
  • Parametre kræves ikke hele tiden. Det afhænger af, hvor mange kommandoen har brug for.

3 typer kommandoer

Handlinger

Dette er kommandoer, der direkte interagerer med sideelementer.

Eksempel: kommandoen "klik" er en handling, fordi du interagerer direkte med det element, du klikker på.

Kommandoen "type" er også en handling, fordi du lægger værdier i et tekstfelt, og tekstfeltet viser dem til gengæld. Der er en tovejs interaktion mellem dig og tekstboksen.

Tilbehør

De er kommandoer, der giver dig mulighed for at gemme værdier til en variabel.

Eksempel: kommandoen "storeTitle" er en accessor, fordi den kun "læser" sidetitlen og gemmer den i en variabel. Det interagerer ikke med noget element på siden.

Påstande

De er kommandoer, der verificerer, om en bestemt betingelse er opfyldt.

3 typer påstande

  • Påstå . Når en "assert" -kommando mislykkes, stoppes testen med det samme.
  • Bekræft . Når en "bekræft" kommando mislykkes, logger Selenium IDE denne fejl og fortsætter med testudførelsen.
  • Vent til . Før du fortsætter til den næste kommando, venter "waitFor" -kommandoer først på, at en bestemt tilstand bliver sand.
    • Hvis tilstanden bliver sand inden for ventetiden, går trinnet.
    • Hvis betingelsen ikke bliver sand, mislykkes trinnet. Fejl logges, og testudførelse fortsætter til næste kommando.
    • Som standard er timeoutværdien indstillet til 30 sekunder. Du kan ændre dette i dialogboksen Indstillinger for Selen IDE under fanen Generelt.

Assert vs. Verify

Almindelige kommandoer

Kommando Antal parametre Beskrivelse
åben 0 - 2

Åbner en side ved hjælp af en URL.

klik / klik og vent 1

Klik på et bestemt element.

type / typeKeys 2

Indtaster en række tegn.

verificereTitle / assertTitle 1

Sammenligner den aktuelle sidetitel med en forventet værdi.

verificereTextPræsent 1

Kontrollerer, om der findes en bestemt tekst på siden.

verificereElementPræsent 1

Kontrollerer tilstedeværelsen af ​​et bestemt element.

verificeringstabel 2

Sammenligner indholdet af en tabel med forventede værdier.

ventForPageToLoad 1

Sætter udførelsen på pause, indtil siden er indlæst helt.

waitForElementPresent 1

Sætter udførelsen på pause, indtil det angivne element bliver til stede.

Opret et script manuelt med Firebug

Nu skal vi genskabe den samme testtilfælde manuelt ved at indtaste kommandoerne. Denne gang skal vi bruge Firebug.

Trin 1
  • Åbn Firefox og Selen IDE.
  • Indtast grundwebadressen (http://demo.guru99.com/test/newtours/).
  • Optageknappen skal være FRA.
Trin 2: Klik på den øverste tomme linje i Editoren.

Skriv "åben" i tekstfeltet Kommando, og tryk på Enter.

Trin 3
  • Naviger Firefox til vores basis-URL, og aktiver Firebug
  • I ruden Selen IDE Editor skal du vælge den anden linje (linjen under kommandoen "åben") og oprette den anden kommando ved at skrive "assertTitle" i kommandofeltet.
  • Du er velkommen til at bruge funktionen autofuldførelse.
Trin 4
  • I Firebug skal du udvide -tagget for at få vist -tagget.</li> <li>Klik på værdien af ​​<title> -tagget (som er "Welcome: Mercury Tours"), og indsæt det i feltet Target i Editoren.</li> </ul> </td> </tr> <tr> <td><strong>Trin 5</strong> <ul> <li>For at oprette den tredje kommando skal du klikke på den tredje tomme linje i Editoren og indtaste "type" i tekstfeltet Kommando.</li> <li>I Firebug skal du klikke på knappen "Inspicer".</li> </ul> </td> </tr> <tr> <td>Klik på tekstfeltet Brugernavn. Bemærk, at Firebug automatisk viser dig HTML-koden for dette element.</td> </tr> <tr> <td><strong>Trin 6</strong> <p>Bemærk, at tekstfeltet Brugernavn ikke har et ID, men det har en NAVN-attribut. Vi vil derfor bruge dets NAVN som lokaliserende. Kopier NAVN-værdien, og indsæt den i feltet Mål i Selen IDE.</p> <p>Stadig i tekstfeltet Mål, præfikser "userName" med "name =", hvilket indikerer, at Selen IDE skal målrette mod et element, hvis NAME-attribut er "userName".</p> <p>Skriv "ugyldig UN" i tekstfeltet Værdi i Selen IDE. Dit testscript skal nu se ud som billedet nedenfor. Vi er færdige med den tredje kommando. Bemærk: I stedet for ugyldig UN kan du indtaste enhver anden tekststreng. Men Selen IDE er store og små bogstaver, og du skriver værdier / attributter nøjagtigt som i applikationen.</p> </td> </tr> <tr> <td><strong>Trin 7</strong> <ul> <li>For at oprette den fjerde kommando skal du indtaste "type" i tekstfeltet Kommando.</li> <li>Brug igen Firebugs "Inspicer" -knap for at hente lokaliseringen til tekstboksen "Adgangskode".</li> </ul> <ul> <li> <p>Indsæt NAME-attributten ("adgangskode") i feltet Mål, og præfikset med "navn ="</p> </li> <li> <p>Skriv "invalidPW" i feltet Værdi i Selen IDE. Dit testscript skal nu se ud som billedet nedenfor.</p> </li> </ul> </td> </tr> <tr> <td><strong>Trin 8</strong> <ul> <li>For den femte kommando skal du skrive "clickAndWait" i kommandotekstfeltet i Selen IDE.</li> <li>Brug Firebug's "Inspicer" -knap for at hente lokalisatoren til knappen "Log ind".</li> </ul> <ul> <li>Indsæt værdien af ​​attributten NAME ("login") i tekstfeltet Mål, og præfikset med "name =".</li> <li>Dit testscript skal nu se ud som billedet nedenfor.</li> </ul> </td> </tr> </tbody> </table> <p><strong>Trin 9:</strong> Gem testtilfældet på samme måde som i det foregående afsnit.</p> <a id="menu-6"></a> <h2>Brug af Find-knappen</h2> <p><strong>Find-knappen i Selen IDE bruges til at kontrollere, om det, vi havde sat i tekstfeltet Mål, faktisk er det rigtige UI-element.</strong></p> <p>Lad os bruge Invalid_login test case, som vi oprettede i de foregående sektioner. Klik på en vilkårlig kommando med en Target-post, sig den tredje kommando.</p> <p>Klik på knappen Find. Bemærk, at tekstfeltet Brugernavn på siden Mercury Tours bliver fremhævet i et sekund.</p> <p>Dette indikerer, at Selen IDE var i stand til at detektere og få adgang til det forventede element korrekt. Hvis Find-knappen fremhæver et andet eller slet ikke noget element, skal der være noget galt med dit script.</p> <a id="menu-7"></a> <h2>Udfør kommando</h2> <p><strong>Dette giver dig mulighed for at udføre en enkelt kommando uden at køre hele testsagen</strong> . Klik bare på den linje, du vil udføre, og klik derefter enten på "Handlinger> Udfør denne kommando" fra menulinjen, eller tryk blot på "X" på dit tastatur.</p> <p><strong>Trin 1.</strong> Sørg for, at din browser er på Mercury Tours hjemmeside. Klik på den kommando, du vil udføre. I dette eksempel skal du klikke på linjen "type | brugernavn | ugyldig UN".</p> <p><strong>Trin 2.</strong> Tryk på "X" på tastaturet.</p> <p><strong>Trin 3.</strong> Bemærk, at tekstfeltet for brugernavn bliver befolket med teksten "ugyldig UN"</p> <p><strong>At udføre kommandoer på denne måde afhænger meget af den side, som Firefox i øjeblikket viser</strong> . Dette betyder, at hvis du prøver eksemplet ovenfor med Google-startsiden vist i stedet for Mercury Tours ', vil dit trin mislykkes, fordi der ikke er noget tekstfelt med en "brugernavn" -attribut på Googles startside.</p> <a id="menu-8"></a> <h2>Startpunkt</h2> <p><strong>Et startpunkt er en indikator, der fortæller Selen IDE, hvilke linjer udførelsen starter</strong> . <strong>Dens genvejstast er "S".</strong></p> <p>I eksemplet ovenfor starter afspilning på tredje linje (type | adgangskode | ugyldigPW). <strong>Du kan kun have et startpunkt i et enkelt test script.</strong></p> <p>Startpunktet ligner Udfør kommando, således at de er afhængige af den aktuelt viste side. Startpunktet mislykkes, hvis du er på den forkerte side.</p> <a id="menu-9"></a> <h2>Breakpoints</h2> <p>Breakpoints er indikatorer, der fortæller Selen IDE, hvor testen automatisk skal standses. <strong>Genvejstasten er "B".</strong></p> <p>Den gule fremhævning betyder, at det aktuelle trin afventer. Dette beviser, at Selen IDE har standset udførelsen på det trin. <strong>Du kan have flere brudpunkter i en testtilfælde.</strong></p> <a id="menu-10"></a> <h2>Trin</h2> <p>Det giver dig mulighed for at udføre efterfølgende kommandoer en ad gangen efter at have sat testsagen på pause. Lad os bruge scenariet i det foregående afsnit "Breakpoints."</p> <table> <tbody> <tr> <td width="50%"> </td> <td> <p><strong>Før du klikker på "Trin".</strong></p> <p>Testsagen stopper på linjen "clickAndWait | login".</p> </td> </tr> <tr> <td width="50%"> </td> <td> <p><strong>Efter at have klikket på "Trin".</strong></p> <p>Linjen "clickAndWait | login" køres og sættes på pause til den næste kommando (verificereTitle | Log på: Mercury Tours).</p> <p>Bemærk, at den næste linje er sat på pause, selvom der ikke er noget brudpunkt der. Dette er hovedformålet med trinfunktionen - den udfører de efterfølgende kommandoer en ad gangen for at give dig mere tid til at inspicere resultatet efter hvert trin.</p> </td> </tr> </tbody> </table> <a id="menu-11"></a> <h2>Vigtige ting at bemærke, når du bruger andre formater i kildevisning</h2> <p><strong>Selen IDE fungerer kun godt med HTML - andre formater er stadig i eksperimentel tilstand</strong> . Det <strong>tilrådes IKKE</strong> at oprette eller redigere tests ved hjælp af andre formater i Source View, fordi der stadig er meget arbejde, der er nødvendigt for at gøre det stabilt. Nedenfor er de kendte fejl fra version 1.9.1.</p> <ul> <li>Du kan ikke udføre afspilning eller skifte tilbage til tabelvisning, medmindre du vender tilbage til HTML.</li> <li>Den eneste måde at tilføje kommandoer sikkert på kildekoden er ved at optage dem.</li> <li>Når du ændrer kildekoden manuelt, går alt det tabt, når du skifter til et andet format.</li> <li>Selvom du kan gemme din testsag, mens du er i Source View, kan Selenium IDE ikke åbne den.</li> </ul> <p><strong>Den anbefalede måde at konvertere Selenese-test på er at bruge indstillingen "Eksportér testsag som ..." under menuen Filer og ikke gennem kildevisningen.</strong></p> <a id="menu-12"></a> <h2>Resumé</h2> <ul> <li>Testskripter kan oprettes enten ved at optage eller skrive kommandoer og parametre manuelt.</li> <li>Når man opretter scripts manuelt, bruges Firebug til at hente locatoren.</li> <li>Find-knappen bruges til at kontrollere, om kommandoen er i stand til at få adgang til det rigtige element.</li> <li>Tabelvisning viser et testscript i tabelform, mens Source View viser det i HTML-format.</li> <li>At ændre kildevisningen til et ikke-HTML-format er stadig eksperimentelt.</li> <li>Brug ikke Source View til at oprette tests i andre formater. Brug eksportfunktionerne i stedet.</li> <li>Parametre kræves ikke hele tiden. Det afhænger af kommandoen.</li> <li>Der er tre typer kommandoer:</li> <ul> <li>Handlinger - interagerer direkte med sideelementer</li> <li>Accessors - "læser" en elementejendom og gemmer den i en variabel</li> <li>Påstande - sammenligner en faktisk værdi med en forventet</li> </ul> <li>Påstande har tre typer:</li> <ul> <li>Påstand - efter fejl udføres efterfølgende trin ikke længere</li> <li>Bekræft - efter fejl udføres efterfølgende trin stadig.</li> <li>WaitFor - passerer, hvis den angivne betingelse bliver sand inden for timeoutperioden; Ellers mislykkes det</li> </ul> <li>De mest almindelige kommandoer er:</li> <ul> <li>åben</li> <li>klik / klik og vent</li> <li>type / typeKeys</li> <li>verificereTitle / assertTitle</li> <li>verificereTextPræsent</li> <li>verificereElementPræsent</li> <li>verificeringstabel</li> <li>ventForPageToLoad</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ære Indlæg</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="/8222751-understand-systemutil-run-setsecure-set-type-qtpuft-examples" title="Forstå SystemUtil.Run, SetSecure, Set, Type: QTP / UFT eksempler" rel="bookmark"><img src="https://cdn.css-code.org/1798887/understand_systemutilrun-_setsecure-_set-_type_qtpuft_examples.png.webp" loading="lazy" alt="Forstå SystemUtil.Run, SetSecure, Set, Type: QTP / UFT eksempler" title="Forstå SystemUtil.Run, SetSecure, Set, Type: QTP / UFT eksempler" 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="/8222751-understand-systemutil-run-setsecure-set-type-qtpuft-examples" title="Forstå SystemUtil.Run, SetSecure, Set, Type: QTP / UFT eksempler" rel="bookmark">Forstå SystemUtil.Run, SetSecure, Set, Type: QTP / UFT eksempler 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="/8222752-how-to-replay-a-script-in-qtpuft-with-example" title="Sådan afspilles et script igen i QTP / UFT med eksempel" rel="bookmark"><img src="https://cdn.css-code.org/6219922/how_to_replay_a_script_in_qtpuft_with_example.png.webp" loading="lazy" alt="Sådan afspilles et script igen i QTP / UFT med eksempel" title="Sådan afspilles et script igen i QTP / UFT med eksempel" 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="/8222752-how-to-replay-a-script-in-qtpuft-with-example" title="Sådan afspilles et script igen i QTP / UFT med eksempel" rel="bookmark">Sådan afspilles et script igen i QTP / UFT med eksempel 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="/8222753-understand-test-results-in-qtpuft-with-printexport-example" title="Forstå testresultater i QTP / UFT med eksempel på udskrivning / eksport" rel="bookmark"><img src="https://cdn.css-code.org/4012609/understand_test_results_in_qtpuft_with_printexport_example.png.webp" loading="lazy" alt="Forstå testresultater i QTP / UFT med eksempel på udskrivning / eksport" title="Forstå testresultater i QTP / UFT med eksempel på udskrivning / eksport" 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="/8222753-understand-test-results-in-qtpuft-with-printexport-example" title="Forstå testresultater i QTP / UFT med eksempel på udskrivning / eksport" rel="bookmark">Forstå testresultater i QTP / UFT med eksempel på udskrivning / eksport 2025</a></h3> </div> </div> </li> </ul> </div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Bedste anmeldelser for måned</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="/8004269-34-integrating-and-customizing-google-maps" title="# 34: Integrering og tilpasning af Google Maps - CSS-tricks" rel="bookmark"># 34: Integrering og tilpasning af Google Maps - CSS-tricks</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="/8004270-32-using-the-unit-png-fix" title="# 32: Brug af enheden PNG Fix - CSS-tricks" rel="bookmark"># 32: Brug af enheden PNG Fix - CSS-tricks</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="/8004271-33-ecommerce-product-page-makeover" title="# 33: Makeover for e-handel-produktside - CSS-tricks" rel="bookmark"># 33: Makeover for e-handel-produktside - CSS-tricks</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="/8004272-35-intro-to-jquery-2" title="# 35: Introduktion til jQuery 2 - CSS-tricks" rel="bookmark"># 35: Introduktion til jQuery 2 - CSS-tricks</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="/8004273-37-status-fluid-and-menu-bar-apps" title="# 37: Apps for status, væske og menulinje - CSS-tricks" rel="bookmark"># 37: Apps for status, væske og menulinje - CSS-tricks</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="/8004274-36-current-nav-highlighting-using-php-to-set-the-body-id" title="# 36: Aktuel Nav-fremhævning: Brug af PHP til at indstille Body ID - CSS-tricks" rel="bookmark"># 36: Aktuel Nav-fremhævning: Brug af PHP til at indstille Body ID - CSS-tricks</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="/8004275-30-creating-and-sending-html-email" title="# 30: Oprettelse og afsendelse af HTML-e-mail - CSS-tricks" rel="bookmark"># 30: Oprettelse og afsendelse af HTML-e-mail - CSS-tricks</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="/8004276-38-basics-and-tips-on-designing-for-the-iphone" title="# 38: Grundlæggende & tip til design til iPhone - CSS-tricks" rel="bookmark"># 38: Grundlæggende & tip til design til iPhone - CSS-tricks</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="/8004277-39-how-to-use-sifr-3" title="# 39: Sådan bruges sIFR 3 - CSS-tricks" rel="bookmark"># 39: Sådan bruges sIFR 3 - CSS-tricks</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="/8004278-3-converting-a-photoshop-mockup-part-3-of-3" title="# 3: Konvertering af en Photoshop Mockup (del 3 af 3) - CSS-tricks" rel="bookmark"># 3: Konvertering af en Photoshop Mockup (del 3 af 3) - CSS-tricks</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="/8004279-44-hodgepodge-of-wordpress-tricks" title="# 44: Hodgepodge af WordPress-tricks - CSS-tricks" rel="bookmark"># 44: Hodgepodge af WordPress-tricks - CSS-tricks</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="/8004280-40-how-z-index-works" title="# 40: Sådan fungerer z-index - CSS-tricks" rel="bookmark"># 40: Sådan fungerer z-index - CSS-tricks</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="/8004281-43-how-to-use-css-sprites" title="# 43: Sådan bruges CSS Sprites - CSS-tricks" rel="bookmark"># 43: Sådan bruges CSS Sprites - CSS-tricks</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="/8004282-41-wordpress-as-a-cms" title="# 41: WordPress som et CMS - CSS-tricks" rel="bookmark"># 41: WordPress som et CMS - CSS-tricks</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="/8004283-42-all-about-floats-screencast" title="# 42: Alt om Floats Screencast - CSS-tricks" rel="bookmark"># 42: Alt om Floats Screencast - CSS-tricks</a></h3> </div> </div> </li> </ul> </div> <div id="container-5533149ee6411a5f99b370c693e87966"></div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Top Artikler</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="/8222682-what-is-destructive-testing-techniques-methods-example" title="Hvad er destruktiv test? Teknikker, metoder, eksempel" rel="bookmark"><img src="https://cdn.css-code.org/2272285/what_is_destructive_testing_techniques-_methods-_example.png.webp" loading="lazy" alt="Hvad er destruktiv test? Teknikker, metoder, eksempel" title="Hvad er destruktiv test? Teknikker, metoder, eksempel" 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="/8222682-what-is-destructive-testing-techniques-methods-example" title="Hvad er destruktiv test? Teknikker, metoder, eksempel" rel="bookmark">Hvad er destruktiv test? Teknikker, metoder, eksempel 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="/8222683-levels-of-testing-in-software-testing" title="Testniveauer i softwaretest" rel="bookmark"><img src="https://cdn.css-code.org/4388937/levels_of_testing_in_software_testing.png.webp" loading="lazy" alt="Testniveauer i softwaretest" title="Testniveauer i softwaretest" 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="/8222683-levels-of-testing-in-software-testing" title="Testniveauer i softwaretest" rel="bookmark">Testniveauer i softwaretest 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="/8222684-what-is-continuous-testing-in-devops-definition-benefits-tools" title="Hvad er kontinuerlig test i DevOps? Definition, fordele, værktøjer" rel="bookmark"><img src="https://cdn.css-code.org/9766771/what_is_continuous_testing_in_devops_definition-_benefits-_tools.png.webp" loading="lazy" alt="Hvad er kontinuerlig test i DevOps? Definition, fordele, værktøjer" title="Hvad er kontinuerlig test i DevOps? Definition, fordele, værktøjer" 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="/8222684-what-is-continuous-testing-in-devops-definition-benefits-tools" title="Hvad er kontinuerlig test i DevOps? Definition, fordele, værktøjer" rel="bookmark">Hvad er kontinuerlig test i DevOps? Definition, fordele, værktøjer 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ære Indlæg</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003712-cookie-gettersetter" title="Cookie Getter / Setter - CSS-tricks" rel="bookmark">Cookie Getter / Setter - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003713-cross-browser-dependency-free-dom-ready" title="Cross-Browser Afhængighedsfri DOM-klar - CSS-tricks" rel="bookmark">Cross-Browser Afhængighedsfri DOM-klar - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003714-css-for-when-javascript-is-enabled" title="CSS til når JavaScript er aktiveret CSS-tricks" rel="bookmark">CSS til når JavaScript er aktiveret CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003715-current-page-with-javascript" title="Nuværende side med JavaScript - CSS-tricks" rel="bookmark">Nuværende side med JavaScript - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003716-default-arguments-for-functions" title="Standardargumenter for funktioner - CSS-tricks" rel="bookmark">Standardargumenter for funktioner - CSS-tricks</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Redaktørens Valg</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8224993-mysql-aggregate-functions-tutorial-sum-avg-max-min-count-distinct" title="MySQL Aggregate Funtions Tutorial: SUM, AVG, MAX, MIN, COUNT, DISTINCT" rel="bookmark">MySQL Aggregate Funtions Tutorial: SUM, AVG, MAX, MIN, COUNT, DISTINCT</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8224994-mysql-auto-increment-with-examples" title="MySQL AUTO_INCREMENT med eksempler" rel="bookmark">MySQL AUTO_INCREMENT med eksempler</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8224995-mysql-is-null-and-is-not-null-tutorial-with-examples" title="MySQL ER NULL & IS NOT NULL Tutorial med EKSEMPLER" rel="bookmark">MySQL ER NULL & IS NOT NULL Tutorial med EKSEMPLER</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8224996-mysql-alter-drop-rename-modify" title="MYSQL - ALTER, DROP, RENAME, MODIFY" rel="bookmark">MYSQL - ALTER, DROP, RENAME, MODIFY</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8224997-mysql-views-how-to-create-view-from-tables-with-examples" title="MySQL-visninger: Sådan oprettes visning fra tabeller med eksempler" rel="bookmark">MySQL-visninger: Sådan oprettes visning fra tabeller med eksempler</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Top Artikler</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002869-background-origin" title="Baggrund-oprindelse - CSS-tricks" rel="bookmark">Baggrund-oprindelse - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002871-background-color" title="Baggrundsfarve - CSS-tricks" rel="bookmark">Baggrundsfarve - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002872-background-image" title="Baggrundsbillede - CSS-tricks" rel="bookmark">Baggrundsbillede - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002873-background-position" title="Baggrundsposition - CSS-tricks" rel="bookmark">Baggrundsposition - CSS-tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002874-background-repeat" title="Baggrund-gentagelse - CSS-tricks" rel="bookmark">Baggrund-gentagelse - CSS-tricks</a></h3> </div> </div> </li> </ul> </div> </div> </div> <p>© Copyright da.css-code.org, 2025 Juli | <a href="https://da.css-code.org/about-site" title="Om webstedet">Om webstedet</a> | <a href="https://da.css-code.org/contacts" title="Kontakter">Kontakter</a> | <a href="https://da.css-code.org/privacy-policy" title="Fortrolighedspolitik">Fortrolighedspolitik</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>