python 定时任务 web管理_Selenium+WebDriver+Python 定时控制任务
為了更對(duì)得起“自動(dòng)化測(cè)試”的名號(hào),我們可以設(shè)置定時(shí)任務(wù),使我們自動(dòng)化腳本在某個(gè)時(shí)間點(diǎn)自動(dòng)運(yùn)行腳本,這樣就可以讓測(cè)試在夜間進(jìn)行,減少了時(shí)間成本。通過程序來(lái)控制test case在什么時(shí)候執(zhí)行是最簡(jiǎn)單的方式了。
借用http://blog.csdn.net/liujingqiu/article/details/50518776關(guān)于HTMLTestResult的腳本,然后寫SetTime_AutoRun.py來(lái)實(shí)現(xiàn)定時(shí)執(zhí)行任務(wù)。
SetTime_AutoRun.py腳本如下:
import unittest
import HTMLTestRunner
import os
import time
listaa=‘C:\\Python34\\test_case‘ #設(shè)置腳本所在的絕對(duì)路徑
def createsuitel():
testunit=unittest.TestSuite()
discover=unittest.defaultTestLoader.discover(listaa, pattern=‘UnitTestHtml_*.py‘, top_level_dir=None)
for test_suite in discover:
for test_case in test_suite:
testunit.addTests(test_case)
print (testunit)
return testunit
alltestnames=createsuitel()
#now=time.strftime(‘%Y-%m-%M-%H_%M_%S‘,time.localtime(time.time())) #時(shí)間格式有錯(cuò)誤
now=time.strftime(‘%Y-%m-%d-%H_%M_%S‘,time.localtime(time.time())) #設(shè)置時(shí)間格式
fp = open(now+‘result.html‘,‘wb‘)
runner=HTMLTestRunner.HTMLTestRunner(stream=fp,title=‘test result‘,description=u‘result:‘) #調(diào)用HTMLRestRunner
k=1
while k<2:
timing=time.strftime(‘%H_%M‘,time.localtime(time.time()))
if timing == ‘17_35‘: #17_35指17:35,這個(gè)可以根據(jù)需要設(shè)定時(shí)間
print (‘start to run scripts‘)
runner.run(alltestnames) #運(yùn)行所有的case
print (‘Finish runing scripts‘)
break
else:
time.sleep(3)
print (timing)
fp.close()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
F5,運(yùn)行得到:
1)pythonIDLE 如圖所示:
?
從上圖可以看到17_34還沒有到我們?cè)O(shè)置的時(shí)間點(diǎn)17_35,于是會(huì)等待。
2)C:\Python34 路徑下,有Result.html如圖:
2016-03-34-17_34_59result.html即為我們這次的測(cè)試result.html
3)打開上述文件得到如圖所示:
上面的三個(gè)結(jié)果截圖,即為運(yùn)行后得到的結(jié)果。這里偷懶, 其中使用pattern=’UnitTestHtml_*.py’, 采用的是不同文件名的.py腳本,但是里面內(nèi)容是相同的,于是同樣的,得到了6個(gè)case的結(jié)果。
附:
1.pattern=’UnitTestHtml_*.py’ 表示在當(dāng)前目錄下,文件名為UnitTestHtml_*.py的腳本都會(huì)被批量執(zhí)行。
在實(shí)施過程中,遇到的issue:
1.第一次輸出,在C:\Python34目錄下的 2016-03-34-17_34_59result.html的文件大小為0kb,這是因?yàn)橥浖由蟜p.close()了。
2.以上腳本還有點(diǎn)小問題我們得到的2016-03-34-17_34_59result.html文件名,可以看到文件名中的設(shè)置時(shí)間沒有正確。根據(jù)以下的修改,再次運(yùn)行,顯示正確。
腳本改動(dòng)如下:
以前的腳本:
now=time.strftime(‘%Y-%m-%M-%H_%M_%S‘,time.localtime(time.time()))
改動(dòng)后的腳本:
now=time.strftime(‘%Y-%m-%d-%H_%M_%S‘,time.localtime(time.time())) #設(shè)置時(shí)間格式
1
2
3
4
1
2
3
4
就這樣使用腳本完成了定時(shí)控制任務(wù),實(shí)現(xiàn)定時(shí)自動(dòng)化測(cè)試。
原文:http://www.cnblogs.com/my-blogs-for-everone/p/6058379.html
總結(jié)
以上是生活随笔為你收集整理的python 定时任务 web管理_Selenium+WebDriver+Python 定时控制任务的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux dump_stack
- 下一篇: c语言 银行叫号系统,【分享】C语言 银