Python单元测试:断言寻求负面测试案例的信息

时间:2018-09-10 12:59:17

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

我的情况有些复杂。我进行了一些测试,检查路由器和交换机上的某些登录过程。

设置:

import testcore (package that used Paramiko)
from testcore.control.ssh import SSH
import unittest
from test import support
import logging
import os

您可以在这里看到我的一个测试用例:

def test_create_user_ENFORCE_2(self):

    if self.s.login():

        q=self.s.query('account')
        self.assertIsNotNone(q, 'missing answer')
        #self.assertEqual('\r\n', q, 'unexpected result')


        # switch to prompt account

        q=self.s.query('add 15 testuser_ENFORCE_P1 ')
        self.assertIsNotNone(q, 'missing answer')
        #self.assertEqual('\r\n', q, 'unexpected result')
        self.assertTrue('class str')
        #self.assertTrue('The Password does not comply' != '\r\n\rERROR! The Password does not comply[240 chars]ar\n')
        #self.assertIs : True('The Password does not comply', q, 'add 15 testuser_ENFORCE_P1')
        print(type(q))
        q=self.s.query('logout')
        self.s.close()

测试正常进行。他在相应的路由器/交换机上开始登录,并在提示符下执行命令。

问题是这样的:

  • 测试应检查我是否特殊字符可以用作密码。如果是这样,则测试失败。积极的考验是我无法创建包含特殊字符的帐户。

当前问题之后的唯一帮助,我在路由器/交换机上收到以下消息

  

“密码不符合”!='\ r \ n \ r错误!密码不正确   遵守[240个字符] ar \ n'

我怎么以及用哪个断言能做最多​​?

1 个答案:

答案 0 :(得分:0)

我已经解决了问题,在此请参考以下内容:

import unittest


class TestClass(unittest.TestCase):
    def test_me(self):
        self.assertIn('me', 'you and me')
        self.assertIn('you', 'you and me')
        self.assertIn('and', 'you and me')
        self.assertNotIn('we', 'you and me')
        self.assertIn('we', 'you and me')


if __name__ == '__main__':
    unittest.main()