Come vengono effettuati i test del software nelle startup tecnologiche?

10

Ho visto molti articoli di ricerca e blog tecnologici che vantano i vantaggi dei test del software. Ne ho convinto. Ma dal momento che tutte le ricerche sui test del software sono condotte da grandi società di software, non credo che si applichino davvero alle startup. Poiché le startup hanno esigenze e vincoli diversi rispetto alle grandi aziende di software.

Quindi questo ha sollevato le domande. Le startup tecnologiche dovrebbero scrivere test automatici? Se è così, sono fatti nello stesso modo delle grandi società di software? (test del fumo, test di regressione, ecc.) È meglio se puoi riferire alcuni articoli di ricerca su questo argomento ... perché non sono riuscito a trovarne uno da solo.

(Devo ammettere che, anche se sono ancora all'inizio della mia carriera, ma devo ancora vedere una startup seriamente impegnata a scrivere test automatici)

    
posta ming_codes 12.12.2011 - 18:52
fonte

7 risposte

11

C'è sempre un conflitto tra ciò che dovrebbe essere fatto e ciò per cui realisticamente abbiamo tempo. Sì, molte start-up rinunciano allo sviluppo guidato dai test e ai test automatizzati per ridurre il tempo necessario a far funzionare un progetto.

I siti di social networking e le aziende di app per dispositivi mobili sono le grandi bolle ora e sono feroce competitivi. A volte la differenza tra andare in diretta tra 4 mesi e 5 mesi significa Perdere.

Il time-to-market è la chiave, e se il successo avviene, allora è il momento di ridimensionare, quindi ci sarà un sacco di tempo per rifattorizzare il tuo software pezzo-di-crap non testato in qualcosa di utile.

    
risposta data 12.12.2011 - 19:04
fonte
12

Il test del software non è una religione. È solo un'ottima idea.

Dici che non hai la manodopera per scrivere i test adesso? Ok bene. Tra 6 settimane, avrai la manodopera per trovare il bug che sta bloccando la tua applicazione, che sarebbe stata trovata immediatamente se avessi eseguito test appropriati?

Troppi test possono rallentare lo sviluppo. Anche i test troppo piccoli possono rallentarlo. Devi trovare il giusto equilibrio e di solito è difficile dire dove sia. E niente di questo è specifico per le grandi o piccole aziende.

    
risposta data 12.12.2011 - 19:35
fonte
4

Per molti anni, mentre lavoravo in piccole aziende e start-up, ero sotto l'errata comprensione che I "non avevo abbastanza tempo per scrivere test unitari per il mio codice" .

Quando ho fatto dei test, erano cose pesanti e pesanti che mi hanno solo incoraggiato a pensare che avrei dovuto scrivere solo unit test quando sapevo che erano necessari.

Recentemente sono stato incoraggiato a utilizzare Test Driven Development e ho scoperto che è un rivelazione completa .

Ora sono fermamente convinto che I "non ho il tempo di non scrivi unità- prove " .

Nella mia esperienza, sviluppando con i test in mente si finiscono con interfacce più pulite, classi più focalizzate e amp; moduli e generalmente più SOLID , codice verificabile.

Ogni volta che lavoro con un codice legacy che non ha test unitari e devo testare manualmente qualcosa, continuo a pensare "questo sarebbe molto più veloce se questo codice avesse già dei test unitari" . Ogni volta che devo provare ad aggiungere funzionalità di unit test al codice con un elevato accoppiamento, continuo a pensare "questo sarebbe molto più semplice se fosse stato scritto in modo disaccoppiato" .

Se c'è una cosa che ho scoperto nel corso degli anni, se stai lavorando ad una start-up devi essere agile , e non solo nel metodologia di sviluppo del software senso. Per me TDD è uno strumento importante che consente di iniziare e rimanere agile .

    
risposta data 13.12.2011 - 12:10
fonte
1

Non si tratta di chi dovrebbe fare test del software, test del software è una specie di filosofia di sviluppo del software. I test del software costituiscono la base di una buona qualità del software e, in una fase di avvio, la qualità del software è un vantaggio quando l'acquisizione da parte di una grande azienda è dietro l'angolo;)

    
risposta data 12.12.2011 - 19:02
fonte
1

Le migliori pratiche sono a livello di settore, sia che tu stia creando nonna un sito Web o creando il sistema di guida per un satellite. Dovrebbero essere sempre seguiti da coloro che vogliono considerarsi professionali, per questo sono chiamati BEST practice.

    
risposta data 12.12.2011 - 19:06
fonte
1

Sì, le startup a volte tagliano gli angoli e non impiantano test adeguati. A volte questo è appropriato (per progetti abbastanza piccoli o quando il tempo / denaro sono fondamentali)

Questo non è esclusivo per le startup però. Uno dei nostri fornitori di contoterzisti IT ha persino un ambiente di test. Tutto è fatto direttamente per vivere e questa è una grande compagnia multinazionale (spaventosa!)

    
risposta data 12.12.2011 - 19:24
fonte
1

Dovrebbero? Sì. Lo fanno in pratica, non così spesso come dovrebbero.

Il motivo più tipico è la mancanza di risorse che include il tempo di sviluppo, il costo di assunzione di un tester dedicato o part-time, il costo della creazione di un ambiente di test e così via. Puoi persino trovare queste scuse in grandi impostazioni aziendali e piccole start-up.

Guardando in un altro modo, il test è una delle cose più facili da tagliare da un programma di sviluppo, specialmente uno con una pressione temporale molto stretta e / o una pressione sui costi per produrre risultati visibili. Insieme al lavoro di progettazione dettagliato, è considerato 'lanuginoso' da molti manager e il primo posto che diranno "taglia così possiamo far funzionare il nostro programma e il budget" seguito da "Perché non stai programmando?".

In alcune aziende, ci sarà qualcuno che spinge i test. Di solito questo sarà lo sviluppatore ingaggiato e di solito sarà qualcuno con esperienza e probabilmente qualcuno che ha una partecipazione finanziaria di qualche tipo in azienda. Una società che inizia con questo "DNA" probabilmente testerà sin dall'inizio.

    
risposta data 12.12.2011 - 19:33
fonte

Leggi altre domande sui tag