如何在不安装包的情况下运行测试?

2024-03-24

我有一些 Python 包和一些测试。文件排列如下http://pytest.org/latest/goodpractices.html#choosing-a-test-layout-import-rules http://pytest.org/latest/goodpractices.html#choosing-a-test-layout-import-rules

将测试放入实际应用程序之外的额外目录中 代码,如果您有很多功能测试或出于其他原因,则很有用 想要将测试与实际应用程序代码分开(通常是一个很好的选择) 主意):

setup.py   # your distutils/setuptools Python package metadata
mypkg/
    __init__.py
    appmodule.py
tests/
        test_app.py

我的问题是,当我运行测试时py.test,我收到一个错误

导入错误:没有名为“mypkg”的模块

我可以通过安装包来解决这个问题python setup.py install但这意味着测试是针对已安装包,而不是本地包,这使得开发非常繁琐。每当我进行更改并想要运行测试时,我都需要重新安装,否则我正在测试旧代码。

我能做些什么?


我知道这个问题已经结束了,但我经常使用的一个简单方法是调用pytest via python -m,从根(包的父级)开始。

$ python -m pytest tests

这有效是因为-m选项将当前目录添加到 python 路径,因此mypkg被检测为本地软件包(而不是已安装的软件包)。

See: https://docs.pytest.org/en/latest/usage.html#calling-pytest-through-python-m-pytest https://docs.pytest.org/en/latest/usage.html#calling-pytest-through-python-m-pytest

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

如何在不安装包的情况下运行测试? 的相关文章

  • Pyenv 无法在 Cygwin 上安装 python: ModuleNotFoundError: No module named '_ctypes'

    我正在尝试设置 Cygwin 环境以使用 pyenv 来管理 python 版本 我没有管理员权限 所以我使用以下命令运行设置 no admin flag 我使用 Cygwin 包管理器应用程序解决了一些依赖关系 但我被困在了这一点上 Mo
  • 带括号的上下文管理器

    我试图了解新的新内容带括号的上下文管理器Python 3 10 中的功能 新功能中的顶部项目here https docs python org 3 10 whatsnew 3 10 html 我的测试示例是尝试编写 with open f
  • Pip install 导致此错误“ cl.exe' failed with exit code 2 ”

    我已经阅读了有关此错误的所有其他问题 但令人沮丧的是 没有一个给出有效的解决方案 如果我跑pip install sentencepiece在命令行中 它给出了以下输出 src sentencepiece sentencepiece wra
  • Python 小数.InvalidOperation 错误

    当我运行这样的东西时 我总是收到此错误 from decimal import getcontext prec 30 b 2 3 Decimal b Error Traceback most recent call last File Te
  • 将打开关闭的 Google Chrome 浏览器添加到 Selenium linkedin_scraper 代码中

    我正在尝试抓取一些知名人士的 LinkedIn 个人资料 该代码获取一堆 LinkedIn 个人资料 URL 然后使用Selenium and scrape linkedin收集信息并将其作为 json 文件保存到文件夹中 我遇到的问题是
  • 创建一个打开文件并创建字典的函数

    我有一个正在处理的文件 我想创建一个读取文件并将内容放入字典中的函数 然后该字典需要通过 main 函数传递 这是主程序 它无法改变 我所做的一切都必须与主程序配合 def main sunspot dict file str raw in
  • 如何在Python中的BeautifulSoup4中使用.next_sibling时忽略空行

    由于我想删除 html 网站中重复的占位符 因此我使用 BeautifulSoup 的 next sibling 运算符 只要重复项位于同一行 就可以正常工作 参见数据 但有时它们之间有一个空行 所以我希望 next sibling 忽略它
  • 十六进制数的按位异或

    我们如何在 Python 中对十六进制数进行异或 例如 我想要异或 ABCD and 12EF 答案应该是 B922 我使用了下面的代码 但它给出了错误的结果 xor two strings of different lengths def
  • 使用字母而不是数字进行顺序计数[重复]

    这个问题在这里已经有答案了 我需要一种方法 将字符串 递增 到 z 然后将 aa 递增到 az 然后将 ba 递增到 bz 依此类推 就像 Excel 工作表中的列一样 我将向该方法提供前一个字符串 它应该增加到下一个字母 PSEUDO C
  • 理解@property装饰器和继承[重复]

    这个问题在这里已经有答案了 这里是 Python 3 以防万一它很重要 我试图正确理解如何实现继承 property使用 我已经搜索了 StackOverflow 并阅读了大约 20 个类似的问题 但无济于事 因为他们试图解决的问题略有不同
  • Selenium Webdriver - Python - leboncoin - pb 选择带重音的按钮

    我正在尝试在以下网站上自动填写表格 https www leboncoin fr https www leboncoin fr 我用 Selenium IDE 录制了一个脚本 我有一个通过单击 Se 连接器 按钮并填写我的密码和用户名来自动
  • 向 Python 2.6 添加 SSL 支持

    我尝试使用sslPython 2 6 中的模块 但我被告知它不可用 安装OpenSSL后 我重新编译2 6 但问题仍然存在 有什么建议么 您安装了 OpenSSL 开发库吗 我必须安装openssl devel例如 在 CentOS 上 在
  • 如何使用 jira-python 设置 fixVersions 字段

    我正在尝试使用 jira python 模块 http jira python readthedocs org en latest 更新现有的 JIRA 具体来说 我正在尝试设置问题的fixesVersion 列表 我已经尝试了一段时间但没
  • 提交表格并上传带有请求的文件

    我正在努力提交特定的表格蟒蛇请求 http www python requests org 我想使用它的网站上的其他表单工作正常 我可以提交登录表单等 这只是我遇到问题的文件上传 显然 提交表单效果很好 因为我从网站收到一条消息 说 请返回
  • Floyd-Warshall 算法:获取最短路径

    假设一个图由一个表示n x n维数邻接矩阵 我知道如何获得所有对的最短路径矩阵 但我想知道有没有办法追踪所有最短路径 Blow是python代码实现 v len graph for k in range 0 v for i in range
  • 使用python中的mysql连接器正确从mysql数据库获取blob

    当执行以下代码时 import mysql connector connection mysql connector connect connection params here cursor connection cursor curso
  • 如何将 pytest 装置与 django TestCase 一起使用

    我如何在TestCase方法 类似问题的几个答案似乎暗示我的例子应该有效 import pytest from django test import TestCase from myapp models import Category py
  • 网页抓取 - 如何识别网页上的主要内容

    给定一个新闻文章网页 来自任何主要新闻来源 例如时报或彭博社 我想识别该页面上的主要文章内容 并丢弃其他杂项元素 例如广告 菜单 侧边栏 用户评论 在大多数主要新闻网站上都可以使用的通用方法是什么 有哪些好的数据挖掘工具或库 最好是基于Py
  • psutil:测量特定进程的CPU使用率

    我正在尝试测量进程树的 cpu 使用率 目前获取进程 没有子进程 的 cpu usage 就可以了 但我得到了奇怪的结果 import psutil p psutil Process PID p cpu percent 还给我float g
  • 从 C 线程调用 Python 代码

    我对从 C 或 C 线程调用 Python 代码时如何确保线程安全感到非常困惑 The Python 文档 http docs python org c api init html non python created threads似乎是

随机推荐

  • 异步等待获取未定义。如何处理?

    我目前正在学习async await fetch我创建了以下示例来帮助我学习 下面的工作示例 从公共 API 获取三个随机 json 记录 提取出url从每次返回json 创建三个img元素 追加三img文档正文的元素 请注意promise
  • 将 RGBA 图像转换为灰度 Golang

    我目前正在开发一个将 RGBA 图像转换为灰度的程序 我之前问了一个问题 并得到了以下答案 更改单个像素的颜色 Golang 图像 https stackoverflow com questions 36573413 change colo
  • Array.length = 0 和 Array =[] 之间的区别?

    有人可以解释一下它们两者之间的概念差异吗 在某处读到第二个通过销毁对现有数组的所有引用来创建一个新数组 而 length 0 只是清空数组 但这对我来说不起作用 Declaration var arr new Array 下面是一次又一次执
  • 如何快速清除简单类型的记录?

    我有一个这样定义的结构 const MaxSignalRecords 255 type TSignalRecord record signal1 integer signal2 integer signal3 integer signal4
  • Inno Setup - 允许用户选择“只有我”或“任何使用这台计算机的人”

    我遇到的一些安装程序让我选择 只为我 或 为 使用这台计算机的任何人 安装应用程序 如何让我的 Inno Setup 脚本向用户提供此选择 以便我可以根据他们的回答方式更改安装程序的操作 有很多方法可以解释 只有我 与 所有用户 问题的答案
  • 在 Woocommerce 产品类别小部件中显示子类别档案

    我正在使用 Woocommerce 建立一家商店并使用 WooCommerce 产品类别小部件 我已经设置了许多产品类别和子类别 其中一个类别是 海报 并有几个子类别 例如 星座 旅行 自然 默认情况下 Woocommerce 仅显示父类别
  • 在 avro 文件中存储空值

    我有一些 json 数据 如下所示 id 1998983092 name Test Name 1 type search string creationDate 2017 06 06T13 49 15 091 0000 lastModifi
  • 如何在nuget和项目引用之间有效切换?

    我正在开发一个私有测试工具 它分为一个核心库和几个扩展插件 扩展项目通过私有 MyGet feed 依赖于核心库 因此我只需单击打包并上传到 MyGet feed 即可 无需太多麻烦 我遇到的问题是 除非我发布核心 NuGet 包的全新版本
  • 检测 SSL 浏览器支持

    如何检测客户端浏览器是否支持 SSL 我不是指 到服务器变量 HTTP 我希望能够确定 如果浏览器不支持 SSL 附 我知道这是可能的 因为这家公司 http www cyscape com http www cyscape com 有一款
  • AutoMapper:如何从字符串中解析 Int 并可以根据数据类型创建规则?

    我的表单有两个模型 一个是指向它的 ViewModel 另一个是来自它的 ControlModel ControlModel 具有所有相同的字段名称和层次结构 但所有字段都是字符串数据类型 如何编写 AutoMapper 代码以将字符串字段
  • 如何为特定类编写hashCode方法?

    我正在尝试为我的简单类生成 hashCode 方法 但我没有得到任何结果 我将不胜感激任何帮助 我已经实现了 equals 方法 如下所示 并且还想知道是否需要实现compareTo 方法 我已经导入 java lang Character
  • stringstream.read() 是否消耗流?

    我无法从文档中看出如何std stringstream read 作品 它是否消耗流 换句话说 std stringstream ss char buffer 6 ss lt lt Hello world ss read buffer 6
  • 在jquery中获取

    我试图使用 jquery 获取 li 的嵌套深度 然后创建一个包含 li 和数字的字符串 了解它们的嵌套深度 例如 ul li MenuItem1 li li MenuItem2 ul li SubItemA li ul li li Men
  • 升级到 .NET 4.0 时 配置组出现问题

    因此 我们将网站从 3 5 SP1 升级到 NET 4 当我们运行该站点时 我们收到内部服务器错误 500 指出无法读取以下配置组
  • 如何获取Angular2 RC5中的路线参数

    我已将我的 angular2 项目升级为RC5 using angular cli webpack 我提供的路由如下 const appRoutes Routes path project manager component Project
  • 通过示例了解何时使用dispatch_get_main_queue和requireMainQueueSetup

    不久前我在这里问过类似的问题 requireMainQueueSetup 和dispatch get main queue 的区别 https stackoverflow com questions 50773748 difference
  • ReactJS:在 box-shadow 中使用 rgba 和 styled-components 道具不起作用

    我正在建造一个ReactJS地点和使用样式组件 with ThemeProvider 所以我的背景颜色或颜色CSS代码是这样的background color props gt props theme background 现在我想创建一个
  • NSArray 充满了 NSDictionaries。如何找到对象的索引?

    我有一个array里面充满了NSDictionaries 我想找到index其中一本词典的内容 但我对这本词典的了解只是一个value对于钥匙 name 我该怎么做 查找第一个字典的索引theArray其价值 name is theValu
  • 从Series中获取索引和值

    我在 pandas 中进行选择和索引时有点缓慢 我有一个日期时间系列 我试图从中选择某些元素及其日期时间索引 以便将它们附加到新系列中 例子 import pandas as pd x pd Series 11 12 13 14 15 16
  • 如何在不安装包的情况下运行测试?

    我有一些 Python 包和一些测试 文件排列如下http pytest org latest goodpractices html choosing a test layout import rules http pytest org l