Python:从Unitest(lib)到pytest.Move不会出现问题吗?

时间:2018-08-30 09:59:54

标签: python python-3.x python-2.7 unit-testing python-unittest

任务

我必须将一些测试从unittest(库)更改为Pytest,不幸的是,我必须与我的测试范围有关,在这里我认为我不能接管所有功能。随着研究的到来,我只是无法继续前进。

我的设置涉及基于CLI的测试用例的测试用例。

  1. 使用SSH和Pyserial登录到交换机
  2. 在提示环境中运行查询
  3. 测试完成后,应将测试过程写入文本文件

询问:

  1. 我可以使用当前与Pytest如此同义的来源吗?
  2. 我必须重建什么才能继续使用核心组件(见上文)?
  3. 哪里有Pytest和Router / Switch Test的良好示例?全面重塑几千个测试用例有多大问题?
  4. 一个非常重要的一点是,我还有其他测试的测试套件吗?如何在Pytest中实施现有的Testuit?

设置:

Python 3.7,单元测试

import unittest
from test import support
import paramiko

我在这堂课

class SwitchAccount(unittest.TestCase):  # This class inherits unittest.TestCase

与交换机的连接

def setUp(self):
    self.s = testcore.control.ssh.SSH(host='xxx.xx.xxx.250', username='admin', password='admin')

    self.s.query_interactive = True

在交换机上进行首次测试

def test_change_Enforce_Enable(self):

    if self.s.login():
        q = self.s.query('account')

        # switch to prompt account

        q = self.s.query('enforce-Password-Rules yes')

我在这里开始测试服

    # intial test
    # class Test_User(unittest.TestCase):



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)


    # def test_user_password(self):

    # if self.s.login():

    # q = self.s.query('add 15 ß ß')
    # import time
    # print('Wait')
    # time.sleep(3)
    # print('it´s not possible ')


def test_creat_user_nopassword(self):

    if self.s.login():
        q = self.s.query('add 15 Testusernopassword ')
        import time
        print('Wait')
        time.sleep(3)
        print('it´s not possible to create a user admin')


def test_creat_admin(self):

    if self.s.login():
        q = self.s.query('add 15 admin admin')
        print('it´s not possible to create a user admin')
        import time
        print('Wait')
        time.sleep(3)


def test_split(self):
    # code here
    pass

def tearDown(self):
    # your code to clean or close the connection
    pass


if __name__ == '__main__':
    unittest.main(verbosity=3)
    unittest.main(warnings='ignore')
    log_file = 'log_file.txt'
    f = open(log_file, "w")
    runner = unittest.TextTestRunner()
    runner.run(suite())

0 个答案:

没有答案