Professional Documents
Culture Documents
LabNr.2 PSI Mitielu
LabNr.2 PSI Mitielu
A efectuat
Pîrlog Andrei
A verificat
Chişinău 2019
1. Scopul lucrării:
2. Sarcina:
Narrative As a Customer
So that I can find it easily from any category and subcategory and add it to Cart/ Wish
List or Compare directly from the displayed results.
The Advanced Search should appear after searching some products in the Basic search or
just after pressing the enter tab on the Basic search.
User should be able to search product by typing its name in the “Search” displayed at the
top of the page in the right corner.
The products that meet the search criteria should be displayed on the page below the
“Search Criteria” functionality.
Each product should have a short description, a corresponding picture and the price as on
other pages.
User should have the possibility to view the first 15/25/50/75/100 products that meet
search criteria. He/she should be able to select and change this number of displayed
products.
The Sorting functionality should be available for the displayed products after searching. So,
user should be able to sort products by:
1. Default
2. Name (A-Z)
3. Name (Z-A)
4. Price (Low > High)
5. Price (High > Low)
6. Rating (Highest)
7. Rating (Lowest)
8. Model (A-Z), Model (Z-A)
User should be able to add the corresponding products displayed after searching to Cart.
User should also have the possibility to add the displayed products to Wish List and to
Compare.
3. Parte teoretică:
Dezvoltarea unui produs software presupune etape de analiză, proiectare, scriere, testare,
debugging și mentenanță a codului sursǎ al programelor. Dezvoltarea unui produs software poate
fi folosită pentru a face referire la programarea calculatoarelor, însa într-un sens mai extins
reprezintă totalitatea activitaților de realizare ale unui produs software (= programarea
calculatorarelor) ideal într-un proces planificat și structurat. Scopul final este de a obține o
soluție software eficientă și care poate evolua în timp.
Analiza cerințelor
Analiza cerințelor este prima etapă a ciclului de realizare a unui produs în care se stabilesc
cerințele aplicației, pornind de la cerințele utilizatorului final, se identifică funcțiile viitorului
produs software precum și datele implicate. Această etapă răspunde la întrebarea ce se va realiza
prin dezvoltarea produsului software.
Proiectarea reprezintă acea etapă a ciclului de realizare a unui produs în care se stabilește
modul de realizare a cerințelor identificate în etapa de analiză, adică trebuie să raspundă la
întrebarea cum se vor realiza aceste cerințe atât la nivel global cât și la nivel de detaliu. Această
etapă pornește deci de la cerințele și specificațiile definite anterior și continuă cu detalierea și
transformarea acestora până la definirea structurii unei soluții care să fie reprezentată folosind un
limbaj grafic, textual sau mixt. Proiectul astfel obținut trebuie să poata fi utilizat mai departe la
construirea sau elaborarea produsului software (codificare, testare, integrare).
Implementarea codului
Implementarea codului reprezintă scrierea textului folosind formatul și sintaxa unui limbaj
de programare ales. Codul este special conceput pentru a facilita munca unui programator, astfel
oferin posibilitatea acestuia să specifice operațiile ce vor fi realizate de către calculator. Odată ce
un program a fost realizat el va fi convertit în cod binar numit cod mașină, care poate apoi fi citit
si executat.
Compilarea si interpretarea
Compilarea reprezintă o metodă prin care calculatorul convertește codul sursă scris într-un
limbaj de programare (de cele mai multe ori un limbaj de nivel înalt cum ar fi c++, Java) într-un
limbaj de nivel jos (cod mașină sau assembler). În urma realizării acestei operații se obține un
fișier executabil ce poate fi înțeles și rulat de către mașina sau mașinile pentru care a fost
conceput.Interpretorul reprezintă o metodă prin care mașina convertește codul sursă în cod
mașină la momentul în care acesta este rulat. Interpretorul poate fi un program care fie execută
codul sursă direct, fie transformă codul inițial într-un cod intermediar, iar acesta va fi încărcat
pentru execuție, fie interpretează codul care anterior a fost compilat de către un compilator care
face parte din sistemul de interpretare.[7] Fiecare din cele 2 variante are avantajele si
dezavantajele sale. Spre exempul un compilator este mai rapid în momentul execuției, însa
interpretorul folosește principiul mașinii virtuale care oferă avantajul siguranței datelor.
Documentarea
Debugging
Specificarea
Pentru o testare de calitate, este important să existe o planificare riguroasă a testării încă din
faza de proiectare sau development. Pe măsură ce se conturează definițiile modulelor, entităților
de date, obiectelor, claselor, funcțiilor, etc. este recomandabil să se scrie și “scenarii” de testare
ale acestora, fie top-down, fie bottom-up.
Bug
O problema, eroare, defect, posibilitate nedocumentate, greșeala intr-un sistem software care
impiedica sistemul sa functioneza asa cum este de asteptat este un bug.
Bug report
Bug tracking
Sistem de bug tracking
Sistem de issue tracking
Patch
Patch management
În industria software, “scenariile” de test se numesc test cases.
trebuie verificată funcționarea unei pagini de login care conține un input de user name și
unul de parolă
1. click pe “Login” fără a completa user/pass → trebuie să rămân în pagină și să se
afișeze un mesaj de eroare
2. completat user corect, parola incorectă sau nulă, click pe “Login” → trebuie să
rămân în pagină și să se afișeze un mesaj de eroare
3. completat user corect, parola corectă, click pe “Login” → trebuie să fiu corect
autentificat
4. completat user corect, parola corectă, tastat “Enter” → trebuie să fiu corect
autentificat
Există “testare pozitivă” și “testare negativă”, concretizată în positive test
cases și negative test cases. Testarea pozitiva înseamnă verificarea faptului că sistemul face
ceea ce trebuie să facă. Testarea negativă înseamnă verificarea faptului că sistemul nu face ceea
ce nu trebuie să facă.
Pe cazul anterior:
testare pozitivă: se verifică faptul că la user/pass corecte se face login iar la user/pass
incorecte se afișează un mesaj de eroare
testare negativă: se verifică faptul că la user/pass corecte NU se afișează un mesaj de
eroare iar la user/pass incorecte NU se face login și NU se “sparge” sistemul
În principiu, cele două approachuri sunt echivalente, însă în practică testarea pozitivă se
referă la funcționarea “normală” a sistemului, iar testarea negativă la “corner cases”. De
exemplu, pentru testarea unui feature critic ca time to market dar non-critic ca și calitate (ex.
twitter), se va prefera testarea pozitivă, care asigură că sistemul funcționează corect pentru cei
mai mulți utilizatori. Pentru testarea unui feature critic ca și calitate (ex. online banking) se va
insista pe teste negative, ex. se va încerca “spargerea” sistemului prin combinații incorecte.
Există, ca în orice alt domeniu, tool-uri open source pentru managementul test cases:
Narrative As a Customer
So that I can find it easily from any category and subcategory and add it to Cart/ Wish
List or Compare directly from the displayed results.
The Advanced Search should appear after searching some products in the Basic search or
just after pressing the enter tab on the Basic search.
User should be able to search product by typing its name in the “Search” displayed at the
top of the page in the right corner.
The products that meet the search criteria should be displayed on the page below the
“Search Criteria” functionality.
Each product should have a short description, a corresponding picture and the price as on
other pages.
User should have the possibility to view the first 15/25/50/75/100 products that meet
search criteria. He/she should be able to select and change this number of displayed
products.
The Sorting functionality should be available for the displayed products after searching. So,
user should be able to sort products by:
1. Default
2. Name (A-Z)
3. Name (Z-A)
4. Price (Low > High)
5. Price (High > Low)
6. Rating (Highest)
7. Rating (Lowest)
8. Model (A-Z), Model (Z-A)
User should be able to add the corresponding products displayed after searching to Cart.
User should also have the possibility to add the displayed products to Wish List and to
Compare.
1. User Story – US.003;
Test Case Name – TestCase1;
Description - The Basic Search box should appear on every page of the site;
Test Steps Description:
- accesăm site-ul https://demo.opencart.com/index.php?route=common/home
- accesăm toate meniurile paginii;
- verificăm dacă fiecare pagină deschisă conţine căsuta de căutare de bază.
Expected Results – rezultatul testării este cel aşteptat, în fiecare pagină deschisă
a site-ului este prezentă căsuta de căutare;
Status Pass
ID bug Nu este
Priority Nu este
Execution Type Manual
Environement Browser
Comments TestCase-ul a fost trecut cu succes, fiecare pagină deschisă
conţine căsuta de căutare de bază
Această lucrare de laborator presupune o testare a paginii web din punct de vedere a
fucţionalităţii corecte. Scenariile de teste deja sunt incluse în sarcină, respectiv rămâne doar
testarea lor. Pagina web am testat-o din 2 aspecte: cautarea produselor ce se conţin în această
pagină şi sortarea lor. Acestea sunt destul de importante, una constă în faptul ca noi nu putem
afişa produsele vizualizate de o anumită persoană, iar cea de-a doua se referă la imposibilitatea
de salvare a produsului în coşul Wish List. Aceste errori nu sut critice, site-ul funcţionează şi
oferă mojoritatea funcţiilor necesare unui utilizator, dar totusi după ce au fost depistate este
necesar de le înlăturat.