main.py
1.87 KB
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# -*- coding: utf-8 -*-
# @Time : 2021/2/4 15:48
# @Author : Young Lee
# @Email : young_lee2017@163.com
import shutil
import os
import sys
import re
import subprocess
import winreg
# 检查python版本
python_version = re.search('\d+.\d+', sys.version).group()
if float(python_version) < 3.7:
print(f"The current version of Python is {python_version}, less than 3.7 !")
print("This project is based on the development of Python 3.9. It is recommended to install Python 3.9.")
sys.exit(0)
# 检查必备模块是否安装
pip_stdout = subprocess.Popen('pip list', stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True).stdout.readlines()
installed_modules = []
for i in pip_stdout:
i = str(i, encoding='utf-8')
i = i[:i.find(' ')]
installed_modules.append(i)
installed_modules = installed_modules[2:]
requirements = ['requests', 'selenium', 'pytest', 'allure-pytest']
need_install = [module for module in requirements if module not in installed_modules]
if need_install:
print(f'Please install those modules: {need_install}.')
sys.exit(0)
# 获取谷歌浏览器版本号
try:
# 从注册表中获得版本号
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, r'Software\Google\Chrome\BLBeacon')
chrome_version, type = winreg.QueryValueEx(key, 'version')
except WindowsError as e:
chrome_version = '未知'
# 生成环境配置文件
with open('report/environment.properties', 'w', encoding='utf-8') as f:
f.write('Browser=Chrome\n')
f.write(f'Browser.Version={chrome_version}\n')
f.write('Stand=Production\n')
f.write(f'Python.Version={python_version}')
if __name__ == '__main__':
import pytest
pytest.main(['-s', '-v', f'--alluredir=report/testing_report', '--clean-alluredir', './cases'])
shutil.copy('report/environment.properties', 'report/testing_report/')
os.system('allure serve report/testing_report')