selenium自动化框架介绍------unittest版本
首先说下unittest的两个问题:1.未实现失败重跑 2.未实现远程的分布式(即多线程呼起多台远程计算机,并行进行用例的执行),
为什么要使用框架: 比较方便,只需要写用例就行,而不用考虑结构.还有的好处就是可以实现setup和teardown,即用例的初始化和结束的时候的操作.
大概长个样子:
其中,doc文件夹放一些文档,models文档放的一些公共模块,report模块放的是生成的html报告,screenshot放置截图文件,testcase放置编写的用例文件.
执行的时候只需要执行run.py文件就行
import unittest
import time
from testcase import Demo1
from testcase.Demo1 import Demo
from models.HTMLTestRunner import HTMLTestRunner
if __name__ == "__main__":
suite = unittest.TestSuite()
suite.addTest(Demo("test_case1"))
suite.addTest(Demo("test_case2"))
suite.addTest(Demo("test_case3"))
now = time.strftime("%Y-%m-%d %H_%M_%S")
filename = './report/' + now + 'result.html'
fp = open(filename, 'wb')
runner = HTMLTestRunner(stream=fp,
title="测试用例",
description="用例执行情况报告")
runner.run(suite)
time.sleep(1)
fp.close()