diff --git a/atividade_testes_media.py b/atividade_testes_media.py new file mode 100644 index 0000000..08f50b2 --- /dev/null +++ b/atividade_testes_media.py @@ -0,0 +1,8 @@ +## TENTAR QUEBRAR O CÓDIGO DE MÉDIA ARITMÉTICA +## CALCULANDO A MEDIA DE UMA LISTA + +def calcular_media(numeros): + if not numeros: + return 0 + + return sum(numeros) / len(numeros) \ No newline at end of file diff --git a/exercicios/para-sala/testes.py b/exercicios/para-sala/testes.py new file mode 100644 index 0000000..37df94a --- /dev/null +++ b/exercicios/para-sala/testes.py @@ -0,0 +1,82 @@ +## ATIVIDADE SOBRE TESTES - SEMANA 07 - LAIS MEIRELES ALVES ## + +def soma(a,b): + return a + b + +def subtracao(a,b): + return a - b + +def multiplicacao(a,b): + return a * b + +def divisao(a,b): + return a / b + +import unittest + +class TesteSoma(unittest.TestCase): + def test_soma_positivos(self): #função que testa soma entre números positivos + self.assertEqual(soma(2,3),5) + + def test_soma_negativos(self): #função que testa soma entre números negativos + self.assertEqual(soma(-5,-3),-8) + + def test_soma_zero(self): #função que testa soma com zero + self.assertEqual(soma(0,0),0) + + def test_soma_pos_neg(self): #função que testa soma entre números positivos e negativos + self.assertEqual(soma(-8,4),-4) + +## Tarefa de casa vai ser completar essa calculadora com as quatro operações (subtração, multiplicação e divisão) de acordo com o TDD + +class TesteSubtracao(unittest.TestCase): + def test_subtracao(self): #função que testa subtração entre números positivos + self.assertEqual(subtracao(10,2),8) + + def test_subtracao_negativos(self): #função que testa subtração entre números negativos + self.assertEqual(subtracao(-2,-5),3) + + def test_subtracao_zero(self): #função que testa subtração com zero + self.assertEqual(subtracao(0,0),0) + + def test_subtracao_pos_neg(self): #função que testa subtração entre números positivos e negativos + self.assertEqual(subtracao(8,-2),10) + +class TesteMultiplicacao(unittest.TestCase): + def test_multiplicacao(self): #função que testa multiplição entre números positivos + self.assertEqual(multiplicacao(2,2),4) + + def test_multiplicacao_negativos(self): #função que testa multiplição entre números negativos + self.assertEqual(multiplicacao(-2,-2),4) + + def test_multiplicacao_zero(self): #função que testa multiplição com zero + self.assertEqual(multiplicacao(0,0),0) + + def test_multiplicacao_pos_neg(self): #função que testa multiplição entre números positivos e negativos + self.assertEqual(multiplicacao(5,-2),-10) + +class TesteDivisao(unittest.TestCase): + def test_divisao(self): #função que testa divisão entre números positivos + self.assertEqual(divisao(10,2),5) + + def test_divisao_neg(self): #função que testa divisão entre números negativos + self.assertEqual(divisao(-10,-2),5) + + def test_divisao_zero(self): #função que testa divisão com zero no numerador + self.assertEqual(divisao(0,2),0) + + def test_divisao_pos_neg(self): #função que testa divisão entre números positivos e negativos + self.assertEqual(divisao(-20,2),-10) + + def test_divisao_decimal(self): #função que testa divisão entre números inteiros e fracionados + self.assertEqual(divisao(5,0.1),50) + + # def test_divisao_dizima_decimal(self): + # self.assertEqual(divisao(10,3),3.3) + +if __name__ == "__main__": + unittest.main() + + + + diff --git a/test_CalculoMedia.py b/test_CalculoMedia.py new file mode 100644 index 0000000..b5cf1b0 --- /dev/null +++ b/test_CalculoMedia.py @@ -0,0 +1,23 @@ +import unittest +from atividade_testes_media import calcular_media + +class TestCalcularMedia(unittest.TestCase): + def test_media_lista_vazia(self): + resultado = calcular_media([]) + self.assertEqual(resultado, 0) + + def test_media_lista_zeros(self): #Teste que calcula a média no caso em que todos os números da lista são zero + resultado = calcular_media ([0,0,0]) + self.assertEqual(resultado, 0) + + def test_media_numeros_pares(self): + resultado = calcular_media([2,4,2,8,2]) #Teste que calcula a média no caso de números pares + self.assertEqual(resultado, 3.6) + + def test_media_float(self): #Teste que calcula a média no caso em que todos os números são números com casas decimais + resultado = calcular_media([1.5, 2.5, 8.5]) + self.assertAlmostEqual(resultado, 4.167, places=3) + +if __name__ == "__main__": + unittest.main() + \ No newline at end of file