在多个文件中进行测试

2024-01-27

我正在为大型项目使用金字塔框架,我发现将所有测试放在一个中很混乱tests.py文件。所以我决定创建包含我的测试文件的目录。问题是,我不知道如何告诉金字塔从这个目录运行我的测试。

我正在使用运行测试python setup.py test -q.

但是,在我将测试移至测试目录后,这当然不起作用。该怎么做才能让它发挥作用?


首先,您需要确保tests不仅仅是一个目录,而是一个Python包,通过创建__init__.py in it.

您还需要确保在您的模块中命名模块tests包裹test_something.py.

大多数测试运行者,作为测试发现的一部分,会寻找名为的模块或包tests,该包中的模块以test_并期望测试方法的方法名称(在TestCase子类)开始test_.

The unittest http://docs.python.org/library/unittest.html模块将测试运行器描述为:

测试运行器是编排测试执行的组件 并向用户提供结果。跑步者可以使用图形 接口,文本接口,或者返回一个特殊值来指示 执行测试的结果。

有很多不同的测试框架,因此测试运行器有很多,最扩展的unittest以某种方式并寻找unittest.TestCase子类。他们可能会做不同类型的测试发现 http://docs.python.org/library/unittest.html#test-discovery,以不同的方式呈现结果或收集代码覆盖率 http://wiki.python.org/moin/CodeCoverage当测试正在进行时。

至于相对进口:你真的应该尽量避免这些。它们使得移动代码变得更加困难(正如您刚刚注意到的)并降低了导入的可读性(从哪里导入什么代码?)。只需使用from myproject.views import my_view- 事物所在的位置更加清晰

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在多个文件中进行测试 的相关文章

  • Python Popen 与 psexec 挂起 - 不良结果

    我对 subprocess Popen 和我认为是管道的问题有疑问 我有以下代码块 从 cli 运行时 100 都不会出现问题 p subprocess Popen psexec serverName get cmd c ver echo
  • Python - 将宽字符字符串从二进制文件转换为 Python unicode 字符串

    这是漫长的一天 我有点困惑 我正在读取一个包含大量宽字符字符串的二进制文件 我想将它们转储为 Python unicode 字符串 为了解压非字符串数据 我使用 struct 模块 但我不知道如何对字符串执行相同的操作 例如 阅读 系列 一
  • 我怎样才能更多地了解Python的内部原理? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我使用Python编程已经有半年多了 我对Python内部更感兴趣 而不是使用Python开发应用程序
  • 通过列表理解压平列表列表

    我正在尝试使用 python 中的列表理解来展平列表 我的清单有点像 1 2 3 4 5 6 7 8 只是为了打印这个列表列表中的单个项目 我编写了这个函数 def flat listoflist for item in listoflis
  • if 语句未命中中的 continue 断点

    在下面的代码中 两者a and b是生成器函数的输出 并且可以评估为None或者有一个值 def testBehaviour self a None b 5 while True if not a or not b continue pri
  • Pandas 中允许重复列

    我将一个大的 CSV 包含股票财务数据 文件分割成更小的块 CSV 文件的格式不同 像 Excel 数据透视表之类的东西 第一列的前几行包含一些标题 公司名称 ID 等在以下列中重复 因为一家公司有多个属性 而不是一家公司只有一栏 在前几行
  • 填充两个函数之间的区域

    import matplotlib pyplot as plt import numpy as np def domain x np arange 0 10 0 001 f1 lambda x 2 x x 2 0 5 plt plot x
  • 如何计算numpy数组中元素的频率?

    我有一个 3 D numpy 数组 其中包含重复的元素 counterTraj shape 13530 1 1 例如 counterTraj 包含这样的元素 我只显示了几个元素 array 136 129 130 103 102 101 我
  • 切片 Dataframe 时出现 KeyError

    我的代码如下所示 d pd read csv Collector Output csv df pd DataFrame data d dfa df copy dfa dfa rename columns OBJECTID Object ID
  • 使用 Python pandas 计算调整后的成本基础(股票买入/卖出的投资组合分析)

    我正在尝试对我的交易进行投资组合分析 并尝试计算调整后的成本基础价格 我几乎尝试了一切 但似乎没有任何效果 我能够计算调整后的数量 但无法获得调整后的购买价格有人可以帮忙吗 这是示例交易日志原始数据 import pandas as pd
  • 对图像块进行多重处理

    我有一个函数必须循环遍历图像的各个像素并计算一些几何形状 此函数需要很长时间才能运行 在 24 兆像素图像上大约需要 5 小时 但似乎应该很容易在多个内核上并行运行 然而 我一生都找不到一个有据可查 解释充分的例子来使用 Multiproc
  • Python urllib.request.urlopen:AttributeError:'bytes'对象没有属性'data'

    我正在使用 Python 3 并尝试连接到dstk 我收到错误urllib包裹 我对SO进行了很多研究 但找不到与这个问题类似的东西 api url self api base street2coordinates api body jso
  • 如何从Python中的字符串中提取变量名称和值

    我有一根绳子 data var1 id 12345 name John White python中有没有办法将var1提取为python变量 更具体地说 我对字典变量感兴趣 这样我就可以获得变量的值 id和name python 这是由提供
  • 首先对列表中最长的项目进行排序

    我正在使用 lambda 来修改排序的行为 sorted list key lambda item item lower len item 对包含元素的列表进行排序A1 A2 A3 A B1 B2 B3 B 结果是A A1 A2 A3 B
  • 将 2D NumPy 数组按元素相乘并求和

    我想知道是否有一种更快的方法 专用 NumPy 函数来执行 2D NumPy 数组的元素乘法 然后对所有元素求和 我目前使用np sum np multiply A B 其中 A B 是相同维度的 NumPy 数组m x n 您可以使用np
  • 在 Pandas 中使用正则表达式的多种模式

    我是Python编程的初学者 我正在探索正则表达式 我正在尝试从 描述 列中提取一个单词 数据库名称 我无法给出多个正则表达式模式 请参阅下面的描述和代码 描述 Summary AD1 Low free DATA space in data
  • 创建嵌套字典单行

    您好 我有三个列表 我想使用一行创建一个三级嵌套字典 i e l1 a b l2 1 2 3 l3 d e 我想创建以下嵌套字典 nd a 1 d 0 e 0 2 d 0 e 0 3 d 0 e 0 b a 1 d 0 e 0 2 d 0
  • mac osx 10.8 上的初学者 python

    我正在学习编程 并且一直在使用 Ruby 和 ROR 但我觉得我更喜欢 Python 语言来学习编程 虽然我看到了 Ruby 和 Rails 的优点 但我觉得我需要一种更容易学习编程概念的语言 因此是 Python 但是 我似乎找不到适用于
  • 检查字典键是否有空值

    我有以下字典 dict1 city name yass region zipcode phone address tehsil planet mars 我正在尝试创建一个基于 dict1 的新字典 但是 它不会包含带有空字符串的键 它不会包
  • 迭代 pandas 数据框的最快方法?

    如何运行数据框并仅返回满足特定条件的行 必须在之前的行和列上测试此条件 例如 1 2 3 4 1 1 1999 4 2 4 5 1 2 1999 5 2 3 3 1 3 1999 5 2 3 8 1 4 1999 6 4 2 6 1 5 1

随机推荐

  • 如何关闭 iOS 设备[重复]

    这个问题在这里已经有答案了 是的 实际上 我认为我所要求的是不可能的 但我想知道您是否知道如何使用 swift 或 Objective C 代码关闭 iPhone 或者至少进入飞行模式 您无法使用苹果提供的公共 API 来执行此操作 这可以
  • Python:LookupError:未知编码:十六进制

    我正在使用名为 Tweepy 的 Twitter API 它一直工作正常 然后我重新启动了服务器 现在我得到了这个 gt gt gt import tweepy Traceback most recent call last File
  • 选择出现超过 3 次的行

    我有一个表 active users 我想从中选择 user id 出现超过 2 次且 notification 0 的行 只想要单个结果 需要查询结果 Id User id Mobile last seen notified 1 2585
  • FFMPEG“分段错误”与网络流源

    我使用版本 4 2 2 静态 来自 https johnvansickle com ffmpeg https johnvansickle com ffmpeg 最终代码将位于 Amazon AWS lambda 上 目标 使用 url 流并
  • HttpRequest.Content.IsMimeMultipartContent() 在应该返回 true 时返回 false

    我需要将 HTTP 请求作为 MultiPartFormData 发送到 REST 控制器 它正在工作 但现在我在控制器上进行的检查声称请求的类型不正确 即使我可以在调试器中看到请求的类型正确 以供参考 这是调用它的控制台应用程序代码 us
  • Play Framework 2.2.x 多个路由文件

    我已经读完这部剧了 对于 Scala 书中关于模块的部分 我似乎无法弄清楚如何从引用的模块导入路由 我已将模块设置为 build sbt 文件中的库依赖项 并尝试将路由导入到路由文件中 如下所示 构建 sbt libraryDependen
  • 如何使用 Emacs 更改文件的读/写模式?

    如果文件设置为只读模式 如何在 Emacs 中将其更改为写入模式 反之亦然 M x 只读模式 在非常旧的 Emacs 版本中 命令是 M x 切换只读 在我的 Windows 机器上 这相当于 Alt x 调出元提示符并输入 只读模式 来调
  • 检查一个列表是否以另一个列表的元素开头

    如果列表的开头恰好是另一个列表的元素 那么最简单 最Pythonic的方法 是什么 考虑以下示例 li 1 4 5 3 2 8 Should return true startsWithSublist li 1 4 5 Should ret
  • 如何在我的网站中实施 HSTS

    我有一个网站 来自 godaddy 的域名并托管在 hostgator 中 当我手动更新证书时 我可以将我的网站重定向到 https 但它总是从 google 搜索转到 http 在网上搜索后 我了解到考虑到Strict Transport
  • Java ant 脚本不显示警告

    我有一个 1 4 java 代码 我想用 1 5 编译器编译它 因为我想看到所有警告消息 我向 javac 添加了 Xlint 选项 但输出似乎没有变化 但我知道代码中至少有几个警告 我将这两行添加到我的 ant 脚本的编译目标标记中
  • memcached数据缓存的设计模式

    可以轻松地将可选的 memcached 缓存封装到现有的数据库查询中 例如 旧 仅限数据库 function getX x get from db return x end 新 带有内存缓存的数据库 function getX x get
  • 了解 C# 中运行时代码生成的各种选项(Roslyn、CodeDom、Linq 表达式,...?)

    我正在开发一个应用程序 我想在其中动态生成数值计算的代码 为了性能 作为数据驱动操作来执行此计算太慢 为了描述我的要求 请考虑此类 class Simulation Dictionary
  • 有没有办法让vim打开一个目录及其所有子目录中的所有.C和.H文件?

    我想在 vim 中对大约 20 个 C 和 H 文件执行替换 并且我想一次打开它们 所有文件分布在多个嵌套目录中 命令在最顶层父目录中执行 我可以只使用 vim 来完成此操作 还是需要 find 命令和 p 选项 如图所示 关于这个答案 h
  • 如何在浏览器关闭时关闭 vaadin 会话但保留 http 会话?

    我正在开发一个 vaadin 7 应用程序 使用 jaas 进行用户身份验证和授权 并在应用程序服务器 glassfish 中定义领域 我有这样的要求 用户可以保持登录状态一段时间 这样他就不需要每次都输入密码 我通过设置 http 会话的
  • Github 限制访问

    我正在使用github 我正在尝试找出如何限制我拥有的承包商的回购访问权限 我有主要的 Rails 代码库 还有一个承包商将为我做一些 css ux 类型的工作 我想让承包商能够仅将代码签入 github 的某些文件夹 理想情况下 我可以让
  • 有没有更好的方法来获取 PHP 的货币汇率?

    使用以下代码的货币汇率有时有效 有时无效 而且一点也不可靠 有没有更好的方法来获取 PHP 的货币汇率 public function getJPYtoUSDExchangeRate from JPY to USD amount 1 dat
  • 如何使用 setuptools 排除或忽略软件包预发布?

    我正在使用 setuptoolstensorflow包依赖 我跑步时注意到setup py install 它发现tensorflow 1 13 0rc2 当我跑步时pip 它发现tensorflow 1 12 然后我发现这张票 https
  • 设置新创建的 CAShapeLayer 的正确框架

    简而言之 苹果没有设置frame or bounds for a CAShapeLayer自动 并且苹果尚未实现等效的 UIView sizeThatFits 如果您使用路径边界框的大小设置框架 一切都会出错 无论你如何尝试设置它 它都会搞
  • 使用静态 WebDriver 实例的 java.lang.NullPointerException

    我想将我的代码分成更小的函数 但有一个问题 因为驱动程序并非适用于所有功能 所以我将它声明为常量 或者有更好的方法吗 但在第三个函数中 它在线失败 Select dropdown finance product new Select dri
  • 在多个文件中进行测试

    我正在为大型项目使用金字塔框架 我发现将所有测试放在一个中很混乱tests py文件 所以我决定创建包含我的测试文件的目录 问题是 我不知道如何告诉金字塔从这个目录运行我的测试 我正在使用运行测试python setup py test q