python-br / pythontest-estudos

Repositório para estudos/prática de testes (TDD)
3 stars 2 forks source link

Test Random #4

Open rg3915 opened 10 years ago

rg3915 commented 10 years ago

Agora alguém se prontifica a passar o test_random? Objetivo: eu quero ter certeza que o intervalo escolhido está entre 15 e 99.

VictorSouzas commented 10 years ago

so utilizar funcao range() que ela gera a lista de numeros nescessaria

rg3915 commented 10 years ago

@VictorSouzas eu dei um Merge no seu código, mas ainda não é isso. Eu quero escolher um número entre 15 e 99. Mas vc gerou uma lista. Eu só quero um neste intervalo.

alexandre commented 10 years ago

@rg3915 serve?:

lista = [x for x in range(15, 99)]
import random
random.choice(lista)

[ ]'s

rg3915 commented 10 years ago

Não sei, agora eu fiquei na dúvida...

VictorSouzas commented 10 years ago

e assim https://gist.github.com/VictorSouzas/167c124d031b87d25441

rg3915 commented 10 years ago

Eu achei este exemplo http://programmers.stackexchange.com/questions/225523/what-are-good-unit-tests-to-cover-the-use-case-of-rolling-a-die , um tanto sofisticado, mas acho que serviu melhor. Agora será que dá pra simplificar ele?

alexandre commented 10 years ago

@rg3915 o que eu comentei não é simples o bastante?:

import random
lista = [valor for valor in range(15, 99) # -> gera uma lista com as possiveis posições
escolha = random.choice(lista) # escolha aleatória de um valor na lista....

IMHO: o mais simples para práticar testes é escolher um problema (e.g. simule um caixa eletrônico e tente devolver um valor com o menor numero de notas possivel) e praticar TDD c/ ele...

[ ]'s

rg3915 commented 10 years ago

Desculpa @alexandre mas acho que usar random.randint(15,99) seria mais simples, até porque eu queria apenas um número, e não uma lista de números. Eu adaptei o código do link que eu mencionei antes. Será que agora ficou bom?

rg3915 commented 10 years ago

Esse foi o mais simples que eu consegui: https://github.com/python-br/pythontest-estudos/commit/2d18a5c314b41c42ba1e8a0bdf6fd92dbe3146f5 pode ser?

alexandre commented 10 years ago

ficou bom. =]