Rumah > pembangunan bahagian belakang > Tutorial Python > Apakah aliran kerja automasi tugas berjadual baris arahan Python?

Apakah aliran kerja automasi tugas berjadual baris arahan Python?

王林
Lepaskan: 2023-05-13 17:01:11
ke hadapan
1658 orang telah melayarinya

1. Senario penggunaan

Laksanakan skrip jmeter dengan kerap dan laksanakan arahan baris arahan pada selang masa melalui pemasa python.

2. Pustaka

os, datetime, threading

(1) Gunakan pemasa threading.Timer() untuk melaksanakan tugas berjadual

Timer方法 说明
Timer(interval, function, args=None, kwargs=None) 创建定时器
cancel() 取消定时器
start() 使用线程方式执行
join(self, timeout=None) 等待线程执行结束

pemasa Pemahaman yang paling asas ialah pemasa boleh memulakan berbilang tugas yang dijadualkan. Tugas pemasa ini dilaksanakan secara tidak segerak, jadi tiada masalah menunggu pelaksanaan berurutan.

3. Jalankan skrip

baris arahan pelaksanaan jmeter

nama skrip jmeter -n -t.jmx -l nama laporan skrip.jtl

Penerangan parameter:

  • n Mod bukan GUI, mod baris arahan (menunjukkan berjalan dalam mod bukan GUI)

  • -t Fail ujian, fail skrip ujian jmeter untuk dijalankan (biasanya menggunakan laluan mutlak)

  • -l Fail hasil, fail untuk merekodkan keputusan

  • - h Dapatkan maklumat bantuan jmeter

  • -r Pelaksanaan jauh, mulakan pelayan jauh (mulakan semua ejen jauh yang dikonfigurasikan oleh hos jauh dalam mod bukan gui)

  • -R Pelaksanaan jauh, (mulakan mesin yang ditentukan (IP:PORT) sebagai mesin proksi dalam mod bukan gui)

  • -e Jana laporan ujian selepas ujian disediakan

  • -o Menentukan folder tempat laporan ujian dijanakan folder mesti kosong/tidak wujud

  • -H hos proksi (tetapkan yang digunakan oleh hos proksi jmeter)

  • -P Port proksi (tetapkan port proksi yang digunakan oleh jmeter)

  • -X Keluar (ujian berakhir dalam mod bukan gui Keluar pada masa)

4 Skrip

import os
from datetime import datetime
from threading import Timer
# 定时任务
def task():
    now = datetime.now()
    ts = now.strftime("%Y-%m-%d %H:%M:%S")
    print(datetime.now())
    a = os.system("jmeter -n -t /Users/liyinchi/workspace/功能测试/好慷/测试数据(压测脚本)/阶梯拼团多维表格20230418.jmx -l /Users/liyinchi/workspace/功能测试/好慷/测试数据(压测脚本)/阶梯拼团多维表格20230418-result.jtl")
    print(a)
# 执行器
def func():
    task()
    t = Timer(60*1, func)
    t.start()
func()
Salin selepas log masuk

hasil pelaksanaan:

<. .

Apakah aliran kerja automasi tugas berjadual baris arahan Python?Jadual modul penjadualan

Jadual modul penjadualan

Rangka kerja APScheduler

Saderi sistem pemesejan teragih melaksanakan tugas yang dijadualkan

Gunakan tugas yang dijadualkan yang disertakan dengan windows

6. Empat kaedah Menggunakan python untuk memanggil baris arahan

(1) os.system

import os
a=os.system("ls")
a
Salin selepas log masuk

akan memaparkan output semasa menjalankan program nilai pulangan a ialah kod keluar program

(2) os.popen

import os
a=os.popen("ls")
a.readline()
Salin selepas log masuk

Nilai pulangan ialah fail fail,

file.readlines() ialah nilai pulangan daripada arahan

(3) subproses

boleh digunakan dalam atur cara python Cipta subproses,

subprocess.call()

import subprocess
 subprocess.call([&#39;ls&#39;,&#39;-l&#39; ])
Salin selepas log masuk

di mana, ' ls’ sepadan dengan arahan yang dimasukkan pada baris arahan dan -l ialah operasi yang sepadan. Mengembalikan kod keluar program, serupa dengan os.system

subprocess.check_output(&#39;ls&#39;)
Salin selepas log masuk

Mengembalikan output standard, serupa dengan os.popen.

Anda juga boleh memanggil objek Popen untuk melakukan operasi. subproses

import subprocess
child = subprocess.Popen(&#39;ping -c4 blog.linuxeye.com&#39;,shell=True)
Salin selepas log masuk

Pada ketika ini, berbilang arahan boleh digunakan untuk mengawal subproses. Anda juga boleh menggunakan subprocess.PIPE untuk menyambungkan input dan output proses sendiri...

(4) arahan

import commands
 commands.getoutput(&#39;ls&#39;)
Salin selepas log masuk

kembali ke output program

Atas ialah kandungan terperinci Apakah aliran kerja automasi tugas berjadual baris arahan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan