首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在pBuilder环境中运行Python集成测试

在pBuilder环境中运行Python集成测试
EN

Stack Overflow用户
提问于 2012-04-20 10:39:23
回答 2查看 675关注 0票数 2

我已经用Python项目构建了一个Debian包,它依赖于一堆Debian包才能工作。Python项目还包含单元测试和集成测试(使用py.test)。

由于我的项目依赖于一些Debian包,所以我需要在测试环境中安装这些包,它们应该验证我的模块与这些包一起正确工作(我希望确保我的模块不会中断这些库的更新)。

我想将这些测试环境的配置和执行放到Makefile中。这些测试应该可以在开发人员工作站和Jenkins支持的Integration上运行。

我目前对我的包进行完整集成测试的方法是:

  1. 创建一个pBuilder环境
  2. 将Debian控制文件中的依赖项安装到pBuilder env中。
  3. 在这个pBuilder环境中启动py.test,还使用维塔列夫 / 毒理测试不同的Python解释器版本。
  4. 从测试环境收集测试结果(py.test可以生成很好的类JUnit测试输出,Jenkins可以很容易地发布)

不幸的是,我找不到任何提示来了解这些东西--尤其是如何去做。我所能找到的所有文档只是关于构建包,而不是关于运行测试。

有人能给我一些提示,我如何建立这样的测试设置?另外,我想知道做我想做的事情是否有意义。其他人如何测试(Python)模块与其他Debian包的集成?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-24 07:54:03

我假设您希望在构建打包时运行测试套件。

1)在包的Makefile中添加一个check目标,它运行您的实际测试套件,包括所有的virtualenv/tox魔术;例如:

代码语言:javascript
运行
复制
.PHONY: check
check:
    ./runtests.sh

使用runtests.sh脚本运行解释器检查,然后启动py.test

2)将debian/rules配置为实际运行测试

2a)如果使用CDBS,请在debian/rules开头添加以下行

代码语言:javascript
运行
复制
DEB_MAKE_CHECK_TARGET = check

2b)如果使用debhelper,那么dh_auto_test脚本应该自动地为您运行测试(前提是生成文件中有一个check目标)

如果您有一个自定义的debian/rules,那么在成功构建之后运行"check“目标

票数 5
EN

Stack Overflow用户

发布于 2012-04-29 23:34:52

其他人如何测试(Python)模块与其他Debian包的集成?

一种选择是提供一个全新的系统来运行您的测试,例如在虚拟机或廉价的云服务器上。

如果您是pBuilder上的死集,则可以使用pbuilder execute调用任意脚本

http://packaging.ubuntu.com/html/chroots.html上的一些其他有用的提示

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10244633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档