Windows上的Python Behave BDD教程错误



所以,我比较了一些python测试框架,发现了一些行为。觉得很有趣,值得试驾一下。

遵循了教程中的步骤,可在以下位置获得:https://behave.readthedocs.io/en/stable/tutorial.html

当我在Powershell(Win10和Python 2.7.10(上运行behave命令时,我得到了以下错误:

Exception TypeError: compile() expected string without null bytes
Traceback (most recent call last):
File "C:Python27librunpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "C:Python27librunpy.py", line 72, in _run_code
exec code in run_globals
File "C:Python27libsite-packagesbehave__main__.py", line 187, in <module>
sys.exit(main())
File "C:Python27libsite-packagesbehave__main__.py", line 183, in main
return run_behave(config)
File "C:Python27libsite-packagesbehave__main__.py", line 127, in run_behave
failed = runner.run()
File "C:Python27libsite-packagesbehaverunner.py", line 804, in run
return self.run_with_paths()
File "C:Python27libsite-packagesbehaverunner.py", line 809, in run_with_paths
self.load_step_definitions()
File "C:Python27libsite-packagesbehaverunner.py", line 796, in load_step_definitions
load_step_modules(step_paths)
File "C:Python27libsite-packagesbehaverunner_util.py", line 412, in load_step_modules
exec_file(os.path.join(path, name), step_module_globals)
File "C:Python27libsite-packagesbehaverunner_util.py", line 385, in exec_file
code = compile(f.read(), filename2, "exec", dont_inherit=True)
TypeError: compile() expected string without null bytes

是否有人在尝试运行behavior时遇到此错误?(在网上发现一些线程主要与烧瓶问题有关,但我无法解决问题(

在这里回答我自己的问题。

这是一个编码问题。Sublime使用不同于UTF-8的编码保存我的文件。

File -> Save with Encoding -> UTF-8做到了。

最新更新