#python #python-unittest
#python #python-unittest
Вопрос:
Я написал приведенный ниже код, чтобы протестировать базовый пример unittest для обучения. Когда я выполняю приведенный ниже код. Я не получаю никаких выходных данных. Может кто-нибудь сообщить мне, в чем может быть проблема.
import unittest
class test123(unittest.TestCase):
def test1(self):
print "test1"
if __name__ == "main":
x=test123()
x.test1()
unittest.main()
Комментарии:
1. Это должно быть
if __name__ == "__main__":
, и все, что вам нужно сделать, это вызватьunittest.main()
. Вам не нужно создавать экземпляр вашего класса. Онunittest.main()
обрабатывает все за вас. Пересмотрите документацию.
Ответ №1:
ваш код должен выглядеть следующим образом:
import unittest
class test123(unittest.TestCase):
def test1(self):
print "test1"
if __name__ == "__main__":
unittest.main()
следовательно, это name и main с двумя символами подчеркивания в начале и конце, когда вы измените его и запустите с вашим кодом, вы получите сообщение об ошибке при использовании:
x = test123()
x.test1()
ValueError: no such test method in <class '__main__.test123'>: runTest
Ответ №2:
В вашем тесте вам нужны две вещи:
- Определите свою тестовую функцию с помощью ‘test’
- Вам нужен ожидаемый результат
test.py
import unittest
class TestHello(unittest.TestCase):
def test_hello(self): # Your test function usually need define her name with test
str_hello = 'hello'
self.assertEqual(str_hello, 'hello') # you need return a expected result
def test_split(self):
str_hello = 'hello world'
self.assertEqual(str_hello.split(), ['hello', 'world'])
if __name__ == '__main__':
unittest.main()
для выполнения используйте:
python -m unittest test
out:
stackoverflow$ python -m unittest test
..
----------------------------------------------------------------------
Ran 2 tests in 0.000s
OK
Комментарии:
1. импорт unittest из selenium импортируйте webdriver из selenium. webdriver.common. ключи импортируют ключи класса weblogin(unittest. TestCase): определение open_fb(self): драйвер = webdriver. Firefox() driver.get(» facebook.com » ) email_field=driver.find_element_by_id(«электронная почта») email_field.send_keys(«test123@gmail.com «) pass_field=driver.find_element_by_id(«pass») pass_field.send_keys(«test123») pass_field.send_keys(Ключи. ВОЗВРАТ) time.sleep(5) если name == ‘ main ‘: unittest.main()