# Testing og kvalitetssikring

> Utvalgt arbeid fra Engineer ApS som viser Testing og kvalitetssikring — resultatene som beviser det.

- [Effektiviserte CI/CD‑prosessene og sparte 4 000 timer ved å innføre automatisering i pipelines for programvareutvikling.](https://platform.engineer.company/nb/portfolio/streamlined-ci-cd-processes-saving-4-000-hours-42/)
- [Genererte API‑kontrakten fra databasen og utover — OpenAPI, en typet TypeScript‑klient på 44 076 linjer, 61 mock‑handlere og grensene brukergrensesnittet håndhever — med en kontroll i hvert ledd som feiler ved avvik.](https://platform.engineer.company/nb/portfolio/built-a-request-schema-validation-contract-with-automated-61/)
- [Bygde CI/CD‑pipelines i GitHub Actions med et distroless‑produksjonsimage for frontend og promotering gjennom flere miljøer.](https://platform.engineer.company/nb/portfolio/built-github-actions-ci-cd-pipelines-with-a-69/)
- [Skrev 578 go‑task‑automatiseringsmål som dekker native-, Docker- og HTTPS‑utviklingsmoduser, linting, testing, database og produksjonssetting.](https://platform.engineer.company/nb/portfolio/authored-578-go-task-automation-targets-70/)
- [Satte en kvalitetsstandard med null advarsler for seks språk — Go, TypeScript, SQL, Python, Shell og Markdown — håndhevet av pre‑commit‑hooks.](https://platform.engineer.company/nb/portfolio/set-a-zero-warnings-quality-bar-across-six-79/)
- [Bygde en lagdelt automatisert testsuite — 981 Go‑tester, 543 spesifikasjoner for frontend og nettleser, 494 atferdstester i SQL — med mutasjonstesting, egenskapsbaserte tester og en kvalitetsport for universell utforming.](https://platform.engineer.company/nb/portfolio/built-a-layered-automated-test-suite-across-four-layers-94/)
- [Bygde repoets kontrollmotor — 268 registrerte commit‑kontroller, 277 lint‑regler og 15 egne ESLint‑regler — pluss 146 tester av selve kontrollene, slik at det er bygget, ikke gjennomgangen, som holder standarden.](https://platform.engineer.company/nb/portfolio/built-the-repository-s-guard-engine-of-268-checks-95/)
- [Holdt skjemaet ærlig gjennom 1 022 migreringer med en CI‑port som bygger databasen begge veier — en ny installasjon, og en installasjon pluss alle migreringer — og feiler når de to ikke stemmer overens.](https://platform.engineer.company/nb/portfolio/kept-the-schema-honest-across-1022-migrations-99/)
- [Herdet SSH til 24 kontrollerte direktiver med validering i tre trinn — kandidatfilen, den sammensatte konfigurasjonen og så daemonens egen tilbakelesing — etter at tilbakelesingen avslørte at den kjørende serveren i det stille overstyrte to av de tjuefire.](https://platform.engineer.company/nb/portfolio/hardened-ssh-with-three-stage-validation-111/)
- [Beviste at utestengingen virker fra ende til annen ved hver herdingskjøring ved å utestenge en reservert testadresse, lese den resulterende kjerneregelen og oppheve utestengingen i en garantert oppryddingsblokk, slik at en jail som slutter å virke, får kjøringen til å feile i stedet for å melde at alt er i orden.](https://platform.engineer.company/nb/portfolio/proved-the-intrusion-banning-path-on-every-converge-112/)
- [Verifiserte brannmurregler etter plassering i stedet for tilstedeværelse ved å lese den nummererte regellisten og den aktive pakkefilterkjeden, fordi en regel som finnes, ikke er det samme som en regel en pakke faktisk når.](https://platform.engineer.company/nb/portfolio/verified-firewall-rules-by-position-113/)
- [Fikk check‑modus til å fortelle sannheten på tvers av hele plattformen etter å ha funnet seks sonder som avgjorde ut fra en verdi verten aldri hadde gitt, fordi Ansibles command‑modul melder suksess under --check og samtidig hopper helt over kommandoen.](https://platform.engineer.company/nb/portfolio/made-ansible-check-mode-tell-the-truth-116/)
- [La til en preflight‑play som kjører den samme koden som konvergeringen mot operatørens lokale hemmeligheter på omtrent ett sekund, etter at en halvveis gjennomført produksjonskjøring stoppet på den niende oppgaven med swap‑innstillingene allerede skrevet til verten i drift.](https://platform.engineer.company/nb/portfolio/added-a-preflight-play-for-secrets-117/)
- [Reduserte eksponeringen i systemd‑sandkassen for hver enhet plattformen installerer — tjenesten for dødmannsknappen fra 9,6 UNSAFE til 1,5, en internetteksponert git‑forge fra 8,3 EXPOSED til 1,5 — og la til en parserkontroll ved konvergering etter å ha funnet et feilstavet direktiv som ble ignorert i det stille i tre enhetsmaler.](https://platform.engineer.company/nb/portfolio/cut-systemd-sandbox-exposure-across-every-unit-119/)
- [Bygde en commit‑port med 22 enlinjes lintere pluss fem som fortjener et avsnitt, uten advarselsnivå og uten tillatte undertrykkinger i koden, som dekker HTML, CSS, JavaScript, Python, YAML, Markdown, shell, lenker, staving, hemmeligheter og typografi.](https://platform.engineer.company/nb/portfolio/built-a-22-linter-commit-gate-127/)
- [Kuttet nettstedets nettleserdrevne kvalitetsport fra 1 636 sekunder til 615 ved å kjøre kontrollene med de lengste først gjennom en worker‑pool begrenset til fire baner, etter å ha målt at alfabetisk rekkefølge kostet 320 sekunder mot 224.](https://platform.engineer.company/nb/portfolio/cut-the-visual-quality-gate-to-ten-minutes-128/)
- [Rettet et sitemap der 172 av 176 URL‑er delte ett endringstidspunkt, ved å hente datoen fra git‑historikken etter å ha slått fast at eksporten skriver om hver fil ved hver kjøring.](https://platform.engineer.company/nb/portfolio/fixed-a-sitemap-with-one-shared-timestamp-140/)
- [Satte 10 242 linjer JavaScript i kvalitetsporten under en formaterer og en linter etter å ha slått fast at det var den største kodemengden i repoet og den eneste ingenting leste, og rettet 13 funn uten å undertrykke noen.](https://platform.engineer.company/nb/portfolio/brought-the-quality-gate-code-under-a-linter-143/)
- [Holdt generatoren til 981 testtilfeller med et minstekrav på 92 % grendekning og advarsler behandlet som feil, og verifiserte idempotens ved å kjøre hele byggepipelinen to ganger fra en tom fil og kreve at den andre kjøringen ikke endret noe.](https://platform.engineer.company/nb/portfolio/held-the-generator-to-964-tests-and-a-coverage-floor-145/)
- [Slo på alle reglene i Python‑linteren på feilnivå og arbeidet seg gjennom 1 815 funn ned til null, med en skriftlig begrunnelse for hvert av de få unntakene og to av dem sikret av en kontroll i stedet for en kommentar.](https://platform.engineer.company/nb/portfolio/enabled-every-python-linter-rule-as-an-error-147/)
- [Skrev tester for selve kontrollene etter å ha slått fast at en kontroll som bare får ren inndata, en dag vil melde rent fordi den ikke leste noe — plantet en stavefeil for å bekrefte at stavekontrollen finner den, og hentet et id‑område fra databasen i stedet for fra et tall i testen.](https://platform.engineer.company/nb/portfolio/wrote-tests-for-the-checkers-themselves-149/)
- [Fant ut at commit‑hookene og kvalitetsporten kjørte ulike kontroller mens et dokument lovet at de var de samme, ved å sammenligne de to listene i en test — de fem som bare noen gang ble kjørt manuelt, var de som leste CV‑teksten.](https://platform.engineer.company/nb/portfolio/found-the-commit-hooks-and-the-gate-disagreeing-150/)
- [Prøvekjørte CI‑hooken på forge‑siden og fant to feil som ikke kunne oppdages ved å lese filen: en reserveløsning som la et uoppløselig argument på hookens inndata, og gits egen miljøvariabel som fulgte kvalitetsporten inn i utsjekkingen og gjorde 19 tester røde.](https://platform.engineer.company/nb/portfolio/rehearsed-the-forge-side-ci-hook-151/)
- [Stoppet en applikasjon som fylte minnet med 41 MB i sekundet — registrert 111 GB komprimerte sider på en maskin med 36 GB — ved å begrense hver hendelsesstrøm, abonnere etter hendelsestype og sette et frekvensbudsjett på loggingen, som tok 610 996 logglinjer ned til 1 411.](https://platform.engineer.company/nb/portfolio/stopped-an-application-filling-memory-at-41mb-a-second-155/)
- [Skrev en parser som leser den faktiske C‑headeren på 7 308 linjer og verifiserer hvert kallsted, hver enum‑konstant og at hver klasse som eier en peker, er final, etter at en håndskrevet plassholder‑header lot kall til tre fjernede funksjoner kompilere, lenke og krasje.](https://platform.engineer.company/nb/portfolio/wrote-a-parser-that-verifies-every-ffi-call-site-157/)
- [Tok testsuiten fra seks tester over en grense på seksti sekunder til 135 beståtte på 8,9 sekunder ved å profilere hovedtråden og fjerne de to kallene den satt fast i under 3 989 av 4 017 prøver.](https://platform.engineer.company/nb/portfolio/took-the-test-suite-under-nine-seconds-158/)
- [Tok i bruk den halvdelen av meldingskjernen applikasjonen aldri hadde brukt — overføring av sikkerhetskopier, forsvinnende meldinger, redigering og ny sending av meldinger, verifiserte invitasjoner, proxyer og krypteringspolicy — og kjørte hver test mot det ekte biblioteket uten mocks.](https://platform.engineer.company/nb/portfolio/reached-the-unused-half-of-the-messaging-core-161/)
- [Fikk seks rapporteringsinnsamlere til å oppgi den delen av inndataene de aldri leste — filer som forble lukket, sonder som ikke var installert, journallinjer som ikke ble gjenkjent — og tilpasset terskelverdier til 116 målinger, etter å ha slått fast at en blind innsamling og en vert der alt er i orden, gir den samme siden.](https://platform.engineer.company/nb/portfolio/made-six-collectors-state-what-they-never-read-167/)

<https://platform.engineer.company/nb/categories/testing/>
