<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
		<id>https://1984.lsi.us.es/wiki-egc/index.php?action=history&amp;feed=atom&amp;title=Pruebas_del_modelo_23-24</id>
		<title>Pruebas del modelo 23-24 - Historial de revisiones</title>
		<link rel="self" type="application/atom+xml" href="https://1984.lsi.us.es/wiki-egc/index.php?action=history&amp;feed=atom&amp;title=Pruebas_del_modelo_23-24"/>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-egc/index.php?title=Pruebas_del_modelo_23-24&amp;action=history"/>
		<updated>2026-04-13T02:50:52Z</updated>
		<subtitle>Historial de revisiones para esta página en el wiki</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>https://1984.lsi.us.es/wiki-egc/index.php?title=Pruebas_del_modelo_23-24&amp;diff=9604&amp;oldid=prev</id>
		<title>Brgutierrez: Página creada con «'''EJERCICIO 4: TEST DE MODELO SIN PERSISTENCIA'''  Gracias al análisis de cobertura, podemos comprobar que en ''voting/models.py'' hay 4 líneas que nunca son ejecutadas...»</title>
		<link rel="alternate" type="text/html" href="https://1984.lsi.us.es/wiki-egc/index.php?title=Pruebas_del_modelo_23-24&amp;diff=9604&amp;oldid=prev"/>
				<updated>2023-10-01T11:51:27Z</updated>
		
		<summary type="html">&lt;p&gt;Página creada con «&amp;#039;&amp;#039;&amp;#039;EJERCICIO 4: TEST DE MODELO SIN PERSISTENCIA&amp;#039;&amp;#039;&amp;#039;  Gracias al análisis de cobertura, podemos comprobar que en &amp;#039;&amp;#039;voting/models.py&amp;#039;&amp;#039; hay 4 líneas que nunca son ejecutadas...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''EJERCICIO 4: TEST DE MODELO SIN PERSISTENCIA'''&lt;br /&gt;
&lt;br /&gt;
Gracias al análisis de cobertura, podemos comprobar que en ''voting/models.py'' hay 4 líneas que nunca son ejecutadas por ninguno de los tests legacy que tenemos. Tres de estas líneas, se corresponden con métodos __str__. Para poder mejorar la cobertura, vamos a añadir un test con este propósito en ''voting/test.py''.&lt;br /&gt;
‎&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def test_to_string(self):&lt;br /&gt;
        #Crea un objeto votacion&lt;br /&gt;
        v = self.create_voting()&lt;br /&gt;
        #Verifica que el nombre de la votacion es test voting&lt;br /&gt;
        self.assertEquals(str(v),&amp;quot;test voting&amp;quot;)&lt;br /&gt;
        #Verifica que la descripcion de la pregunta sea test question&lt;br /&gt;
        self.assertEquals(str(v.question),&amp;quot;test question&amp;quot;)&lt;br /&gt;
        #Verifica que la primera opcion es option1 (2)&lt;br /&gt;
        self.assertEquals(str(v.question.options.all()[0]),&amp;quot;option 1 (2)&amp;quot;)&lt;br /&gt;
‎&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Si volvemos a lanzar el análisis de cobertura, podremos comprobar cómo ahora ha aumentado ligeramente en este módulo.&lt;br /&gt;
&lt;br /&gt;
'''EJERCICIO 5: TEST DE MODELO CON PERSISTENCIA'''&lt;br /&gt;
&lt;br /&gt;
Como puede observarse, en este nuevo caso de prueba, no verificamos ninguna acción CRUD, que también han quedado sin cubrir. Vamos ahora a añadir un nuevo test que sí lo haga: crearemos una votación sencilla con una pregunta y dos opciones de respuesta. Tras esto, comprobaremos que se haya almacenado correctamente en la base de datos. &lt;br /&gt;
&lt;br /&gt;
Para ello, crearemos una nueva clase dentro de ''voting/tests.py'':&lt;br /&gt;
&lt;br /&gt;
‎&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
class VotingModelTestCase(BaseTestCase):&lt;br /&gt;
    def setUp(self):&lt;br /&gt;
        q = Question(desc='Descripcion')&lt;br /&gt;
        q.save()&lt;br /&gt;
        &lt;br /&gt;
        opt1 = QuestionOption(question=q, option='opcion 1')&lt;br /&gt;
        opt1.save()&lt;br /&gt;
        opt1 = QuestionOption(question=q, option='opcion 2')&lt;br /&gt;
        opt1.save()&lt;br /&gt;
&lt;br /&gt;
        self.v = Voting(name='Votacion', question=q)&lt;br /&gt;
        self.v.save()&lt;br /&gt;
        super().setUp()&lt;br /&gt;
&lt;br /&gt;
    def tearDown(self):&lt;br /&gt;
        super().tearDown()&lt;br /&gt;
        self.v = None&lt;br /&gt;
&lt;br /&gt;
    def testExist(self):&lt;br /&gt;
        v=Voting.objects.get(name='Votacion')&lt;br /&gt;
        self.assertEquals(v.question.options.all()[0].option, &amp;quot;opcion 1&amp;quot;)&lt;br /&gt;
‎&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Brgutierrez</name></author>	</entry>

	</feed>