我想创造一个设置.py我的python3.5.2项目的文件,并运行到与非Python文件有关的问题。你知道吗
下面是我的粗略设置:
/
--/seleniumspec
-- cli.py
--/plugins
-- html_reporter.py
-- template.html
-- junit_reporter.py
-- template.xml
和setup.py
from setuptools import setup, find_packages
setup(
name="seleniumspec",
version="0.1.0",
description="A test framework written for selenium",
keywords="selenium test testing",
packages=find_packages(exclude=['dist', 'output', 'seleniumspec.egg-info', 'specs']),
install_requires=["selenium", 'Jinja2'],
entry_points={
'console_scripts': [
'seleniumspec=seleniumspec:cli.main'
]
},
package_data={
'': ['*template.xml', '*template.html']
}
)
我的清单.in文件:
include *template.html
include *template.xml
以及JUnit reporter,了解更多内容:
import os
import codecs
from typing import cast
import pkgutil
import jinja2
from seleniumspec.plugin import *
from seleniumspec.runner import Runner
def render_file_template(path, context):
"""
Render jinja2 template from file on disk
:param path:
:param context:
:return:
"""
path, filename = os.path.split(path)
return jinja2.Environment(
loader=jinja2.FileSystemLoader(path or './')
).get_template(filename).render(context)
class JUnitReporterPlugin(Plugin):
"""
Prints run information/results to junit report
"""
config_section = "junit_reporter"
def runner_stop(self, event: RunnerStopPluginEvent):
runner = cast(Runner, event.runner)
run_specs = runner.run_specs
failed_results = runner.failed_results
results = runner.results
results_path = runner.config.get('results_path', '')
template_path = self.config.get('template_path', './seleniumspec/plugins/junit_template.xml')
report_path = self.config.get('report_path', 'junit.xml')
full_report_path = os.path.join('.', results_path, report_path)
junit_report = render_file_template(template_path, {
'run_specs': run_specs,
'results': results,
'failed_results': failed_results
})
with codecs.open(full_report_path, 'w', 'utf-8') as f:
f.write(junit_report)
当我在seleniumspec项目目录下运行它时,一切都正常。当我将seleniumspec导入到另一个项目时,它会抱怨模板.xml找不到。我检查了我的venv站点包,并确认文件确实作为sdist
的一部分被复制了
有人能指出我遗漏了什么吗?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐