Cum se utilizează Selenium IDE cu Scripturi & Comenzi (Afirmați, verificați)

Cuprins:

Anonim

Vom folosi site-ul web Mercury Tours ca aplicație web testată. Este un sistem de rezervare de zbor online care conține toate elementele de care avem nevoie pentru acest tutorial. URL-ul său este http://demo.guru99.com/test/newtours/ și acesta va fi URL-ul nostru de bază.

Creați un script prin înregistrare

Să ne creăm acum primul script de testare în Selenium IDE folosind cea mai obișnuită metodă - prin înregistrare. Ulterior, vom executa scriptul nostru folosind funcția de redare.

Pasul 1

  • Lansați Firefox și Selenium IDE.
  • Tastați valoarea pentru adresa URL de bază: http://demo.guru99.com/test/newtours/.
  • Activați butonul Înregistrare (dacă nu este încă activat în mod implicit).
Pasul 2

În Firefox, navigați la http://demo.guru99.com/test/newtours/. Firefox ar trebui să vă ducă la pagina similară cu cea prezentată mai jos.

Pasul 3
  • Faceți clic dreapta pe orice spațiu gol din pagină, cum ar fi pe sigla Mercury Tours din colțul din stânga sus. Aceasta va afișa meniul contextual Selenium IDE. Notă: Nu faceți clic pe niciun obiect sau imagine hyperlink
  • Selectați opțiunea „Afișează comenzile disponibile”.
  • Apoi, selectați „assertTitle exact: Welcome: Mercury Tours”. Aceasta este o comandă care vă asigură că titlul paginii este corect.
Pasul 4
  • În caseta de text „Nume utilizator” din Mercury Tours, tastați un nume de utilizator nevalid, „invalidUNN”.
  • În caseta de text „Parolă”, tastați o parolă nevalidă, „invalidPWD”.
Pasul 5
  • Faceți clic pe butonul „Conectare”. Firefox ar trebui să vă ducă la această pagină.
Pasul 6

Dezactivați butonul de înregistrare pentru a opri înregistrarea. Scriptul dvs. ar trebui să arate acum ca cel prezentat mai jos.

Pasul 7

Acum că am terminat cu scriptul nostru de testare, îl vom salva într-un caz de testare. În meniul Fișier, selectați „Salvați cazul de testare”. Alternativ, puteți apăsa pur și simplu Ctrl + S.

Pasul 8
  • Alegeți locația dorită, apoi denumiți Cazul de test ca „Invalid_login”.
  • Faceți clic pe butonul „Salvați”.
Pasul 9.

Observați că fișierul a fost salvat ca HTML.

Pasul 10.

Reveniți la Selenium IDE și faceți clic pe butonul Redare pentru a executa întregul script. Selenium IDE ar trebui să poată reproduce totul fără cusur.

Introducere în comenzile Selenium - Selenese

  • Comenzile Selenese pot avea până la maximum doi parametri: țintă și valoare.
  • Parametrii nu sunt necesari tot timpul. Depinde de câți comanda va avea nevoie.

3 tipuri de comenzi

Acțiuni

Acestea sunt comenzi care interacționează direct cu elementele paginii.

Exemplu: comanda „clic” este o acțiune deoarece interacționați direct cu elementul la care faceți clic.

Comanda „tip” este, de asemenea, o acțiune, deoarece introduceți valori într-o casetă de text, iar caseta de text vi le arată în schimb. Există o interacțiune bidirecțională între dvs. și caseta de text.

Accesorii

Sunt comenzi care vă permit să stocați valorile unei variabile.

Exemplu: comanda „storeTitle” este un accesor deoarece „citește” doar titlul paginii și o salvează într-o variabilă. Nu interacționează cu niciun element de pe pagină.

Afirmații

Sunt comenzi care verifică dacă este îndeplinită o anumită condiție.

3 tipuri de afirmații

  • Afirmați . Când o comandă „afirmă” eșuează, testul este oprit imediat.
  • Verificați . Când o comandă de „verificare” eșuează, Selenium IDE înregistrează această eroare și continuă cu executarea testului.
  • WaitFor . Înainte de a trece la următoarea comandă, comenzile „waitFor” vor aștepta mai întâi ca o anumită condiție să devină adevărată.
    • Dacă starea devine adevărată în perioada de așteptare, pasul trece.
    • Dacă condiția nu devine adevărată, pasul eșuează. Eșecul este înregistrat, iar executarea testului continuă cu următoarea comandă.
    • În mod implicit, valoarea de expirare este setată la 30 de secunde. Puteți schimba acest lucru în dialogul Opțiuni Selenium IDE din fila General.

Afirmați vs. Verificați

Comenzi comune

Comanda Numărul de parametri Descriere
deschis 0 - 2

Deschide o pagină utilizând o adresă URL.

faceți clic / faceți clic și Așteptați 1

Clicuri pe un element specificat.

type / typeKeys 2

Tastați o secvență de caractere.

verifyTitle / assertTitle 1

Compară titlul paginii cu o valoare așteptată.

verifyTextPresent 1

Verifică dacă un anumit text se găsește în pagină.

verifyElementPresent 1

Verifică prezența unui anumit element.

verifyTable 2

Compară conținutul unui tabel cu valorile așteptate.

waitForPageToLoad 1

Întrerupe executarea până când pagina este încărcată complet.

waitForElementPresent 1

Întrerupe executarea până când elementul specificat devine prezent.

Creați manual un script cu Firebug

Acum, vom recrea același caz de testare manual, tastând comenzile. De data aceasta, va trebui să folosim Firebug.

Pasul 1
  • Deschideți Firefox și Selenium IDE.
  • Tastați adresa URL de bază (http://demo.guru99.com/test/newtours/).
  • Butonul de înregistrare trebuie să fie OPRIT.
Pasul 2: Faceți clic pe linia goală din partea de sus a Editorului.

Tastați „deschide” în caseta de text Comandă și apăsați Enter.

Pasul 3
  • Navigați Firefox la adresa URL de bază și activați Firebug
  • În panoul Editor Selenium IDE, selectați a doua linie (linia de sub comanda „deschide”) și creați a doua comandă tastând „assertTitle” în caseta de comandă.
  • Simțiți-vă liber să utilizați funcția de completare automată.
Pasul 4
  • În Firebug, extindeți eticheta pentru a afișa eticheta .</li> <li>Faceți clic pe valoarea etichetei <title> (care este „Welcome: Mercury Tours”) și lipiți-o în câmpul Țintă din Editor.</li> </ul> </td> </tr> <tr> <td><strong>Pasul 5</strong> <ul> <li>Pentru a crea a treia comandă, faceți clic pe a treia linie goală din Editor și introduceți „tastați” în caseta de text Comandă.</li> <li>În Firebug, faceți clic pe butonul „Inspectați”.</li> </ul> </td> </tr> <tr> <td>Faceți clic pe caseta de text Nume utilizator. Observați că Firebug vă arată automat codul HTML pentru acel element.</td> </tr> <tr> <td><strong>Pasul 6</strong> <p>Observați că caseta de text Nume utilizator nu are un ID, dar are un atribut NAME. Prin urmare, vom folosi NOMUL său ca localizator. Copiați valoarea NAME și lipiți-o în câmpul țintă din Selenium IDE.</p> <p>Încă în caseta de text Țintă, prefixează „userName” cu „name =”, indicând faptul că Selenium IDE ar trebui să vizeze un element al cărui atribut NAME este „userName”.</p> <p>Tastați „invalidUN” în caseta de text Value din Selenium IDE. Scriptul de testare ar trebui să arate acum ca imaginea de mai jos. Am terminat cu a treia comandă. Notă: În loc de invalidUN, puteți introduce orice alt șir de text. Dar Selenium IDE este sensibil la majuscule și minuscule și introduceți valori / atribute exact ca în aplicație.</p> </td> </tr> <tr> <td><strong>Pasul 7</strong> <ul> <li>Pentru a crea a patra comandă, introduceți „tastați” în caseta de text Comandă.</li> <li>Din nou, utilizați butonul „Inspectați” de Firebug pentru a obține localizatorul pentru caseta de text „Parolă”.</li> </ul> <ul> <li> <p>Lipiți atributul NAME („parolă”) pe câmpul țintă și prefixați-l cu „nume =”</p> </li> <li> <p>Tastați „invalidPW” în câmpul Value din Selenium IDE. Scriptul de testare ar trebui să arate acum ca imaginea de mai jos.</p> </li> </ul> </td> </tr> <tr> <td><strong>Pasul 8</strong> <ul> <li>Pentru a cincea comandă, tastați „clickAndWait” pe caseta de text Command din Selenium IDE.</li> <li>Utilizați butonul „Inspectați” de Firebug pentru a obține localizatorul pentru butonul „Conectare”.</li> </ul> <ul> <li>Lipiți valoarea atributului NAME („autentificare”) în caseta de text Țintă și prefixați-l cu „nume =”.</li> <li>Scriptul de testare ar trebui să arate acum ca imaginea de mai jos.</li> </ul> </td> </tr> </tbody> </table> <p><strong>Pasul 9:</strong> Salvați cazul de testare la fel ca în secțiunea anterioară.</p> <a id="menu-6"></a> <h2>Folosind butonul Căutare</h2> <p><strong>Butonul Găsiți în Selenium IDE este utilizat pentru a verifica dacă ceea ce am introdus în caseta de text Țintă este într-adevăr elementul corect al interfeței de utilizare.</strong></p> <p>Să folosim cazul de test Invalid_login pe care l-am creat în secțiunile anterioare. Faceți clic pe orice comandă cu o intrare țintă, să zicem, a treia comandă.</p> <p>Faceți clic pe butonul Găsiți. Observați că caseta de text Nume utilizator din pagina Mercury Tours devine evidențiată pentru o secundă.</p> <p>Acest lucru indică faptul că Selenium IDE a reușit să detecteze și să acceseze corect elementul așteptat. Dacă butonul Căutare a evidențiat un alt element sau niciun element deloc, atunci trebuie să fie ceva în neregulă cu scriptul.</p> <a id="menu-7"></a> <h2>Executați comanda</h2> <p><strong>Acest lucru vă permite să executați orice comandă fără a rula întregul caz de testare</strong> . Doar faceți clic pe linia pe care doriți să o executați, apoi faceți clic pe „Acțiuni> Executați această comandă” din bara de meniu sau pur și simplu apăsați „X” pe tastatură.</p> <p><strong>Pasul 1.</strong> Asigurați-vă că browserul dvs. se află pe pagina de pornire Mercury Tours. Faceți clic pe comanda pe care doriți să o executați. În acest exemplu, faceți clic pe linia „type | userName | invalidUN”.</p> <p><strong>Pasul 2.</strong> Apăsați „X” pe tastatură.</p> <p><strong>Pasul 3.</strong> Observați că caseta de text pentru numele de utilizator devine populată cu textul „invalidUN”</p> <p><strong>Executarea comenzilor în acest fel depinde în mare măsură de pagina pe care Firefox o afișează în prezent</strong> . Aceasta înseamnă că, dacă încercați exemplul de mai sus cu pagina de pornire Google afișată în locul celei de la Mercury Tours, atunci pasul dvs. va eșua, deoarece nu există nicio casetă text cu atributul „userName” în pagina de pornire Google.</p> <a id="menu-8"></a> <h2>Punctul de inceput</h2> <p><strong>Un punct de pornire este un indicator care indică Selenium IDE care linii vor începe executarea</strong> . <strong>Tasta de comandă rapidă este „S”.</strong></p> <p>În exemplul de mai sus, redarea va începe pe a treia linie (tastați | parolă | invalidPW). <strong>Puteți avea un singur punct de pornire într-un singur script de testare.</strong></p> <p>Punctul de pornire este similar cu Execute Command, astfel încât acestea să depindă de pagina afișată în prezent. Punctul de pornire nu va reuși dacă sunteți pe pagina greșită.</p> <a id="menu-9"></a> <h2>Puncte de întrerupere</h2> <p>Punctele de întrerupere sunt indicatori care indică Selenium IDE unde trebuie să întrerupă automat testul. <strong>Tasta de comandă rapidă este „B”.</strong></p> <p>Marcarea galbenă înseamnă că pasul curent este în așteptare. Acest lucru demonstrează că Selenium IDE a întrerupt executarea la acel pas. <strong>Puteți avea mai multe puncte de întrerupere într-un singur caz de testare.</strong></p> <a id="menu-10"></a> <h2>Etapa</h2> <p>Vă permite să executați comenzi succesive pe rând după întreruperea cazului de testare. Să folosim scenariul din secțiunea anterioară „Puncte de întrerupere”.</p> <table> <tbody> <tr> <td width="50%"> </td> <td> <p><strong>Înainte de a da clic pe „Pas”.</strong></p> <p>Cazul de test se întrerupe la rândul „clickAndWait | login”.</p> </td> </tr> <tr> <td width="50%"> </td> <td> <p><strong>După ce faceți clic pe „Pas”.</strong></p> <p>Se execută linia „clickAndWait | login” și se oprește la următoarea comandă (verifyTitle | Sign-on: Mercury Tours).</p> <p>Observați că următoarea linie este întreruptă, chiar dacă nu există un punct de întrerupere acolo. Acesta este scopul principal al caracteristicii Step - execută comenzile succesive pe rând pentru a vă oferi mai mult timp pentru a inspecta rezultatul după fiecare pas.</p> </td> </tr> </tbody> </table> <a id="menu-11"></a> <h2>Lucruri importante de reținut atunci când utilizați alte formate în vizualizarea sursă</h2> <p><strong>Selenium IDE funcționează bine numai cu HTML - alte formate sunt încă în modul experimental</strong> . <strong>NU</strong> este <strong>recomandabil</strong> să creați sau să editați teste folosind alte formate în Vizualizarea sursă, deoarece este încă multă muncă necesară pentru a-l stabiliza. Mai jos sunt erorile cunoscute de la versiunea 1.9.1.</p> <ul> <li>Nu veți putea efectua redarea și nici să reveniți la vizualizarea în tabel decât dacă reveniți la HTML.</li> <li>Singura modalitate de a adăuga comenzi în siguranță pe codul sursă este prin înregistrarea acestora.</li> <li>Când modificați manual codul sursă, totul se va pierde atunci când treceți la un alt format.</li> <li>Deși vă puteți salva cazul de test în timp ce se află în Vizualizarea sursă, Selenium IDE nu îl va putea deschide.</li> </ul> <p><strong>Modul recomandat de a converti testele Selenese este de a utiliza opțiunea „Export Test Case As…” din meniul Fișier și nu prin vizualizarea sursă.</strong></p> <a id="menu-12"></a> <h2>rezumat</h2> <ul> <li>Scripturile de testare pot fi create fie prin înregistrarea, fie prin tastarea manuală a comenzilor și parametrilor.</li> <li>Când creați scripturi manual, Firebug este utilizat pentru a obține localizatorul.</li> <li>Butonul Găsire este utilizat pentru a verifica dacă comanda poate accesa elementul corect.</li> <li>Vizualizarea în tabel afișează un script de test în formă tabelară, în timp ce Vizualizarea sursă îl afișează în format HTML.</li> <li>Schimbarea vizualizării sursă într-un format non-HTML este încă experimentală.</li> <li>Nu utilizați vizualizarea sursă pentru a crea teste în alte formate. Folosiți în schimb funcțiile Export.</li> <li>Parametrii nu sunt necesari tot timpul. Depinde de comandă.</li> <li>Există trei tipuri de comenzi:</li> <ul> <li>Acțiuni - interacționează direct cu elementele paginii</li> <li>Accesorii - „citește” o proprietate de element și o stochează într-o variabilă</li> <li>Afirmații - compară o valoare reală cu una așteptată</li> </ul> <li>Afirmațiile au trei tipuri:</li> <ul> <li>Afirmați - la eșec, pașii care urmează nu mai sunt executați</li> <li>Verificați - la eșec, pașii care urmează sunt încă executați.</li> <li>WaitFor - trece dacă condiția specificată devine adevărată în perioada de expirare; în caz contrar, va eșua</li> </ul> <li>Cele mai frecvente comenzi sunt:</li> <ul> <li>deschis</li> <li>faceți clic / faceți clic și Așteptați</li> <li>type / typeKeys</li> <li>verifyTitle / assertTitle</li> <li>verifyTextPresent</li> <li>verifyElementPresent</li> <li>verifyTable</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">Posturi Populare</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="/8225778-22-best-ab-testing-tool-in-2021" title="22 Cel mai bun instrument de testare A / B din 2021" rel="bookmark"><img src="https://cdn.css-code.org/9846626/22_best_ab_testing_tool_in_2021.png.webp" loading="lazy" alt="22 Cel mai bun instrument de testare A / B din 2021" title="22 Cel mai bun instrument de testare A / B din 2021" 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="/8225778-22-best-ab-testing-tool-in-2021" title="22 Cel mai bun instrument de testare A / B din 2021" rel="bookmark">22 Cel mai bun instrument de testare A / B din 2021 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="/8225779-grammarly-vs-autocrit-which-to-choose" title="Gramatic vs AutoCrit: pe care să îl alegeți?" rel="bookmark"><img src="https://cdn.css-code.org/2998583/grammarly_vs_autocrit_which_to_choose_.png.webp" loading="lazy" alt="Gramatic vs AutoCrit: pe care să îl alegeți?" title="Gramatic vs AutoCrit: pe care să îl alegeți?" 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="/8225779-grammarly-vs-autocrit-which-to-choose" title="Gramatic vs AutoCrit: pe care să îl alegeți?" rel="bookmark">Gramatic vs AutoCrit: pe care să îl alegeți? 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="/8225780-grammarly-vs-prowritingaid-which-to-choose" title="Gramatic vs ProWritingAid: pe care să îl alegeți?" rel="bookmark"><img src="https://cdn.css-code.org/9883171/grammarly_vs_prowritingaid_which_to_choose_.png.webp" loading="lazy" alt="Gramatic vs ProWritingAid: pe care să îl alegeți?" title="Gramatic vs ProWritingAid: pe care să îl alegeți?" 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="/8225780-grammarly-vs-prowritingaid-which-to-choose" title="Gramatic vs ProWritingAid: pe care să îl alegeți?" rel="bookmark">Gramatic vs ProWritingAid: pe care să îl alegeți? 2025</a></h3> </div> </div> </li> </ul> </div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Comentarii Cel mai bun pentru luna</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="/8222642-rest-api-testing-tutorial-sample-manual-test-case" title="Tutorial de testare API REST: exemplu de caz de testare manual" rel="bookmark">Tutorial de testare API REST: exemplu de caz de testare manual</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="/8222643-rest-client-testing-using-restito-tool" title="Testarea clientului REST utilizând instrumentul Restito" rel="bookmark">Testarea clientului REST utilizând instrumentul Restito</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="/8222645-software-testing-methodologies-learn-qa-models" title="Metodologii de testare a software-ului: Aflați modele QA" rel="bookmark">Metodologii de testare a software-ului: Aflați modele QA</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="/8222646-gui-testing-tutorial-user-interface-ui-testcases-with-examples" title="Tutorial de testare GUI: TestCases cu interfață utilizator (UI) cu exemple" rel="bookmark">Tutorial de testare GUI: TestCases cu interfață utilizator (UI) cu exemple</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="/8222647-end-to-end-testing-tutorial-what-is-e2e-testing-with-example" title="Tutorial de testare END-TO-END: Ce este testarea E2E cu exemplu" rel="bookmark">Tutorial de testare END-TO-END: Ce este testarea E2E cu exemplu</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="/8222648-what-is-exploratory-testing-techniques-with-examples" title="Ce este testarea exploratorie? Tehnici cu exemple" rel="bookmark">Ce este testarea exploratorie? Tehnici cu exemple</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="/8222649-what-is-adhoc-testing-types-with-example" title="Ce este testarea adhoc? Tipuri cu Exemplu" rel="bookmark">Ce este testarea adhoc? Tipuri cu Exemplu</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="/8222650-keyword-driven-testing-framework-with-example" title="Cadru de testare bazat pe cuvinte cheie cu exemplu" rel="bookmark">Cadru de testare bazat pe cuvinte cheie cu exemplu</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="/8222651-backend-testing-tutorial-what-is-tools-and-examples" title="Tutorial Backend Testing: Ce este, Instrumente & Exemple" rel="bookmark">Tutorial Backend Testing: Ce este, Instrumente & Exemple</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="/8222652-what-is-smoke-testing-how-to-do-with-examples" title="Ce este testarea fumului? Cum se face cu EXEMPLE" rel="bookmark">Ce este testarea fumului? Cum se face cu EXEMPLE</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="/8222653-quality-management-plan-template-and-sample-project-example" title="Șablon de plan de management al calității & Exemplu de exemplu de proiect" rel="bookmark">Șablon de plan de management al calității & Exemplu de exemplu de proiect</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="/8222654-accessibility-testing-tutorial-what-is-tools-and-examples" title="Tutorial de testare a accesibilității: Ce este, Instrumente & Exemple" rel="bookmark">Tutorial de testare a accesibilității: Ce este, Instrumente & Exemple</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="/8222655-penetration-testing-tutorial-what-is-pentest" title="Tutorial de testare a penetrării: Ce este PenTest?" rel="bookmark">Tutorial de testare a penetrării: Ce este PenTest?</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="/8222656-what-is-system-integration-testing-sit-with-example" title="Ce este Testarea integrării sistemului (SIT) cu exemplu" rel="bookmark">Ce este Testarea integrării sistemului (SIT) cu exemplu</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="/8222657-what-is-soa-testing-tutorial-with-example" title="Ce este testarea SOA? Tutorial cu Exemplu" rel="bookmark">Ce este testarea SOA? Tutorial cu Exemplu</a></h3> </div> </div> </li> </ul> </div> <div id="container-5533149ee6411a5f99b370c693e87966"></div> <div class="widget widget-popular-posts"> <h2 class="widget-title">Top Articole</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="/8225729-15-best-jenkins-alternatives-and-competitors-open-sourcepaid" title="15 cele mai bune alternative Jenkins & Concurenți (open source / plătit)" rel="bookmark"><img src="https://cdn.css-code.org/1763099/15_best_jenkins_alternatives_ampamp_competitors_open_sourcepaid.png.webp" loading="lazy" alt="15 cele mai bune alternative Jenkins & Concurenți (open source / plătit)" title="15 cele mai bune alternative Jenkins & Concurenți (open source / plătit)" 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="/8225729-15-best-jenkins-alternatives-and-competitors-open-sourcepaid" title="15 cele mai bune alternative Jenkins & Concurenți (open source / plătit)" rel="bookmark">15 cele mai bune alternative Jenkins & Concurenți (open source / plătit) 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="/8225730-top-10-best-domain-registrars-in-2021-how-to-buy-a-domain" title="Top 10 BEST Registratori de domenii în 2021 (Cum să cumpărați un domeniu)" rel="bookmark"><img src="https://cdn.css-code.org/6958032/top_10_best_domain_registrars_in_2021_how_to_buy_a_domain.png.webp" loading="lazy" alt="Top 10 BEST Registratori de domenii în 2021 (Cum să cumpărați un domeniu)" title="Top 10 BEST Registratori de domenii în 2021 (Cum să cumpărați un domeniu)" 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="/8225730-top-10-best-domain-registrars-in-2021-how-to-buy-a-domain" title="Top 10 BEST Registratori de domenii în 2021 (Cum să cumpărați un domeniu)" rel="bookmark">Top 10 BEST Registratori de domenii în 2021 (Cum să cumpărați un domeniu) 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="/8225735-25-best-favicon-generators-in-2021" title="Cele mai bune 25 de generatoare Favicon în 2021" rel="bookmark"><img src="https://cdn.css-code.org/9966833/25_best_favicon_generators_in_2021.png.webp" loading="lazy" alt="Cele mai bune 25 de generatoare Favicon în 2021" title="Cele mai bune 25 de generatoare Favicon în 2021" 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="/8225735-25-best-favicon-generators-in-2021" title="Cele mai bune 25 de generatoare Favicon în 2021" rel="bookmark">Cele mai bune 25 de generatoare Favicon în 2021 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">Posturi Populare</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225063-php-data-types-variables-constant-operators-tutorial" title="Tipuri de date PHP, variabile, constantă, tutorial pentru operatori" rel="bookmark">Tipuri de date PHP, variabile, constantă, tutorial pentru operatori</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225064-php-loop-for-foreach-while-do-while-example" title="Buclă PHP: For, ForEach, While, Do While (Exemplu)" rel="bookmark">Buclă PHP: For, ForEach, While, Do While (Exemplu)</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225065-php-function-numeric-built-in-string-date-user-defined" title="Funcția PHP: numerică, încorporată, șir, dată, definită de utilizator" rel="bookmark">Funcția PHP: numerică, încorporată, șir, dată, definită de utilizator</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225066-php-string-functions-substr-strlen-strtolower-explode-strpos-str-replace" title="Funcții de șir PHP: substr, strlen, strtolower, explode, strpos, str_replace" rel="bookmark">Funcții de șir PHP: substr, strlen, strtolower, explode, strpos, str_replace</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8225067-php-session-and-php-cookies-with-example" title="Sesiune PHP & Cookie-uri PHP cu exemplu" rel="bookmark">Sesiune PHP & Cookie-uri PHP cu exemplu</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Alegerea Editorului</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003803-check-if-jquery-is-loaded" title="Verificați dacă jQuery este încărcat - CSS-Tricks" rel="bookmark">Verificați dacă jQuery este încărcat - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003804-clear-a-file-input" title="Ștergeți o intrare de fișier - CSS-Tricks" rel="bookmark">Ștergeți o intrare de fișier - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003806-clear-default-search-string-on-focus" title="Ștergeți șirul de căutare implicit pe focus - CSS-Tricks" rel="bookmark">Ștergeți șirul de căutare implicit pe focus - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003807-click-once-and-unbind" title="Faceți clic pe Odată și Anulați legătura - CSS-Tricks" rel="bookmark">Faceți clic pe Odată și Anulați legătura - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003809-combine-slide-and-fade-functions" title="Combinați funcțiile Slide și Fade - CSS-Tricks" rel="bookmark">Combinați funcțiile Slide și Fade - CSS-Tricks</a></h3> </div> </div> </li> </ul> </div> </div> <div class="col-lg-4"> <div class="widget"> <h2 class="widget-title">Top Articole</h2> <ul class="post-list-small"> <li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003121-id" title="ID - CSS-Tricks" rel="bookmark">ID - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003122-is" title=": este () - CSS-Tricks" rel="bookmark">: este () - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003123-indeterminate" title=": nedeterminat - CSS-Tricks" rel="bookmark">: nedeterminat - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003124-lang" title=": lang () - CSS-Tricks" rel="bookmark">: lang () - CSS-Tricks</a></h3> </div> </div> </li><li class="post-list-small__item"> <div> <div> <h3 class="post-list-small__entry-title"><a href="/8003125-in-range" title=": în raza de acțiune - CSS-Tricks" rel="bookmark">: în raza de acțiune - CSS-Tricks</a></h3> </div> </div> </li> </ul> </div> </div> </div> <p>© Copyright ro.css-code.org, 2025 Iulie | <a href="https://ro.css-code.org/about-site" title="Despre site">Despre site</a> | <a href="https://ro.css-code.org/contacts" title="Contacte">Contacte</a> | <a href="https://ro.css-code.org/privacy-policy" title="Politica de Confidențialitate">Politica de Confidențialitate</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>