Структура
Моя структура имеет дело со следующими пунктами:
- Доступ к коммутатору и маршрутизатору через SSH и Pyserial
- Мои тесты контролируются через q = self.s.query
- Я все еще использую Python Unittest, планируется преобразование в PyTest
- Требования к этому испытанию следующие
Контрольные примеры должны проходить через полный тестовый запуск, а затем выводить полный вывод в файл после каждого тестового случая.
В принципе, конечно, вы можете суммировать все в конце, но задача так же желательна.
- Вывод из каждого теста в txt.file
- возможно на уровне отладки со всей информацией? Это возможно?
Несколько вопросов:
- Могу ли я перейти на PyTest напрямую?
- Как выглядит соответствующий пример?
- Могу ли я использовать существующие тестовые примеры непосредственно в Pytest?
- Я думаю об интеграции всех моих тестовых примеров в набор тестов (unittest или pytest).
Настройка
import testcore
from testcore.control.ssh import SSH
import unittest
from test import support
В моей настройке я делаю тест. Я контролирую как Pyserial, так и ssh. я использовал Python 3.7 в моей установке с Unitest.
Тестовые случаи работают отлично, и я хотел бы вывести полный прогресс каждого теста с тем, что приходит из подсказки, в текстовом файле. В каждом случае только для каждого теста, который также может быть обобщен в конце.
Вот соединение с коммутатором
Я уже просмотрел некоторую информацию, но почему-то не нашел сценарий, так как мог применить его специально на коммутаторе. Поэтому здесь очень благодарен за любую информацию.
В этом примере я подключаюсь к коммутатору / маршрутизатору
self.s = testcore.control.ssh.SSH(host='xxx.xx.xx.xxx', username='xxxx', password='xxxx')
Здесь вы можете увидеть полную структуру теста
def test_create_user(self):
#self-filfilling
assert 1
if self.s.login():
q = self.s.query('account')
#switch to prompt account
q = self.s.query('add 10 testuser1 testuser1 ')
q = self.s.query('add 11 testuser2 testuser2 ')
q = self.s.query('add 11 testuser3 testuser3 ')
q = self.s.query('add 11 testuser4 testuser4 ')
q = self.s.query('add 11 testuser5 testuser5 ')
q = self.s.query('add 11 testuser6 testuser6 ')
q = self.s.query('add 11 testuser7 testuser7 ')
q = self.s.query('add 11 testuser8 testuser8 ')
q = self.s.query('add 11 testuser9 testuser9 ')
q = self.s.query('add 11 testuser10 testuser10 ')
import time
print('Wait')
time.sleep(3)
# create testadmins privileg 15
q = self.s.query('add 15 testadmin1 testadmin1 ')
q = self.s.query('add 15 testadmin2 testadmin2 ')
q = self.s.query('add 15 testadmin3 testadmin3 ')
q = self.s.query('add 15 testadmin4 testadmin4 ')
q = self.s.query('add 15 testadmin5 testadmin5 ')
import time
print('Wait')
time.sleep(3)
# more testadmins
q = self.s.query('add 15 testadmin1 testadmin6 ')
q = self.s.query('add 15 testadmin2 testadmin7 ')
q = self.s.query('add 15 testadmin3 testadmin8 ')
q = self.s.query('add 15 testadmin4 testadmin9 ')
q = self.s.query('add 15 testadmin1 testadmin11 ')
q = self.s.query('add 15 testadmin2 testadmin12 ')
q = self.s.query('add 15 testadmin3 testadmin13 ')
q = self.s.query('add 15 testadmin4 testadmin14 ')
q = self.s.query('add 15 testadmin5 testadmin15 ')
import time
print('Wait')
time.sleep(10)
def test_delete_user(self):
if self.s.login():
q = self.s.query('account')
q = self.s.query('delete testuser1 ')
q = self.s.query('delete testuser2 ')
q = self.s.query('delete testuser3 ')
q = self.s.query('delete testuser4 ')
q = self.s.query('delete testuser5 ')
q = self.s.query('delete testuser6 ')
q = self.s.query('delete testuser7 ')
q = self.s.query('delete testuser8 ')
q = self.s.query('delete testuser9 ')
q = self.s.query('delete testuser10 ')
import time
print('Wait')
time.sleep(10)
# create testadmins privileg 15
q = self.s.query('delete testadmin1 ')
q = self.s.query('delete testadmin2 ')
q = self.s.query('delete testadmin3 ')
q = self.s.query('delete testadmin4 ')
q = self.s.query('delete testadmin5 ')
import time
print('Wait')
time.sleep(10)