Jump to content
Sign in to follow this  
zecapistolas

Testes de Software - Dissertação

Recommended Posts

zecapistolas

Viva Pessoal,

Preparo-me para entrar no final da minha vida de estudante universitário.... (tendo em conta o mercado, nem sei se é bom terminar já ou não)

Agora falta então realizar a minha tese de mestrado!  🤔 Na faculdade onde ando (acho que não vale a pena estar aqui com propagadas) ou podemos submeter um tema para a dissertação ou candidatar a um tema proposto por um professor ou empresa.  :cheesygrin:

E eu gostaria de realizar a dissertação com um tema proposto por mim, e por isso, gostaria de abrir aqui um espaço para discussão de ideias, etc....  :D

---8<---

A minha ideia é sobre Testes de Software. Gosto bastante da área e da importância que este tema tem no desenvolvimento de software de alta qualidade.

Já tive um misto de ideia, mas nada de concreto.... Existem Testes Unitários, Testes de Mutação, Testes de Integração, etc etc .... e depois existem N^N ferramentas para N linguagens de programação, umas melhores outras piores, uma pagas outras open-source....  :bored:

O facto de o processo não ser "directo", isto porque os developers têm que saber que ferramentas utilizar para o teste e linguagem em causa, pode levar o developer a descartar a etapa de construção dos testes. Não sei como é no actual Microsoft Visual Studio (ouvi dizer que agora está mais avançado), mas no Eclipse existem alguns plugins que se podem instalar e que ajudam o developer a criar e executar os testes no próprio IDE, como por exemplo o Junit.

No entanto será um plugin para cada tipo de teste....  👎  👎

E que tal uniformizar todo teste ambiente?  🤔  Ou até outra cena que ainda não me ocorreu?  🤔

Outra parte que gostaria de meter ao barulho é, todo este assunto de testes ser direccionado para o desenvolvimento de Sistemas Operativos ou módulos para este ou até mesmo, por exemplo, ajudar o responsáveis do Projecto Debian a testar mais facilmente os novos pacotes que chegam aos repositórios....

Ideias, ideias, ideias, ideias.....  :cheesygrin:

Share this post


Link to post
Share on other sites
zecapistolas

Então?!  😎

Não existe ninguém aqui no fórum que faça TDD? Deixem a vossa opinião sobre TDD, Testes em geral, etc...

cumps  ;)

Share this post


Link to post
Share on other sites
Baderous
O facto de o processo não ser "directo", isto porque os developers têm que saber que ferramentas utilizar para o teste e linguagem em causa, pode levar o developer a descartar a etapa de construção dos testes.

Eu acho esta justificação um bocado fraca. Ninguém descarta os testes por ter de usar uma ferramenta diferente da de escrita de código, digo eu. Também se usam ferramentas diferentes para desenhar diagramas, escrever documentação, etc.

Share this post


Link to post
Share on other sites
Dkid

Zecapistolas em perl além de ser um teste para cada fase do script (modulo) tens de ser tu a escrevê-lo.

http://search.cpan.org/~mschwern/Test-Simple-0.96/lib/Test/More.pm

http://search.cpan.org/~andya/Test-Harness-3.22/lib/Test/Harness.pm

Em ruby também fazem testes de unidade

http://en.wikibooks.org/wiki/Ruby_Programming/Unit_testing

Onde estava a trabalhar, explicaram-me que realizavam os testes para saber se as novas coisas que tinham criado entravam em conflito com os modulos já existentes (estou a falar em perl)


I promise that I will not change the PATH variable again other than:PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

Share this post


Link to post
Share on other sites
Knitter

O motivo porque os programadores não usam testes vai muito além do simples facto de se ter de usar outra ferramenta. Para quem usa o NetBeans IDE, e quase todos os grande IDEs fazem o mesmo, os testes estão todos integrados nas ferramentas de trabalho, seja JUnit seja de interface, não é necessário recorrer a outras ferramentas externas.

Mas a variedade de tipos de teste e de objectivos de testes não permite que tudo seja criado na mesma ferramenta, muito menos pelas mesmas pessoas, por exemplo, testes de aceitação ou testes de usabilidade não se enquadram no trabalho do programador, e são na mesma testes que irão afectar a forma como o produto final é lançado e o processo de desenvolvimento.

O processo nunca será "directo" uma vez que não é a única coisa que é feita no desenvolvimento de software, é apenas uma parte de um processo bem mais amplo e tem de se conjugar com os restantes processos de forma a que o resultado final seja bom, quer no produto criado quer na forma como as pessoas envolvidas trabalham. Acho muito redutor olhar apenas para a parte dos testes e ver todo o processo como algo independente.

Agora ideias tenho muitas, mas se estamos a falar de uma dissertação, não é suposto seres tu a ter as ideias e trabalhar sobre elas? Começar pelo mais simples: estudar o que outros já fizeram na área. Daí é procurar falhas ou pontos sobre os quais queiras investigar e avançar.

Share this post


Link to post
Share on other sites
zecapistolas

Zecapistolas em perl além de ser um teste para cada fase do script (modulo) tens de ser tu a escrevê-lo.

http://search.cpan.org/~mschwern/Test-Simple-0.96/lib/Test/More.pm

http://search.cpan.org/~andya/Test-Harness-3.22/lib/Test/Harness.pm

Em ruby também fazem testes de unidade

http://en.wikibooks.org/wiki/Ruby_Programming/Unit_testing

Onde estava a trabalhar, explicaram-me que realizavam os testes para saber se as novas coisas que tinham criado entravam em conflito com os modulos já existentes (estou a falar em perl)

Vou averiguar isso, obrigado pela dica....

Agora ideias tenho muitas, mas se estamos a falar de uma dissertação, não é suposto seres tu a ter as ideias e trabalhar sobre elas? Começar pelo mais simples: estudar o que outros já fizeram na área. Daí é procurar falhas ou pontos sobre os quais queiras investigar e avançar.

Sim, terei que ser eu a ter ideias e trabalhar sobre elas... Só vim para o fórum porque tenho as minhas ideias muito nubladas e também porque gostava de ouvir os programadores e realmente verificar o que faz falta ou o que falha na altura dos testes....

cumps  ;)

Share this post


Link to post
Share on other sites
Knitter

Não acredito que este seja o local ideal para averiguares o que falta ou falha nos testes, com sorte encontras uma meia-dúzia que conhece os diferentes testes, pelo menos mais um pouco do que saber genericamente o que são testes unitários, e isso não ter servirá de grande amostra ;)

Share this post


Link to post
Share on other sites
M6

Posso dar-te algum feedback da minha experiência profissional.

Existem vários tipos de teste, como bem referiste,  mas tipicamente apenas são feitos testes, mais ou menos superificias, sobre o produto acabado. Por exemplo raríssimo haver testes unitários. Normalmente alguém descreve um doc em Word ou Excel com uns casos que se devem testar. Depois alguém executa manualmente esses casos e quando há erro abre uma ocorrência num documento Excel ou, quando a coisa é mais evoluida, numa ferramenta de bug tracking.

Por exemplo o custo de desenvolver e manter os testes é idêntico ao custo de desenvolvimento e manutenção de uma aplicação.

Isto parece-me mais visivel quando se usam ferramentas de teste visuais para testar funcionalidades e regras de negócio.

Outra coisa é o trace dos testes para os requisitos e/ou casos de uso. Quando um teste é definido ele remete a um requisito e/ou caso de uso. Nem sempre essa ligação é clara nem explícita.

Uma coisa interessante de avaliar é precisamente o custo/beneficio dos testes unitários. Por exemplo, tenho aplicações desktop onde o custo é baixo e o benefício é alto. Mas tenho aplicações J2EE onde o custo é tão alto e o benefício é apenas médio ou até baixo.

Obviamente que estas classificações são subjectivas porque saem da minha percepção e não de nenhuma quantificação (standardizada ou não).


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.