Answers:
click打包格式完全独立于设施来进行全系统安装或升级。当前,该打包程序应与Python 2.7、3.2、3.3和3.4保持兼容;Ubuntu 12.04 LTS,Ubuntu 13.10和Ubuntu 14.04 LTS。如果您是通过全新的bzr签出运行的,请确保首先运行所需的构建依赖项
$ dpkg-checkbuilddeps
然后运行:
$ ./autogen.sh
$ ./configure --prefix=/usr \
--sysconfdir=/etc \
--with-systemdsystemunitdir=/lib/systemd/system \
--with-systemduserunitdir=/usr/lib/systemd/user
$ make
to build the project.
依赖关系
对于Ubuntu 14.04,请确保已安装python2.7和python3.4软件包。除非您从Ubuntu的早期版本升级并且尚未删除它,否则您将无法使用Python 3.3和Python 3.2。如有必要,请从源代码中构建它们,将它们安装到/usr/local
中并确保它们位于您的上$PATH
。您需要安装tox(Ubuntu软件包python-tox)才能运行完整的测试套件。您应该可以说。
$ tox
运行完整套件。使用tox的-e选项可对部分Python版本运行测试。您不必手动将任何东西安装到tox创建的虚拟环境中,但是如果您没有在系统Python中安装所有依赖项,则可能必须安装任何东西。
您将需要模拟和python-debian库。对于Ubuntu 13.10,apt-get安装以下软件包:
- python-mock
- python-debian
- python3-debian
测试
安装上述所有工具之后,您可以运行tox以针对所有受支持的Python版本运行测试套件。这些./run-tests
脚本只是做了额外的检查,以确保您已经构建了预加载共享库。要运行特定的测试用例,请使用标准的python unittest。
语法如下:
$ python3 -m unittest click.tests.test_install
or:
$ python2 -m unittest click.tests.test_build.TestClickBuilder.test_build
测试覆盖率如果安装了python-coverage,则可以通过输入以下内容获取Python测试覆盖率报告:
$ python-coverage combine $ python-coverage report
这也适用于python3-coverage。
要获取Vala / C的覆盖范围信息,请安装gcovr和lcov软件包并运行:
$ ./configure –enable-gcov $ make coverage-html
它将为您生成一个“ coveragereport / index.html”文件。
可以通过以下方式获取合并的覆盖范围信息:
$ make coverage.xml