Other languages Deutsch ; English ; Français ; Nederlands ; |
Contents
Wat is een update (een herziening)
Een herziening (wij noemen het hier een update, omdat de taal in QA Engels is) is een nieuw pakket. Het kan een beveiligings-update zijn, een bugfix van een bestaand pakket, de toevoeging van een ontbrekende functie of een nieuw pakket dat eerder niet beschikbaar was.
Voordat een herziening door het QA-team wordt gevalideerd, wordt het een Update Candidate genoemd, omdat het slechts een potentiële kandidaat voor een update is, totdat de herziening het hele QA-proces heeft doorlopen en is goedgekeurd om als officiële Mageia-update naar onze gebruikers te worden gepusht.
Het proces dat wij 'validatie' noemen bestaat uit de volgende stappen: het QA-team test de update-kandidaat, rapporteert eventuele problemen terug naar de packager, en test opnieuw wanneer de packager herziene pakketten bouwt om gemelde problemen op te lossen. Over het algemeen zorgt QA ervoor zorgt dat update-kandidaten OK zijn voordat ze worden geaccepteerd als officiële Mageia-update.
Waar update-kandidaten te vinden zijn
Om regressies te voorkomen, worden update-kandidaten gepusht naar een test-repository (pakketdepot), in afwachting van het QA Team om ze te valideren. Een overeenkomstig updateverzoek (update request) op Mageia's Bugzilla wordt gebruikt om het validatieproces te coördineren.
Een updateverzoek lijkt op elk ander bugrapport, behalve dat het een aanvraag voor een test van de update-kandidaat bevat, die wordt toegewezen aan het QA-team. Het is niet ongebruikelijk dat een bestaand bugrapport een updateverzoek wordt, waarbij de updatekandidaat is ontworpen om het probleem dat daar wordt gemeld, op te lossen.
U kunt pakketten met een update request, die wachten op validatie, vinden op pakketten die wachten op validatie.
Hoe valideert u een update
Als u de update kandidaat hebt verpakt, kunt u nu testen op één architectuur om de zaken te versnellen, maar u moet een gedetailleerde testprocedure aangeven. Het valideren van de update moet worden overgelaten aan een QA-teamlid.
Identificeer welke architectuur en Mageia-release u gebruikt
Om uw QA-werk correct te categoriseren, is het noodzakelijk om te weten welke architectuur en Mageia-release u gebruikt. Om dit te achterhalen, typt u in een terminal
$ cat /etc/release
of opent u het bestand /etc/release in een willekeurige teksteditor. Vergelijk vervolgens de uitvoer met de volgende tabel:
Content of /etc/release | Architecture | Release (Version) | Whiteboard Keyword |
---|---|---|---|
Mageia release 5 (Official) for i586 | i586 | 5 | MGA5-32-OK |
Mageia release 5 (Official) for x86_64 | x86_64 | 5 | MGA5-64-OK |
Mageia release 6 (Official) for i586 | i586 | 6 | MGA6-32-OK |
Mageia release 6 (Official) for x86_64 | x86_64 | 6 | MGA6-64-OK |
Waarschuw andere testers, zodat we dubbel werk voorkomen
Om te voorkomen dat u hetzelfde werk doet als andere mensen van QA, en het werk dupliceert, voegt u een bericht toe aan het updateverzoek op Bugzilla wanneer u eraan begint. Gewoon iets simpels om anderen te laten weten dat u het test.
Een voorbeeld van het type bericht dat u kunt achterlaten:
Testing i586, MGA4.
Note: "i586" (Architecture) en "MGA4" (Release) moeten weergeven wat er op uw systeem geïnstalleerd is.
We voeren deze stap niet altijd uit, omdat er meestal meer bugs zijn dan mensen, dus we lopen elkaar niet snel in de weg, maar de melding kan worden gebruikt als het testen waarschijnlijk wat tijd kost, of als het iets populairs en gemakkelijk om te testen is.
Bij grote, belangrijke of complexe pakketten zoals de Kernel, KDE, Firefox, etc. kan het handig zijn om meerdere mensen tegelijk te laten testen. Dit versnelt het QA-proces en zorgt er ook voor dat het grondiger gebeurt. Het kan nog steeds handig zijn om mensen te laten weten dat u de update ook test. Het is natuurlijk nooit verkeerd als meer dan één persoon hetzelfde test.
Test de updatekandidaat
Voorbereiding
- Start de juiste installatie en installeer alle officieel uitgebrachte updates. Controleer in de header van het bugrapport welk "Product", "Version" en "Platform" staat vermeld, bijvoorbeeld Mageia 4 x86_64. Besef hierbij dat sommige bugs updates kunnen bevatten voor beide releases, dus controleer ook de advisory (het advies) van de packager. U moet in dit stadium alle testing-media uitschakelen.
De advisory beschrijft waarom het pakket wordt bijgewerkt en wat ermee is gedaan. De advisory is er er zodat we weten waarop we moeten testen. De kandidaat wordt later geüpload naar SVN Subversion) door iemand die daar toegang toe heeft, en openbaar gemaakt op Mageia's webpagina, evenals op de updates-announce mailing list, wanneer de updatekandidaten worden gepusht als een update.
Het moet ook de RPM's vermelden die worden bijgewerkt, evenals hun SRPMs. - Probeer de bug te reproduceren voordat u de bijgewerkte pakketten installeert vanuit de testing-repository. Dit is voor de grondigheid, omdat het bewijst dat u kunt verifiëren dat de bug is opgelost na de update. Het laat u ook zien wat u kunt verwachten als dat niet het geval is.
Als u de bug niet kunt reproduceren, bijvoorbeeld bij gebrek aan geschikte hardware, moet u toch testen uitvoeren op de update, om ervoor te zorgen dat er geen nieuwe bugs zijn geïntroduceerd. U kunt ook een bericht achterlaten met de vraag of iemand anders de volledige test kan uitvoeren, bijvoorbeeld iemand met de juiste hardware. Hier is gezond verstand van toepassing. Het kan handig zijn om een e-mail te sturen naar de discuss- of dev-mailinglijst, met de vraag of mensen met de juiste hardware kunnen helpen met testen.
Als u de tag "has_procedure" in het Whiteboard-veld van het bugrapport vindt, is er een procedure beschikbaar om u te helpen - hetzij een recept voor het testen van de basisfunctionaliteit van het pakket, danwel (meestal met beveiligingsoplossingen) een manier om het probleem te repliceren of te provoceren. Dit kan van alles zijn, bijvoorbeeld een 'slecht' invoerbestand of een patch.
De Update Candidate installeren
- Schakel de relevante testing repository in uw bronnen in. Zie de pagina De testmedia inschakelen voor instructies over hoe u dit doet.
- Installeer de relevante updates, bij voorkeur met MageiaUpdate. Installeer niet alles van de testing media, alleen datgene wat u gaat testen. Zorg ervoor dat u alle gerelateerde pakketten selecteert, inclusief alle vereiste libs (bibliotheken). (Tip: controleer de versienummers) Als u de update installeert via urpmi, vergeet dan niet om ook de bijgewerkte libs te installeren.
- Schakel de testing repository opnieuw uit
- Zorg ervoor dat u nu de update candidate hebt geïnstalleerd. Zie Hoe vind ik een bron-RPM; Zoeken tussen geïnstalleerde pakketten op naam voor instructies.
Testen
- Als dit een beveiligingsupdate is ziet u de CVE-nummers in het advies, ze zouden ook in de bug-samenvatting bovenaan de pagina moeten staan en verpakkers zorgen er vaak voor om de Component ook in te stellen op Security. Probeer online een Proof of Concept (PoC) te vinden als er geen in het bugadvies staat. Er zijn verschillende websites die gewijd zijn aan beveiliging. Een populaire is securityfocus.com. Hiermee kunt u zoeken met behulp van het CVE-nummer en geeft u vaak nuttige informatie, of een Proof of Concept-code die kan worden gebruikt om aan te tonen dat de kwetsbaarheid inderdaad is opgelost. Als er geen beschikbaar is, test dan gewoon op eventuele regressies en vermeld in uw opmerking dat u geen PoC's kon vinden om anderen te besparen dat ze moeten zoeken. Voer normale tests uit (controleer op regressies).
- Als het een bugfix-update is, controleer dan of de bug is opgelost door het proces te volgen dat hopelijk in het updateverzoek staat. Meestal moet u zelf wat onderzoek doen, maar van niemand kan worden verwacht dat hij elk pakket kent. De pagina Tips en Trucs kan u enkele ideeën geven over hoe u het pakket/de pakketten kunt testen. U kunt ook testprocedures vinden in onze categorie testprocedures, of ze toevoegen als ze er nog niet zijn. Als u de kwestie hebt onderzocht, maar nog steeds niet weet hoe u het moet testen, kunt u een bericht achterlaten met het verzoek om meer informatie over hoe u dit moet doen.
- Doe enkele snelle tests om te controleren of de update niets anders kapotmaakt. Bijvoorbeeld, test of desktop effecten of DRI nog steeds werken zoals verwacht als de update over Xorg gaat.
Rapportage
- Als uw test een probleem heeft gevonden, geef dan feedback over uw bevindingen door een opmerking over de bug achter te laten; en voeg 'feedback' toe aan het Whiteboard: hierdoor wordt de update grijs weergegeven in de lijst. De packager kan u om meer informatie vragen of verdere tests nodig hebben om het probleem op te sporen, dus wees voorbereid om nadere informatie te geven. Geef de release en architectuur op waarmee u testte.
Bijvoorbeeld..
Testing Mageia 4 i586.
Ik heb een probleem gevonden...etc.
Note: "Mageia 4" (Release) en "i586" (Architecture) moeten weerspiegelen wat er op uw systeem aanwezig is. - Als alles OK is laat dan een opmerking achter om te zeggen dat u het testen hebt voltooid en voeg een trefwoord toe aan het Whiteboard. De Whiteboard-trefwoorden helpen ons bij te houden wanneer een bug klaar is om gevalideerd te worden.
Bijvoorbeeld..
Commentaar: Testing complete Mageia 4 i586 for the srpm php-5.3.13-1.1.mga2.src.rpm
Whiteboard: MGA4-32-OK
Note: "Mageia 4" (Release), "i586" (Architecture) en "MGA4-32-OK" (Whiteboard-trefwoord) moeten weerspiegelen wat er op uw systeem aanwezig is. - Controleer of de updatekandidaat klaar is voor validatie Valideer deze als dit het geval is (zie hieronder)
Let op:
Raadpleeg de pagina Enabling the Testing media voor meer informatie.
|
Valideer de update als deze gereed is
Alle hier beschreven acties hebben betrekking op de Bugzilla-melding.
- Controleer of de updatekandidaat gereed is voor validatie Idealiter is deze alleen gereed voor validatie als deze succesvol is getest op beide architecturen op alle releases die deze dekt. Omdat sommige bugs updates bevatten voor meer dan één Mageia-release, moet elke update worden voltooid voor zowel i586 als x86_64 voordat deze kan worden gevalideerd. Wanneer QA echter onder druk staat en de update niet groot is (zoals kernels of een wijdverspreid pakket), is een OK voor slechts één architectuur toegestaan. U kunt dit het gemakkelijkst zien op madb waar een groene cirkel naast elke Mageia-versie wordt weergegeven wanneer deze klaar is om te gaan.
- Voeg een validatiecommentaar toe om mensen te laten weten dat de update op beide architecturen en, indien nodig, alle releases correct is getest.
- Voeg indien nodig een lijst toe van de bron-RPM's (SRPM's, Source RPM's). Tegenwoordig wordt dit meestal al aangegeven in de bug met de betrokken pakketten. Ook kan het bug-headerveld RPM Package dit weergeven. Voor meer informatie over het vinden van de SRPM voor een pakket, zie de pagina [Hoe vind ik een bron-RPM].
- Citeer de Advisory Kopieer/plak de tekst, of (waarschijnlijker) zeg in welke Comment (commentaar deze te vinden is.
- Voeg het trefwoord validated_update toe in het tekstvak Keywords. Dit zal automatisch sysadmin-bugs@ml.mageia.org toevoegen aan de 'CC'-lijst, zodat het SysAdmin Team weet dat de kandidaat klaar is om te worden gepusht.
- Klik op Save (opslaan).
Let op: Normaal gesproken zie je dat iemand meldt dat de Advisory is geüpload. Je hoeft je hier geen zorgen over te maken. Teamleiders en mensen met relevante rechten uploaden nu de Advisories als yaml-tekstbestanden naar svn. Daar worden ze vervolgens gebruikt, wanneer de update wordt gepusht, om de advisory website en de mailinglist updates-announce bij te werken. Ze worden geüpload voordat de sysadmin de update pusht en ze worden, zodra ze zijn voltooid, voorzien van een sterretje (*) in het eerste veld op madb, en voorzien van een 'advisory'-tag in het whiteboard-veld van het updateverzoek op bugzilla. Alleen sommige QA-leden kunnen adviezen uploaden, dus als u ziet dat iemand nodig is, kunt u ook een opmerking achterlaten om dit te melden, zodat het niet wordt vergeten. |
Wat te doen als...
...de update request (herzienings-aanvraag) niet voldoet aan het updatebeleid
Als de update-aanvraag te veel informatie mist, bijvoorbeeld de advisory, de SRPM of de stappen om een bug te reproduceren, laat dan een bericht achter waarin u de verpakker vraagt het herzieningenbeleid te volgen.
Bijvoorbeeld:
Volg het updatebeleid en geef een advies bij uw updateverzoek.
https://wiki.mageia.org/en/Updates_policy#Maintainer_.28or_any_interested_packager.29
Wijs de bug opnieuw toe aan QA wanneer u de kans hebt gehad om hiernaar te kijken.
Bedankt.
Wijzig vervolgens de status naar ASSIGNED (toegewezen) en wijs de bug opnieuw toe aan de persoon die QA heeft gevraagd om deze te valideren.
...de updatekandidaat lost het probleem niet op of creëert een ander probleem
Reageer gewoon in de update request (herzienings-aanvraag) door alle informatie over de bug of regressie te geven, en op welke release en architectuur u testte. Wees voorbereid mee te doen aan verdere tests of informatie te geven als die wordt gevraagd.
Als er na een week geen reactie is, wijs de bug dan opnieuw toe aan de packager en wijzig de status naar ASSIGNED (toegewezen). Voeg ook de postlijst qa-bugs@ml.mageia.org toe als CC-contact op de bug, zodat we de packager kunnen antwoorden als ze het hebben opgelost.
...als u hulp of begeleiding nodig hebt of ergens niet zeker van bent
Vraag het gewoon! De enige domme vraag is degene die we nooit stellen omdat we het een domme vraag vinden. U kunt het vragen op IRC in #mageia-qa op Liberachat of op de qa-discuss mailinglijst. Als er niemand beschikbaar is in #mageia-qa, kunt u het altijd proberen in #mageia-dev.
Meer informatie
Raadpleeg de QA Team-portal voor meer informatie over het Mageia QA Team.
- Mageia's volledige updates policy.
- De pagina QA Tips and Tricks zou u wat inspiratie moeten bieden bij het uitvoeren van tests.
- QA-Discuss mailinglijst: qa-discuss@ml.mageia.org
- QA-Bugs mailinglijst: qa-bugs@ml.mageia.org
- U kunt ook Mageia App Db gebruiken om in behandeling zijnde updatekandidaten te bekijken en verschillende nuttige vergelijkingen uit te voeren.
- Sophie is een bot op IRC die veel nuttige informatie biedt over Mageia-pakketten.
Probeer eens te typen: :help in #mageia-qa of :more packagename.