Pergunta

Na minha empresa, desenvolvemos um produto de software. Até agora não tivemos nenhum testadores, então basicamente os desenvolvedores eram os testadores, e, claro, o cliente e os usuários (não é bom).

A nossa equipa é composta de 4 desenvolvedores e nós trabalhamos principalmente com Cruisecontrol, Flex, ASP.NET, IIS, MSSQLServer e WebORB. Eu estou incitando os gestores de contratar um testador, mas gostaria de saber se os testadores são normais no desenvolvimento de software. Assim:

  1. Tem testadores necessárias no produto (ou projeto de grande escala) de desenvolvimento?
  2. testadores só deve fazer o trabalho de teste? Ou você pode esperar de um desenvolvedor ou designer gráfica para metade teste da semana?
  3. Onde você pode encontrar bons testadores (suponho que não há um grau em testes de desenvolvimento de software)?
  4. É a tarefa do gerente de projeto de teamlead técnica para teste de tudo?

thx, Lieven Cardoen

ps:. Thx, Vinay, nós temos testes de unidade, mas, na verdade, testes de unidade não pode cobrir o que os testadores podem

Foi útil?

Solução

1) são testadores necessárias no produto (ou projeto de grande escala) de desenvolvimento?

Sim. Alguém tem que assumir a responsabilidade de avaliar quando algo é testada o suficiente e trabalhar fora que erros precisam ser consertadas ou pode enviar porque existem soluções alternativas.

2) testadores só deve fazer o trabalho de teste? De que você pode esperar de um desenvolvedor ou designer gráfica para metade teste da semana?

Testers costumam fazer ao cliente trabalho de apoio ou de trabalho com o cliente para desenvolver requisitos. Os testadores podem atuar como vozes internas para os clientes ... e se eles interagem com o suficiente cliente deve se sentir um senso de responsabilidade para obter um produto de qualidade adequado fora do desenvolvimento sabem que o cliente vai querer.

3) Onde você pode encontrar bons testadores (suponho que não há um grau em testes de desenvolvimento de software)?

Eu aposto que há um lugar grau. Um monte dos testadores que temos são alunos informática universitários que estão fazendo um ano fora na indústria antes de voltar para o seu último ano na uni.

4) É a tarefa do gerente de projeto de teamlead técnica para teste de tudo?

Não necessariamente. Depende quão grande a equipe é, se é pequeno, então sim, alguém pode dobrar e fazer os dois papéis. Para projetos maiores, porém, estas são pessoas diferentes.


Lembre-se. Ter um testador não é uma desculpa para desenvolvedores / programadores não código de teste como eles escrevê-lo ou criar teste de unidade. Os desenvolvedores ainda têm a responsabilidade de desenvolver um bom produto. Eles nunca deve tentar inventar uma desculpa para um bug que eles criaram, culpando um testador para não encontrá-lo.

Outras dicas

É da pergunta nº 10 no teste de Joel:

http://www.joelonsoftware.com/articles/fog0000000043.html

Deve dizer-lhe tudo o que você precisa saber. :)

É melhor ter testadores na equipe. Nós, os desenvolvedores não podem obter tanto de defeitos quando testamos, mas se ele é testado por um testador, em seguida, ele pega tantos defeitos antes de liberar os defeitos.

É melhor ter casos de teste unidade também. Quando desenvolvemos uma nova funcionalidade, apenas temos que atualizar o caso de teste e executá-lo.

Testers são necessários em ambos os casos. Mesmo que o seu desenvolvimento é impulsionado teste, acho que o papel do testador muitas vezes centra-se nos requisitos externos do projeto - é que o projecto entregar o produto esperado que vai cumprir os requisitos?

Eu acho que em grandes ambientes corporativos muitas vezes você tem uma mina de ouro de bons testadores em call-centers ou aqueles que fazem serviço ao cliente. Eles geralmente têm um entendimento muito sólido dos processos de negócios, problemas e necessidades.

Neste contexto, muitas vezes, ter deixado os testadores trabalhar com a construção de casos de teste da vida real em sistemas de back-end também, por vezes, estes ainda são usados ??pelos testes de integração que os desenvolvedores a escrever. Tivemos grande sucesso com deixar os desenvolvedores perguntar os testadores para dados / cenários para testar testes automatizados baseados na CI.

Você pode esperar outros papéis para participar no teste. Eu realmente acho que todo mundo deve ser focado em qualidade e testes, mas infelizmente todos não pode ser responsável.

  1. De alguma dimensão em, absolutamente (eu diria que cerca de 10 desenvolvedores).

  2. Testadores também pode fazer construção e trabalho de integração. Em grupos menores desenvolvedores têm de teste, porque não há mais ninguém para fazê-lo.

  3. Boa pergunta. Talvez alguns de seus desenvolvedores como teste.

  4. Não, especialmente quando o projeto fica maior.

Eu tenho trabalhado em um projeto grande (centenas de desenvolvedores), no nosso grupo cerca de cinquenta. O nosso grupo tinha um grupo de integração e testes de duas ou três vezes as pessoas plenas e um grupo de estudantes.

  1. ON larga escala, sim. No entanto, existem muitos métodos e tipos de testes diferentes. Estes incluem usuário, regressão, unidade e testes de integração. Experimente e automatizar o máximo que puder. Confira selênio (IDE), Molydbenum, Cenários de uso e Agile de desenvolvimento.

  2. Um desenvolvedor ou designer deve decidir se eles se encontraram critérios de aceitação, mas se eles testam seu próprio trabalho, então é tipo de como escrever o seu próprio exame antes de sentar-se para ele. Os desenvolvedores testam o trabalho de outro desenvolvedor não é muito melhor na minha opinião.

  3. Dunno

  4. Eu acho que um gerente de projeto não terá tempo para testes rigorosos. É realmente o trabalho de um testador dedicado, que sabe ser diligente e pode interagir com o gerente de projeto.

  1. Tem testadores necessárias no produto (ou projeto de grande escala) de desenvolvimento?
  2. testadores só deve fazer o trabalho de teste? Da lata você espera de um programador ou designer gráfica para metade teste da semana?
  3. Onde você pode encontrar bons testadores (suponho que não há um grau na teste de desenvolvimento de software)?
  4. É a tarefa do gerente de projeto de teamlead técnica para teste tudo?

1 - no desenvolvimento de produtos quando você tem> 10 clientes: o inferno sim. ESSENCIAL. Mesmo em um projeto de grande escala. Você pode economizar quando você é pequeno, mas quando você chegar ao longo de um determinado tamanho, a dor de atualização (por exemplo) 100 clientes em todo o mundo supera o salário de um único testador.

2 - sim, tho haja alguma sobreposição no trabalho de apoio também. Desenvolvedor deve fazer testes básicos - ele funciona? - mas cabe aos testadores para fazer o, end-to-end, tipo de teste de uso caso estranho exaustiva. É um desperdício de uma desenvolvedores tempo para fazer isso, eu acho. Os designers gráficos não deve testar. - Bem, eles teste de usuário, espero, mas isso é até mesmo antes que ele chegue aos desenvolvedores

3 - alguns desenvolvedores fazem bons testadores. algumas pessoas de apoio são bons testadores. outras que - apenas encontrá-los aleatoriamente. anunciar. etc. não há graus, mas alguém que é pedante, pode manter-se por si mesmos, e sabe mais sobre como o ambiente final une do que como cada linha de código funciona seria bom.

4 - não. o PM detém o projeto juntos, e coordena os testers, desenvolvedores, etc., o líder técnico deve ser, sabe, levando a equipe de tecnologia. não testar.

Obviamente, não há fugas entre os papéis. Às vezes, todos devem estar fazendo alguns testes, mas isso é mais para obter o máximo de cobertura pouco antes RTM, não em um dia-a-dia ou semana a base de semana.

Os testes unitários são um ótimo começo, uma vez que pegar os erros de lógica, mas não se pode esperar para pegar interações do usuário loucos, ou problemas que só aparecem depois de seu aplicativo foi executado por 72 horas + - testes de unidade irá NUNCA NUNCA apanhar estes. Seu cliente vai, mas então você não vai ter clientes por muito tempo:)

BTW, eu tenho "estado lá, feito isso". Eu testei sobre os clientes e teve testadores apropriadas em diferentes fases (vrs inicialização comprados por uma grande empresa) do mesmo produto. O produto era muito mais sólida, uma vez que tinha testadores, e os clientes eram mais felizes também (além, é difícil para a implantação de um pequeno pedaço crítico para 400 locais em todo o mundo - pegá-lo antes que os navios)

Nunca subestime o valor de especialistas.

A maioria das pessoas que não são testadores, especialmente os desenvolvedores, não gostam de testar e não fazê-lo bem. Se você perguntar a um designer gráfico ou um desenvolvedor de passar metade do seu tempo testando, na melhor das hipóteses você vai perder 50% da produção de um bom designer / programador e ganhar 50% de um pobre testador, caro. Na pior das hipóteses você vai perdê-los completamente, porque eles vão encontrar um lugar melhor para trabalhar.

No caso de desenvolvedores, eles são geralmente muito perto do código para ser capaz de testá-lo objetivamente. Eles vão fazer suposições com base no seu conhecimento dos internos. Um desenvolvedor testar seu próprio código é particularmente ruim.

O gerente de projeto deve ser responsável por garantir que tudo é testado, mas que não deveria estar fazendo isso sozinhos. Eles não vão ter tempo suficiente ou a experiência necessária.

Eu já trabalhei para uma empresa de consultoria. Nós não tivemos testadores especializados e, ao invés, usar qualquer consultores foram atualmente sem um projeto. Nenhum deles tinha qualquer experiência testando e como resultado, a maioria deles não eram muito bons testadores. Teríamos relatórios de erros como "o sistema não funciona mais" ou o meu pessoal favorito: um screenshot de um aplicativo que mostra como lento que era (uma imagem do aplicativo em execução rapidamente não teria olhado diferente). Eles iriam abusar do sistema de rastreamento de bugs também (ou ignorá-lo completamente em favor de sua própria casa-bebida spreadshhets Excel). Foi um pesadelo.

Eu acho que testers (CAN) trazer para a mesa é um novo conjunto de olhos sobre um produto. Eu descobri que eu sou propensos a seguir o caminho feliz quando executando o software, quer seja através da interação UI ou utilizando as classes que eu escrevi. Quando você sabe como algo é suposto para trabalhar, é um pouco natural para fazer as coisas da maneira errada, para exercer o produto de uma forma que ele não se destina ou para tentar coisas em uma ordem que ninguém que sabe como funciona o faria fazer.

As minhas respostas às suas perguntas são as seguintes:

  1. Sim. O teste é uma necessidade e, portanto, é necessário algum tipo de testador. Tipicamente, os testes de unidade irá capturar uma grande parte dos problemas de baixo nível, mas o teste de usabilidade e testes de 'exigências de determinar se satisfizer as reivindicações na brochura brilhante. Se você reclamar o seu software faz 'X', em seguida, parte do trabalho do testador é para se certificar de que ele realmente faz 'X'. Tivemos testador descobrir alguns problemas em plataformas que eu normalmente não usam. É bom encontrar esses problemas no início.

  2. Talvez. Nós cross-teste de nossos produtos em casa, mas têm um grupo de teste em separado também. Nós tendemos a (in-house) encontrar a parte do leão dos problemas, mas os testadores em tempo integral encontrar coisas às vezes que nós provavelmente nunca ter encontrado. Se você dividir o tempo entre o desenvolvimento e testes, ele precisa ser claro que o teste não é uma reflexão tardia. Se eu estou sobrecarregado trabalhando no meu desenvolvimento e têm dificuldade em passar o tempo necessário testar seu produto, então eu não vou ser tão eficaz como um testador. A gestão do tempo é essencial se você estiver indo para ter desenvolvedores dobrando como testadores.

  3. Não tenho certeza. Alguns grupos (IV e V grupos, por exemplo) em uma organização que apenas a testar. Eu suspeito que há um número de pessoas lá fora, que não tem nenhum negócio ou desejo de escrever software, mas pode testar o Parreira fora de um produto. Alguns de nossos melhores testadores no meu último emprego não escrever qualquer código em tudo.

  4. Depend em seu projeto, mas eu diria que não, em geral. Responsabilidade é algo que é espalhado na minha loja. O chumbo não é responsável por todos os testes. Somos todos responsáveis.

De qualquer forma, essa é a minha dois centavos.

Todos dirão testadores são necessários, e essa é a resposta politicamente correta. Mas testadores são apenas uma das muitas ferramentas disponíveis na caixa de ferramentas de garantia de qualidade. Você pode enviar software perfeitamente bem sem testadores. Por exemplo, eu me pergunto se Stackoverflow tem um departamento de teste?

Um testador medida a qualidade do código de seus desenvolvedores produzir. Mas a disponibilidade de medidas de qualidade não faz nada para melhorar a qualidade.

Testers não vem de graça. Você vai ter para o desenvolvimento mudança para entregar à equipe de teste em vez do cliente. Isso pode levar a uma desconexão entre clientes e desenvolvedores: os testadores pode encontrar bugs que os clientes não poderiam se preocupam, e ignorar os erros que são muito importantes para o cliente. Além disso, você terá que criar e manter um ambiente de teste separado.

Os bons testadores irá ajudá-lo a desenvolver melhor, e especialmente liberar mais suavemente. Mas sua milhagem pode variar.

P.S. Em uma grande empresa testadores são essenciais: eles permitem a transferência de culpa. Digamos que um bug danos causas cliente -> executivo está chateado. Neste ponto, o executivo está pronto para fazer coisas desagradáveis ??para a sua equipa. Com uma equipe de teste, você pode transferir a culpa para a equipe de teste, que mudar a volta a culpa para você. Um compromisso rola para fora:. Você introduzir novos processos, a equipe de teste contrata mais testadores, e o executivo diz que ele é o material pessoalmente melhorada

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top