ich nicht sicher bin, ob ich etwas ganz offensichtlich fehlt, aber jedes Mal, wenn ich rufe unittest.main() liest meine Kommandozeilen-Ausgabe aus:Gibt es einen Grund, warum unitest hier nicht funktioniert?
Ran 0 tests in 0.000s
Es sollte sagen, dass ich zwei Tests ausgeführt haben aber angesichts der Code hier:
import unittest
from Chap11Lesson2 import Employee
class EmployeeTest(unittest.TestCase):
def setUp(self):
"""Setting up a variable for use in the test methods"""
self.employee1 = Employee("Lucas", "Grillos", 20000)
def give_default_raise(self):
"""Testing to see if 5000 is added properly"""
money = 25000
self.employee1.give_raise()
self.assertEqual(self.employee1.salary, money)
def give_custom_raise(self):
"""Testing to see if 10000 is raised properly"""
money = 35000
self.employee1.give_raise(10000)
self.assertEqual(self.employee1.salary, money)
unittest.main()
hier ist die Klasse, die es Tests von:
class Employee():
def __init__(self, first_name, last_name, salary):
self.first_name = first_name
self.last_name = last_name
self.salary = salary
def give_raise(self, salary_raise = None):
if salary_raise:
self.salary = self.salary + salary_raise
else:
self.salary = self.salary + 5000
def print_salary(self):
print(self.salary)
ich habe noch nie ein Problem wie dieses hatte, so bin ich nicht sicher, was zu tun ist. Ich lerne Python von Eric Matthes 'Python Crash Course, der 2016er Ausgabe, wenn das irgendeine Referenz ist. Dieses Problem ist in den anderen Lektionen, die ich daraus gemacht habe, nicht aufgetaucht.
Hier ist, was ich versucht habe:
Ich habe versucht, um mit dem give_raise (self, salary_raise = None) Methode Hantieren und Ändern auf, wie das in dem Fall habe ich etwas nach oben innen dort versaut hatte, aber ich Ich verstehe nicht, warum das die Tests beeinflussen würde.
Ich habe versucht, es zu löschen und es noch einmal umzuschreiben (da es nicht viel Code ist) in der Hoffnung, dass ich gerade etwas Dummes vergessen habe, aber wenn ich es getan habe, dann habe ich es ein zweites Mal vergessen.
Entschuldigung im Voraus, wenn es eine sehr einfache Lösung ist, und Entschuldigung, wenn etwas mit der Art, wie ich diese Frage formatiert habe, nicht stimmt, oder wenn dies kein Forum für Fragen wie diese ist - dies ist mein erster Beitrag Hier.
Ich entschuldige mich, dass ich meinen Funktionen keine Docstrings hinzugefügt habe, um zu erklären, was sie tun. – LGrillos
Setzen Sie Ihre Testmethoden mit "Test" voran, damit sie ausgeführt werden. –