一.使用unittest,依赖参数的问题:
import unittest #继承了unittest.TestCase 的类 函数不能引用其他类变量,所以如果我们需要先登录后操作,无法实现传递cookie。 class My(unittest.TestCase): def testa(self): print('testa') self.cookies = {'sign':'asdfasdfasdfsd'} def testb(self): print('testb') print(self.cookies) unittest.main() #会报错: #AttributeError: 'My' object has no attribute 'cookies' #正常的函数调用类变量可以成功调用 class My2(): def testa(self): print('testa') self.cookies = {'sign':'asdfasdfasdfsd'} def testb(self): print('testb') print(self.cookies) m = My2() m.testa() m.testb() #要使用unittest,又依赖不同函数之间的参数,可以用函数返回值来传递 class My(unittest.TestCase): def testa(self): #函数返回cookies,函数会运行两次,本身作为一个test运行一次,testb里面调用运行一次,可以把testa的函数名去掉test print('testa') cookies = {'sign':'asdfasdfasdfsd'} return cookies def testb(self): cookies = self.testa() print('testb') print(cookies) unittest.main()
二.Unittest自动化注册登录的例子