Hvordan bruke Selen IDE med Scripts & Kommandoer (Påstå, Bekreft)

Innholdsfortegnelse:

Anonim

Vi vil bruke Mercury Tours-nettstedet som vår webapplikasjon under test. Det er et online flyreservasjonssystem som inneholder alle elementene vi trenger for denne opplæringen. URL-en er http://demo.guru99.com/test/newtours/, og dette vil være vår grunn-URL.

Lag et skript ved innspilling

La oss nå lage vårt første testskript i Selen IDE ved å bruke den vanligste metoden - ved opptak. Etterpå skal vi utføre skriptet vårt ved hjelp av avspillingsfunksjonen.

Trinn 1

  • Start Firefox og Selen IDE.
  • Skriv inn verdien for grunn-URL: http://demo.guru99.com/test/newtours/.
  • Slå på Record-knappen (hvis den ennå ikke er slått på som standard).
Steg 2

I Firefox navigerer du til http://demo.guru99.com/test/newtours/. Firefox bør ta deg til siden som ligner på den som er vist nedenfor.

Trinn 3
  • Høyreklikk på et tomt område på siden, som på Mercury Tours-logoen øverst til venstre. Dette viser Selenium IDE-kontekstmenyen. Merk: Ikke klikk på noen hyperkoblede objekter eller bilder
  • Velg alternativet "Vis tilgjengelige kommandoer".
  • Velg deretter "assertTitle exact: Welcome: Mercury Tours." Dette er en kommando som sørger for at sidetittelen er riktig.
Trinn 4
  • Skriv inn et ugyldig brukernavn, "ugyldig UNN" i tekstboksen "Brukernavn" i Mercury Tours.
  • Skriv inn et ugyldig passord, "invalidPWD", i tekstboksen "Passord".
Trinn 5
  • Klikk på "Pålogging" -knappen. Firefox burde ta deg til denne siden.
Trinn 6

Slå av opptaksknappen for å stoppe opptaket. Skriptet ditt skal nå se ut som det som vises nedenfor.

Trinn 7

Nå som vi er ferdige med testskriptet vårt, skal vi lagre det i en testsak. Velg "Lagre testtilfelle" i Fil-menyen. Alternativt kan du bare trykke Ctrl + S.

Trinn 8
  • Velg ønsket plassering, og navngi deretter testsaken som "Ugyldig innlogging".
  • Klikk på "Lagre" -knappen.
Trinn 9.

Legg merke til at filen ble lagret som HTML.

Trinn 10.

Gå tilbake til Selenium IDE og klikk på avspillingsknappen for å utføre hele skriptet. Selen IDE skal kunne replikere alt feilfritt.

Introduksjon til selenkommandoer - selenesisk

  • Selenes-kommandoer kan ha maksimalt to parametere: mål og verdi.
  • Parametere er ikke nødvendig hele tiden. Det avhenger av hvor mange kommandoen trenger.

3 typer kommandoer

Handlinger

Dette er kommandoer som direkte samhandler med sideelementene.

Eksempel: "klikk" -kommandoen er en handling fordi du samhandler direkte med elementet du klikker på.

Kommandoen "type" er også en handling fordi du legger verdier i en tekstboks, og tekstboksen viser dem til gjengjeld. Det er en toveis interaksjon mellom deg og tekstboksen.

Tilbehør

De er kommandoer som lar deg lagre verdier til en variabel.

Eksempel: "storeTitle" -kommandoen er en tilgangstype fordi den bare "leser" sidetittelen og lagrer den i en variabel. Det samhandler ikke med noe element på siden.

Påstander

De er kommandoer som verifiserer om en viss betingelse er oppfylt.

3 typer påstander

  • Påstå . Når en "assert" -kommando mislykkes, stoppes testen umiddelbart.
  • Bekreft . Når en "verifiser" -kommando mislykkes, logger Selenium IDE denne feilen og fortsetter med testutførelsen.
  • Vent til . Før du fortsetter til neste kommando, vil "waitFor" -kommandoer først vente på at en viss tilstand skal bli oppfylt.
    • Hvis tilstanden blir oppfylt i løpet av ventetiden, går trinnet.
    • Hvis tilstanden ikke blir oppfylt, mislykkes trinnet. Feil logges, og testutførelse fortsetter til neste kommando.
    • Som standard er tidsavbruddsverdien satt til 30 sekunder. Du kan endre dette i dialogboksen Selen IDE Options under kategorien Generelt.

Påstand vs Bekreft

Vanlige kommandoer

Kommando Antall parametere Beskrivelse
åpen 0 - 2

Åpner en side ved hjelp av en URL.

klikk / klikkAndWait 1

Klikk på et spesifisert element.

type / typeKeys 2

Taster en sekvens av tegn.

verifisere tittel / assertTitle 1

Sammenligner den faktiske sidetittelen med en forventet verdi.

verifisereTextPresent 1

Sjekker om en bestemt tekst er funnet på siden.

verifisereElementPresent 1

Kontrollerer tilstedeværelsen av et bestemt element.

verifiseringstabell 2

Sammenligner innholdet i en tabell med forventede verdier.

waitForPageToLoad 1

Pauser utførelsen til siden er lastet helt inn.

waitForElementPresent 1

Pauser utførelsen til det angitte elementet blir til stede.

Opprett et skript manuelt med Firebug

Nå skal vi gjenskape den samme testsaken manuelt, ved å skrive inn kommandoene. Denne gangen må vi bruke Firebug.

Trinn 1
  • Åpne Firefox og Selen IDE.
  • Skriv inn basis-URL (http://demo.guru99.com/test/newtours/).
  • Opptaksknappen skal være AV.
Trinn 2: Klikk på den øverste tomme linjen i Editor.

Skriv "åpne" i tekstboksen Kommando og trykk Enter.

Trinn 3
  • Naviger Firefox til vår grunnleggende URL og aktiver Firebug
  • I Selenium IDE Editor-ruten velger du den andre linjen (linjen under "åpen" kommando) og oppretter den andre kommandoen ved å skrive "assertTitle" i kommandofeltet.
  • Bruk gjerne autofullføringsfunksjonen.
Trinn 4
  • I Firebug utvider du -koden for å vise -koden.</li> <li>Klikk på verdien til <title> -koden (som er "Welcome: Mercury Tours") og lim den inn i målfeltet i Editor.</li> </ul> </td> </tr> <tr> <td><strong>Trinn 5</strong> <ul> <li>For å opprette den tredje kommandoen, klikk på den tredje blanke linjen i Editor og tast inn "type" i tekstboksen Kommando.</li> <li>I Firebug klikker du på "Inspiser" -knappen.</li> </ul> </td> </tr> <tr> <td>Klikk på tekstboksen Brukernavn. Legg merke til at Firebug automatisk viser deg HTML-koden for det elementet.</td> </tr> <tr> <td><strong>Trinn 6</strong> <p>Legg merke til at tekstboksen Brukernavn ikke har ID, men den har et NAVN-attributt. Vi skal derfor bruke NAVN som lokaliseringsprogram. Kopier NAME-verdien og lim den inn i Target-feltet i Selen IDE.</p> <p>Fortsett i Target-tekstboksen, prefiks "userName" med "name =", noe som indikerer at Selen IDE skal målrette mot et element hvis NAME-attributt er "userName."</p> <p>Skriv "invalidUN" i tekstboksen Verdi i Selen IDE. Testskriptet ditt skal nå se ut som bildet nedenfor. Vi er ferdige med den tredje kommandoen. Merk: I stedet for ugyldig UN kan du skrive inn hvilken som helst annen tekststreng. Men Selen IDE er mellom store og små bokstaver, og du skriver inn verdier / attributter akkurat som i applikasjonen.</p> </td> </tr> <tr> <td><strong>Trinn 7</strong> <ul> <li>For å opprette den fjerde kommandoen, tast inn "type" i tekstboksen Kommando.</li> <li>Igjen, bruk Firebugs "Inspiser" -knapp for å hente lokaliseringsboksen for "Passord" -tekstboksen.</li> </ul> <ul> <li> <p>Lim inn NAME-attributtet ("passord") i målfeltet og prefikset med "name ="</p> </li> <li> <p>Skriv "invalidPW" i Verdifeltet i Selen IDE. Testskriptet ditt skal nå se ut som bildet nedenfor.</p> </li> </ul> </td> </tr> <tr> <td><strong>Trinn 8</strong> <ul> <li>For den femte kommandoen skriver du "clickAndWait" i tekstboksen Kommando i Selen IDE.</li> <li>Bruk Firebugs "Inspiser" -knapp for å hente lokalisatoren for "Logg inn" -knappen.</li> </ul> <ul> <li>Lim inn verdien av NAME-attributtet ("login") på tekstboksen Target og prefiks den med "name =".</li> <li>Testskriptet ditt skal nå se ut som bildet nedenfor.</li> </ul> </td> </tr> </tbody> </table> <p><strong>Trinn 9:</strong> Lagre testsaken på samme måte som vi gjorde i forrige avsnitt.</p> <a id="menu-6"></a> <h2>Ved hjelp av Finn-knappen</h2> <p><strong>Finn-knappen i Selen IDE brukes til å verifisere om det vi hadde lagt i tekstboksen Mål virkelig er det riktige UI-elementet.</strong></p> <p>La oss bruke Invalid_login test case som vi opprettet i forrige seksjoner. Klikk på en kommando med en måloppføring, si den tredje kommandoen.</p> <p>Klikk på Finn-knappen. Legg merke til at tekstfeltet Brukernavn på Mercury Tours-siden blir uthevet i et sekund.</p> <p>Dette indikerer at Selen IDE var i stand til å oppdage og få tilgang til det forventede elementet riktig. Hvis Finn-knappen markerte et annet element eller ikke noe element i det hele tatt, må det være noe galt med skriptet ditt.</p> <a id="menu-7"></a> <h2>Utfør kommando</h2> <p><strong>Dette lar deg utføre en enkelt kommando uten å kjøre hele testsaken</strong> . Bare klikk på linjen du vil utføre, og klikk deretter på "Handlinger> Utfør denne kommandoen" fra menylinjen, eller trykk bare "X" på tastaturet.</p> <p><strong>Trinn 1.</strong> Forsikre deg om at nettleseren din er på Mercury Tours hjemmeside. Klikk på kommandoen du vil utføre. I dette eksemplet klikker du på "type | userName | invalidUN" -linjen.</p> <p><strong>Trinn 2.</strong> Trykk på "X" på tastaturet.</p> <p><strong>Trinn 3.</strong> Observer at tekstboksen for brukernavn blir fylt med teksten "ugyldig UN"</p> <p><strong>Å utføre kommandoer på denne måten er veldig avhengig av siden som Firefox viser for øyeblikket</strong> . Dette betyr at hvis du prøver eksemplet ovenfor med Googles hjemmeside vist i stedet for Mercury Tours ', vil trinnet ditt mislykkes fordi det ikke er noen tekstboks med et "userName" -attributt på Googles hjemmeside.</p> <a id="menu-8"></a> <h2>Startpunkt</h2> <p><strong>Et startpunkt er en indikator som forteller Selen IDE hvilke linjer kjøringen vil starte</strong> . <strong>Hurtigtasten er "S".</strong></p> <p>I eksemplet ovenfor starter avspilling på tredje linje (skriv inn | passord | ugyldigPW). <strong>Du kan bare ha ett startpunkt i et enkelt testskript.</strong></p> <p>Startpunktet ligner på Utfør kommando slik at de er avhengige av siden som vises for øyeblikket. Startpunktet mislykkes hvis du er på feil side.</p> <a id="menu-9"></a> <h2>Breakpoints</h2> <p>Breakpoints er indikatorer som forteller Selen IDE hvor testen skal stoppes automatisk. <strong>Hurtigtasten er "B".</strong></p> <p>Det gule høydepunktet betyr at det nåværende trinnet venter. Dette beviser at Selen IDE har stoppet utførelsen på det trinnet. <strong>Du kan ha flere bruddpunkter i en testtilfelle.</strong></p> <a id="menu-10"></a> <h2>Steg</h2> <p>Den lar deg utføre etterfølgende kommandoer en om gangen etter at testsaken er satt på pause. La oss bruke scenariet i forrige avsnitt "Breakpoints."</p> <table> <tbody> <tr> <td width="50%"> </td> <td> <p><strong>Før du klikker "Trinn".</strong></p> <p>Testsaken stopper på linjen "clickAndWait | login".</p> </td> </tr> <tr> <td width="50%"> </td> <td> <p><strong>Etter å ha klikket "Trinn".</strong></p> <p>Linjen "clickAndWait | login" kjøres og pauses til neste kommando (verifisere tittel | Pålogging: Mercury Tours).</p> <p>Legg merke til at neste linje er satt på pause selv om det ikke er noe bruddpunkt der. Dette er hovedformålet med trinnfunksjonen - den utfører de påfølgende kommandoene en om gangen for å gi deg mer tid til å inspisere resultatet etter hvert trinn.</p> </td> </tr> </tbody> </table> <a id="menu-11"></a> <h2>Viktige ting å merke seg når du bruker andre formater i kildevisning</h2> <p><strong>Selen IDE fungerer bare bra med HTML - andre formater er fortsatt i eksperimentell modus</strong> . Det anbefales <strong>IKKE</strong> å opprette eller redigere tester ved hjelp av andre formater i Source View fordi det fortsatt er mye arbeid som trengs for å gjøre det stabilt. Nedenfor er de kjente feilene fra versjon 1.9.1.</p> <ul> <li>Du vil ikke kunne utføre avspilling eller bytte tilbake til tabellvisning med mindre du går tilbake til HTML.</li> <li>Den eneste måten å legge til kommandoer trygt på kildekoden er å registrere dem.</li> <li>Når du endrer kildekoden manuelt, vil alt gå tapt når du bytter til et annet format.</li> <li>Selv om du kan lagre testsaken din mens du er i Source View, vil ikke Selenium IDE kunne åpne den.</li> </ul> <p><strong>Den anbefalte måten å konvertere Selenese-tester på er å bruke alternativet "Eksporter testtilfelle som ..." under Fil-menyen, og ikke gjennom kildevisningen.</strong></p> <a id="menu-12"></a> <h2>Sammendrag</h2> <ul> <li>Testskript kan opprettes enten ved å registrere eller skrive inn kommandoene og parametrene manuelt.</li> <li>Når du oppretter skript manuelt, brukes Firebug for å få lokaliseringen.</li> <li>Finn-knappen brukes til å kontrollere at kommandoen har tilgang til riktig element.</li> <li>Tabellvisning viser et testskript i tabellform mens Source View viser det i HTML-format.</li> <li>Å endre kildevisningen til et ikke-HTML-format er fortsatt eksperimentelt.</li> <li>Ikke bruk Source View når du oppretter tester i andre formater. Bruk eksportfunksjonene i stedet.</li> <li>Parametere er ikke nødvendig hele tiden. Det avhenger av kommandoen.</li> <li>Det er tre typer kommandoer:</li> <ul> <li>Handlinger - samhandler direkte med sideelementene</li> <li>Accessors - "leser" en elementegenskap og lagrer den i en variabel</li> <li>Påstander - sammenligner en faktisk verdi med en forventet verdi</li> </ul> <li>Påstander har tre typer:</li> <ul> <li>Påstand - etter svikt utføres ikke etterfølgende trinn</li> <li>Bekreft - etter feil utføres fremdeles trinn.</li> <li>WaitFor - passerer hvis den angitte tilstanden blir oppfylt innen tidsavbruddsperioden; ellers vil det mislykkes</li> </ul> <li>De vanligste kommandoene er:</li> <ul> <li>åpen</li> <li>klikk / klikkAndWait</li> <li>type / typeKeys</li> <li>verifisere tittel / assertTitle</li> <li>verifisereTextPresent</li> <li>verifisereElementPresent</li> <li>verifiseringstabell</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ære Innlegg</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="/8225201-top-python-interview-questions-and-answers-download-pdf" title="Topp spørsmål og svar om Python-intervju (Last ned PDF)" rel="bookmark"><img src="https://cdn.css-code.org/3515532/top_python_interview_questions_and_answers_download_pdf.png.webp" loading="lazy" alt="Topp spørsmål og svar om Python-intervju (Last ned PDF)" title="Topp spørsmål og svar om Python-intervju (Last ned PDF)" 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="/8225201-top-python-interview-questions-and-answers-download-pdf" title="Topp spørsmål og svar om Python-intervju (Last ned PDF)" rel="bookmark">Topp spørsmål og svar om Python-intervju (Last ned PDF) 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="/8225202-continuous-integration-vs-continuous-delivery-vs-continuous-deployment" title="Kontinuerlig integrasjon vs kontinuerlig levering vs kontinuerlig implementering" rel="bookmark"><img src="https://cdn.css-code.org/8506837/continuous_integration_vs_continuous_delivery_vs_continuous_deployment.png.webp" loading="lazy" alt="Kontinuerlig integrasjon vs kontinuerlig levering vs kontinuerlig implementering" title="Kontinuerlig integrasjon vs kontinuerlig levering vs kontinuerlig implementering" 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="/8225202-continuous-integration-vs-continuous-delivery-vs-continuous-deployment" title="Kontinuerlig integrasjon vs kontinuerlig levering vs kontinuerlig implementering" rel="bookmark">Kontinuerlig integrasjon vs kontinuerlig levering vs kontinuerlig implementering 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="/8225203-jenkins-vs-travis-ci-what-is-the-difference" title="Jenkins vs Travis-CI: Hva er forskjellen?" rel="bookmark"><img src="https://cdn.css-code.org/4373986/jenkins_vs_travis-ci_what_is_the_difference_.png.webp" loading="lazy" alt="Jenkins vs Travis-CI: Hva er forskjellen?" title="Jenkins vs Travis-CI: Hva er forskjellen?" 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="/8225203-jenkins-vs-travis-ci-what-is-the-difference" title="Jenkins vs Travis-CI: Hva er forskjellen?" rel="bookmark">Jenkins vs Travis-CI: Hva er forskjellen? 2025</a></h3> </div> </div> </li> </ul> </div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Beste 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="/8003051-text-combine-upright" title="Tekst-kombinere-oppreist - CSS-triks" rel="bookmark">Tekst-kombinere-oppreist - CSS-triks</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="/8003052-text-indent" title="Tekstinnrykk - CSS-triks" rel="bookmark">Tekstinnrykk - CSS-triks</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="/8003053-text-decoration-skip-ink" title="Tekst-dekorasjon-hopp over blekk - CSS-triks" rel="bookmark">Tekst-dekorasjon-hopp over blekk - CSS-triks</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="/8003055-scroll-padding" title="Rulle-polstring - CSS-triks" rel="bookmark">Rulle-polstring - CSS-triks</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="/8003056-text-shadow" title="Tekst-skygge - CSS-triks" rel="bookmark">Tekst-skygge - CSS-triks</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="/8003057-text-overflow" title="Tekst-overflow - CSS-triks" rel="bookmark">Tekst-overflow - CSS-triks</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="/8003058-scroll-margin" title="Rullemargin - CSS-triks" rel="bookmark">Rullemargin - CSS-triks</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="/8003059-scroll-snap-type" title="Bla-snap-type - CSS-triks" rel="bookmark">Bla-snap-type - CSS-triks</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="/8003060-text-stroke" title="Tekststrek - CSS-triks" rel="bookmark">Tekststrek - CSS-triks</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="/8003061-text-rendering" title="Tekstgjengivelse - CSS-triks" rel="bookmark">Tekstgjengivelse - CSS-triks</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="/8003062-text-justify" title="Tekst-rettferdiggjøre - CSS-triks" rel="bookmark">Tekst-rettferdiggjøre - CSS-triks</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="/8003063-text-transform" title="Tekst-transform - CSS-triks" rel="bookmark">Tekst-transform - CSS-triks</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="/8003064-text-orientation" title="Tekstorientering - CSS-triks" rel="bookmark">Tekstorientering - CSS-triks</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="/8003067-text-underline-position" title="Tekst-understrek-posisjon - CSS-triks" rel="bookmark">Tekst-understrek-posisjon - CSS-triks</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="/8003069-text-underline-offset" title="Tekst-understreking-forskyvning - CSS-triks" rel="bookmark">Tekst-understreking-forskyvning - CSS-triks</a></h3> </div> </div> </li> </ul> </div> <div id="container-5533149ee6411a5f99b370c693e87966"></div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Topp 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="/8226044-multithreading-vs-multiprocessing-whats-the-difference" title="Multithreading vs Multiprocessing: Hva er forskjellen?" rel="bookmark"><img src="https://cdn.css-code.org/8379442/multithreading_vs_multiprocessing_whats_the_difference_.png.webp" loading="lazy" alt="Multithreading vs Multiprocessing: Hva er forskjellen?" title="Multithreading vs Multiprocessing: Hva er forskjellen?" 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="/8226044-multithreading-vs-multiprocessing-whats-the-difference" title="Multithreading vs Multiprocessing: Hva er forskjellen?" rel="bookmark">Multithreading vs Multiprocessing: Hva er forskjellen? 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="/8226045-paging-vs-segmentation-key-differences" title="Personsøk vs segmentering: Viktige forskjeller" rel="bookmark"><img src="https://cdn.css-code.org/1933265/paging_vs_segmentation_key_differences.png.webp" loading="lazy" alt="Personsøk vs segmentering: Viktige forskjeller" title="Personsøk vs segmentering: Viktige forskjeller" 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="/8226045-paging-vs-segmentation-key-differences" title="Personsøk vs segmentering: Viktige forskjeller" rel="bookmark">Personsøk vs segmentering: Viktige forskjeller 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="/8226046-preemptive-vs-non-preemptive-scheduling-key-differences" title="Forebyggende vs ikke-forebyggende planlegging: Nøkkelforskjeller" rel="bookmark"><img src="https://cdn.css-code.org/4097351/preemptive_vs_non-preemptive_scheduling_key_differences.png.webp" loading="lazy" alt="Forebyggende vs ikke-forebyggende planlegging: Nøkkelforskjeller" title="Forebyggende vs ikke-forebyggende planlegging: Nøkkelforskjeller" 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="/8226046-preemptive-vs-non-preemptive-scheduling-key-differences" title="Forebyggende vs ikke-forebyggende planlegging: Nøkkelforskjeller" rel="bookmark">Forebyggende vs ikke-forebyggende planlegging: Nøkkelforskjeller 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 Innlegg</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004078-edit-this-button-on-posts-and-pages" title=""Rediger denne" -knappen på innlegg og sider - CSS-triks" rel="bookmark">"Rediger denne" -knappen på innlegg og sider - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8004079-enable-all-possible-post-formats" title="Aktiver alle mulige innleggsformater CSS-triks" rel="bookmark">Aktiver alle mulige innleggsformater CSS-triks</a></h3> </div> </div> </li><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 "Like" -knapp for Wordpress - CSS-triks" rel="bookmark">Facebook "Like" -knapp for Wordpress - CSS-triks</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="Finn ID for den øverste foreldresiden - CSS-triks" rel="bookmark">Finn ID for den øverste foreldresiden - CSS-triks</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="Bygg inn en side på en side - CSS-triks" rel="bookmark">Bygg inn en side på en side - CSS-triks</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Redaksjonens</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002938-font-size-adjust" title="Skriftstørrelsesjustering - CSS-triks" rel="bookmark">Skriftstørrelsesjustering - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002939-font-size" title="Skriftstørrelse - CSS-triks" rel="bookmark">Skriftstørrelse - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002940-font-style" title="Skriftstil - CSS-triks" rel="bookmark">Skriftstil - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002941-font-variant" title="Font-variant - CSS-triks" rel="bookmark">Font-variant - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8002942-font-kerning" title="Font-kerning - CSS-triks" rel="bookmark">Font-kerning - CSS-triks</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Topp Artikler</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003181-011-the-header-and-custom-fonts-via-typekit" title="# 011 - Overskriften og egendefinerte skrifttyper via TypeKit - CSS-triks" rel="bookmark"># 011 - Overskriften og egendefinerte skrifttyper via TypeKit - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003182-008-giving-ourselves-a-fresh-start-with-a-clean-theme-part-1" title="# 008 - Gi oss en ny start med et rent tema, del 1 - CSS-triks" rel="bookmark"># 008 - Gi oss en ny start med et rent tema, del 1 - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003183-010-codekit-for-great-success" title="# 010 - CodeKit for stor suksess - CSS-triks" rel="bookmark"># 010 - CodeKit for stor suksess - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003184-012-slider-foundations" title="# 012 - Glidefundamenter - CSS-triks" rel="bookmark"># 012 - Glidefundamenter - CSS-triks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003185-013-tweaking-the-slider" title="# 013 - Justering av glidebryteren - CSS-triks" rel="bookmark"># 013 - Justering av glidebryteren - CSS-triks</a></h3> </div> </div> </li> </ul> </div> </div> </div> <p>© Copyright no.css-code.org, 2025 Juli | <a href="https://no.css-code.org/about-site" title="Om nettstedet">Om nettstedet</a> | <a href="https://no.css-code.org/contacts" title="Kontakter">Kontakter</a> | <a href="https://no.css-code.org/privacy-policy" title="Personvernregler">Personvernregler</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>