0

细节

对于更大的单元测试,我需要 Python 中的一种方法,它允许服务器/交换机/路由器调用 IP 并相应地响应测试。

我在这方面的想法:

  • 从 CSV 文件中读取 IP

  • 创建一个配置文件,我在其中输入所有相关数据。

设置

import testcore
from testcore.control.ssh import SSH
import unittest
from test import support
import logging
import os

测试设置

    def setUp(self):

    self.s = testcore.control.ssh.SSH(host='172.23.56.xxx',
                                  username='admin', password='admin', type_of_dut='ecos')
    logger.info('self.s = testcore.control.ssh.SSH')
    self.s.query_interactive=True


    if self.s.login():
        logger.info('login')
        q = self.s.query('account')
        logger.info('account')
        self.assertIsNotNone(q, 'missing answer')
        self.assertEqual('\r\n', q, 'unexpected result')
        logger.info('missing answer')
        logger.info('unexpected result')

        # switch to prompt account

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

        def tearDown(self):
        self.s.close()

所以我需要什么:

如何在 Python 中编写一个允许我为测试运行多个 IP 的方法?

这值得一个配置脚本吗?

在此示例中,您将看到我正在运行的测试。

def test_create_ntp_external1(self):
    logger_true.info('test_create_ntp_external1')
    if self.s.loggedin:
        logger.info('self.s.loggedin')
        q = self.s.query('time')
        logger.info('time')
        self.assertIsNotNone(q, 'missing answer')
        self.assertEqual('\r\n', q, 'unexpected result')
        logger.info('missing answer')
        logger.info('unexpected result')

        # switch to prompt account

        q = self.s.query('ntp 1 2610:20:6F15:15::27')
        logger.info('ntp 1 2610:20:6F15:15::27')
        print(q)
        q = self.s.query('exit')
        self.assertIsNotNone(q, 'missing answer')
        self.assertEqual('\r\n', q, 'unexpected result')
        logger.info('missing answer')
        logger.info('unexpected result')

        q = self.s.query('logout')
        logger.info('logout')

        import time
        print('Wait')
        time.sleep(2)
        print('True')
        logger_true.info('True')

通过上述设置调用各个测试,但一次仅根据一台设备调用。那么如何扩展它以便我可以同时调用各种 IP 呢?

4

0 回答 0