说明:将测试用例全部加到suite测试套件,可以至少2种方法按照自己喜欢的方式来,在这里使用了discover()方法
#!python3.6
# coding=utf-8
import os
import sys
base_dir=os.path.dirname(os.path.abspath(__file__))
test_dir=os.path.split(base_dir)[0]
sys.path.append(test_dir)
from case.test_Login import LoginTest
import unittest
class LoginSuite():
# 一条一条加载case用例
def Login(self):
# 构建测试集
suite = unittest.TestSuite()
suite.addTest(LoginTest('test_login1'))
suite.addTest(LoginTest('test_login2'))
suite.addTest(LoginTest('test_login3'))
suite.addTest(LoginTest('test_login4'))
suite.addTest(LoginTest('test_login5'))
suite.addTest(LoginTest('test_login6'))
return suite
# 通过测试用例类添加到测试套件中
def Login_class(self):
# 构建测试集
suite = unittest.TestSuite()
loader=unittest.TestLoader()
suite.addTest(loader.loadTestsFromTestCase(LoginTest))
return suite
# discover()会自动根据测试目录匹配查找测试用例文件(test*.py)
def Login_discover(self):
test_dir=os.path.split(base_dir)[0]
test_dir = os.path.join(test_dir, 'case')
discover = unittest.defaultTestLoader.discover(test_dir, pattern='test*.py')
return discover
if __name__=="__main__":
unittest.main()
test测试文件:
1.element—页面元素与脚本分离(页面中的元素):redmine_locators.py (不变)
2. page—元素操作与脚本分离(页面类操作):login_page.py (不变)
3、case—功能脚本操作(用例脚本):test_Login.py
4、suite—将测试用例全部加到suite测试套件:suite_Login.py
5、report—测试报告封装方法:report_Login.py
6、email—邮件发送邮箱方法:send_mail.py
7、根目录项目—执行用例脚本:run.py
8、异常处理加入txt文件,并截图的功能:log.py