Kvalitetssikring og testing av programvare
Manuell og automatisert testing av produkter for iOS, Android og web, enten i et prosjekt vi utvikler eller som en uavhengig kontroll av et produkt laget av et annet team. Dere får reproduserbare feilrapporter og et tydelig bilde av hva som kan gå galt ved lansering.
Når dere trenger et testteam
Testing lønner seg når en feil i produksjon koster mer enn å finne den tidligere. Dette er situasjonene vi hører om oftest.
- Brukerne melder om feil som teamet deres aldri har sett
- Hver ny versjon ødelegger noe som fungerte før
- Utviklerne tester sin egen kode, og ingen andre kontrollerer den
- Versjonen deres ble avvist i gjennomgangen i App Store eller Google Play
- Dere skal snart lansere og vil ha en ekstern kontroll først
- Produktet blir tregt eller feiler når trafikken øker
Hva vi tester
Manuell testing
Testerne går gjennom produktet steg for steg mot krav og testtilfeller, på ekte enheter og i nettlesere. De utforsker også områder som ingen testtilfeller dekker ennå, slik en ny bruker ville gjort.
Testautomatisering
Vi automatiserer kontrollene som må bestås i hver versjon: registrering, betalinger, andre sentrale flyter og API-et. Testene kjører i CI/CD-løpet deres og varsler om feil før en versjon slippes.
Ytelsestesting
Vi måler svartider og kapasitet under belastning og finner punktet der produktet begynner å svikte. Rapporten lister flaskehalsene i den rekkefølgen de bør rettes.
Sikkerhetstesting
Vi sjekker hvordan produktet lagrer og overfører data, hvordan innlogging og tilganger fungerer, og hva koden og tredjepartsbibliotekene eksponerer. Hvert funn kommer med en risikovurdering og et anbefalt tiltak.
Mobiltesting og krav fra appbutikkene
Testing på ekte enheter med iOS og Android, ikke bare simulatorer, på de OS-versjonene brukerne deres faktisk har. Vi sjekker også versjonene mot reglene i App Store og Google Play, slik at de ikke blir avvist i gjennomgangen.
Testing av API og integrasjoner
Backenden, betalingsleverandørene og tredjepartstjenestene testes sammen, også feilsituasjonene: tidsavbrudd, avviste betalinger, ufullstendige data. Det er her hendelser i produksjon som regel starter.
Testing som går parallelt med utviklingen
Testing som starter etter utviklingen, finner problemene når de er dyrest å rette. I våre prosjekter kommer en tester inn allerede i kravfasen, skriver testtilfeller mens funksjonene bygges og sjekker hver sprintversjon, ikke bare den siste. På lanseringsdagen vet teamet allerede hvor de svake punktene er. Den samme tilnærmingen fungerer når testerne våre blir med i det eksisterende teamet deres.
- Kravene gjennomgås for hull før koden skrives
- Testtilfellene er klare når funksjonen er klar
- Hver sprintversjon sjekkes, ikke bare lanseringskandidaten
- Regresjonstesting før hver lansering
Manuell eller automatisert testing?
Manuell testing gir skjønn: en person merker at en flyt er teknisk riktig, men i praksis ubrukelig. Automatisering gir repetisjon: de samme hundre kontrollene etter hver endring, om natten og uten tretthet. Små prosjekter og kortlivede funksjoner tjener sjelden inn kostnaden ved å skrive automatiserte tester, og det sier vi fra om i stedet for å selge dem. Langlivede produkter med hyppige lanseringer tjener den raskt inn, så de fleste modne produkter ender med å bruke begge deler.
- Manuelt: nye funksjoner, brukervennlighet og produkter som endres hver uke
- Manuelt: utforskende testing av uklare eller risikable områder
- Automatisert: sentrale flyter som aldri må svikte, sjekket i hver versjon
- Automatisert: regresjonstester for produkter med hyppige lanseringer
- Begge deler: automatisering for den stabile kjernen, mennesker for alt nytt
Hva dere får
Alt vi lager, blir værende i prosjektet, slik at neste tester, vår eller deres, ikke starter fra null. En feil som ikke kan reproduseres, er ikke et funn, og vi rapporterer den ikke som et. Hver lansering avsluttes med en kort rapport om hva som ble testet og hvilke risikoer som gjenstår, slik at beslutningen om å lansere er deres, og tatt på et godt grunnlag.
- Testtilfeller og sjekklister lagret i deres sakssystem eller repositorium
- Feilrapporter med steg, miljø, forventet og faktisk resultat
- Lanseringsrapport: hva som ble dekket og hvilke risikoer som gjenstår
- Automatiserte tester med instruksjoner for kjøring, der automatisering er avtalt
Slik foregår testingen
Gjennomgang av produktet
Vi setter oss inn i kravene, eller i selve produktet når det ikke finnes dokumentasjon, og avtaler hvilke plattformer, enheter og flyter som er viktigst. Dere får et testomfang og en testplan.
Testtilfeller
Vi skriver testtilfeller og sjekklister for det avtalte omfanget. De lagres i verktøyene deres og blir værende i prosjektet.
Testing av versjoner
Hver versjon testes på ekte enheter og i de aktuelle nettleserne. Feil legges inn i sakssystemet deres med alt som trengs for å reprodusere dem.
Automatisering der det lønner seg
For flyter som sjekkes i hver versjon, skriver vi automatiserte tester og kobler dem til CI-løpet deres. Dere ser resultatene ved hver endring.
Lanseringsrapport
Før hver lansering får dere en oppsummering av hva som ble testet, hva som ble rettet og hvilke risikoer som gjenstår.
Plattformer og verktøy
Plattformer
- iOS
- Android
- Nettlesere
- REST-API-er
Automatisering
- Playwright
- Selenium
- Appium
- XCUITest
- Espresso
- Postman
Ytelse og sikkerhet
- Apache JMeter
- k6
- OWASP ZAP
Arbeidsflyt
- Jira
- TestFlight
- Testspor i Google Play
- Firebase Crashlytics
Slik kan dere jobbe med oss
Testing i et prosjekt vi utvikler
En tester er med i teamet fra første sprint, og testingen planlegges sammen med utviklingen.
Testing av et produkt laget av andre
En kontroll med fast omfang av et eksisterende produkt eller en bestemt versjon: testtilfeller, feilrapporter og en skriftlig vurdering av tilstanden.
Testere i deres team
Testerne våre jobber i deres prosess og deres sakssystem, fakturert per time eller som en dedikert ressurs.
Relaterte prosjekter
Se også: Utvikling av mobilapper · Webutvikling · Vedlikehold av mobilapper · DevOps
Tilbakemeldinger
Revol-teamet fortsetter å effektivisere kundens utviklingskapasitet med arbeid av høy kvalitet og pålitelig support. De kommuniserer godt og viser en solid forståelse av kundens behov og virksomhet.
Tomas
Arbeidet fra Revol har fullt ut innfridd forventningene, og kunden er fornøyd. Den friske tilnærmingen og evnen til å være tilgjengelige for support har vært verdifulle. Kunder kan trygt velge dem som et kommunikativt og kundeorientert team som hjelper dem å nå målene sine.
Andrey
Ofte stilte spørsmål
Kan dere teste et produkt dere ikke har utviklet?
Ja. Vi starter med kravene, eller med selve produktet når det ikke finnes dokumentasjon, og skriver testtilfeller ut fra det. Det første resultatet er som regel en liste over de alvorligste problemene og en testplan for resten.
Kan dere stille med testere til vårt eget team?
Ja. Testerne kan jobbe i deres prosess, deres sakssystem og etter deres lanseringsplan, på samme måte som utviklerne våre gjør når de forsterker kundenes team.
Bør vi automatisere testene våre?
Bare der testene kjøres så ofte at de tjener inn kostnaden ved å skrive og vedlikeholde dem. For et langlivet produkt med hyppige lanseringer betyr det som regel de sentrale flytene og API-et. For en prototype eller en kortlivet funksjon er manuell testing billigere, og det sier vi fra om.
Hvilke enheter tester dere på?
Ekte enheter med iOS og Android, pluss simulatorer og emulatorer for bredere dekning av OS-versjoner, og de viktigste nettleserne på datamaskin og mobil. Listen over enheter avtales ved oppstart, ut fra hva brukerne deres faktisk har.
Kan dere hjelpe etter en avvisning i App Store eller Google Play?
Ja. Vi leser tilbakemeldingen fra gjennomgangen, reproduserer problemet, sjekker versjonen mot gjeldende retningslinjer og forteller utviklerne nøyaktig hva som må endres. Utvikler vi appen selv, retter vi feilen og sender den inn på nytt.
Hvordan prises testing?
Det avhenger av samarbeidsformen. En enkeltstående kontroll av et produkt eller en versjon har som regel fast omfang; løpende testing faktureres per time eller som en dedikert ressurs. Etter en gjennomgang av produktet foreslår vi en samarbeidsform og sender et estimat.
Fortell oss om prosjektet deres
Beskriv oppgaven med noen få linjer. Innen én virkedag svarer vi med spørsmål eller en første vurdering av omfang og kostnad.
Foretrekker dere e-post eller en samtale?
welcome@revolsource.com
+38 097 662 23 20
Revol Software OÜ, Tallinn, Estland. Teamet vårt er distribuert over hele verden.
Bli med i teamet vårt
Send CV-en din til career@revolsource.com