我可以让 RSpec 只运行更改后的规格吗?

2024-02-01

我有一个非常大的项目(约 3800 个单独示例)的测试套件,我正在将其从 RSpec 2.14 更新到 3.6。

我刚刚运行了全部替换s/be_true/be true/,但其中一些应该be_truthy相反,这些规格是失败的。

我可以从中提取更改的行git diff- 需要做一些工作 - 但随后我需要将这些输入到 RSpec 中config.filter_run,而且它似乎不喜欢我这样做locations过滤器(当您指定一个过滤器时激活的过滤器)rspec path/to/file:line在命令行上);它说 ”All examples were filtered out; ignoring {:locations=>...}".

我还可以example.run unless example.location.in? changed_specs in an around过滤器,但是这个skips 所有其他并将它们标记为pending,而不是完全忽略它们;并且它不能与其他过滤器协同工作run_all_when_everything_filtered。 (可能是因为example.location指测试的顶行,但更改是在其下面几行。)

我似乎无法使用它来添加标签example.metadata然后将其过滤掉。

编辑:我也不想在命令行上指定它们,因为我的测试在rerun,它继续运行相同的命令。

还有更多想法吗?


您可以通过以下方式运行更改后的规格:

rspec $(git ls-files --modified spec)

如果您想包含新的未版本化规范,请使用:

rspec $(git ls-files --modified --others spec)

您可以使用 shell 别名来使此操作更方便:

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

我可以让 RSpec 只运行更改后的规格吗? 的相关文章

  • 推送时发生 Git 错误 - update_ref 失败

    当我尝试推送本地提交时遇到问题 这可能是在 Android Studio 崩溃时发生的 这是错误 update ref 引用 refs remotes origin master 失败 无法锁定 ref refs remotes origi
  • git - 更新 fork 的 master 并将我的分支重新建立到它之上?

    我分叉了一个 github 项目 然后将其克隆到本地 然后我在新分支中做了一些更改my github the project repo 然后我添加并提交了更改 并推送到我的 github 存储库并提交了拉取请求 所有者已收到我的请求 并希望
  • 如何从 android.googlesource.com 或 github.com 下载单个目录?

    我想下载 https android googlesource com platform frameworks base git master tools aapt https android googlesource com platfo
  • git diff - 只显示哪些目录发生了变化

    有没有办法只列出已更改的目录 如果我在 git root 的话 project 我更改的文件是 project subtool file1 project subtool file2 project subtool3 file1 我只是想
  • 有谁知道类似于 SVN Time-Lapse View 的 Git 工具 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 SVN Time Lapse View 是一个跨平台查看器 可以下载文件的所有修订版本 并允许您通过拖
  • 有没有办法让 git flow 显示它在幕后执行的命令?

    有什么方法可以让 git flow 提前告诉我当我执行 flow 命令时它将执行的确切 git 命令吗 或者告诉我它是东吗 我只能看到输出和摘要吗 你可以使用Git的GIT TRACE 环境变量 http git scm com docs
  • git Push over sshfs 失败,并显示“关闭 sha1 文件时出错:错误的文件描述符”

    我们使用 sshfs 通过 SSH 安装文件系统 并将其用作 git 存储库协作的远程存储 Mac OSX 10 6 6 到 RHEL 3 服务器 SSHFS 版本 2 2 MacFUSE SSHFS 2 2 0 MacFUSE 库版本 F
  • 如何正确使用“mvn release:prepare”?

    我尝试了这个命令 用dryrun在我的 Maven 项目上进行测试 mvn release clean release prepare DdryRun true DgenerateBackupPoms false Dtag solocal
  • 如何使用 Rspec 测试具有嵌套路由的控制器?

    我有 2 个使用轨道脚手架生成器创建的控制器 我希望它们嵌套在一个名为 demo 的文件夹中 所以运行 rails g scaffold demo flows rails g scaffold demo nodes 然后我决定将节点嵌套在流
  • 使用 rspec 测试嵌套路由

    我正在尝试使用 rspec 测试路由 以下给出了 预期块返回真值 的错误 我不确定我错过了什么 通过浏览器我可以发布到这个网址并且成功 有任何想法吗 谢谢 Routes resources forum topics do resources
  • Git:发送电子邮件而不提交

    我有一个项目 我做了更改 并想使用 git send email 功能将它们发送给另一个用户 我发现它可以通过发送补丁来工作 由git format patch每次提交 是否可以只发送diff的 我不想先提交 然后发送补丁 是否有gitfo
  • 如何合并两个连续的 git 存储库

    我有一个相当独特的情况 我有一个名为 Project1 的存储库 我在其中工作了一些时间 几个月 一年后 我创建了存储库 Project1 Again 从 Project1 停止的地方开始 现在 我希望修订历史记录是连续的 因此我希望它们合
  • 使用rSpec 测试delayed_job 链的最佳方法是什么?

    目前 当我的代码中有一个延迟方法时 如下所示 CommentMailer delay deliver comments comment true 我在规范中写了这样的内容 dj mock DelayProxy CommentMailer s
  • 如何在 macOS 上将 Git 升级到最新版本?

    我刚刚购买了一台装有 OS X Lion 的新 Mac 我在终端中检查了默认安装的 git 版本 我得到了答案 git version gt git version 1 7 5 4 我想将 git 升级到最新版本 1 7 8 3 因此我下载
  • 如何使用 AWS Lambda 安装 Git?

    我在代码提交存储库中有代码 我正在编写一个 lambda 函数来为代码提交存储库的每个签入 事件 构建代码 我无法安装 git 因此无法克隆存储库 我该怎么办呢 正如其他人提到的 在 lambda 上安装 git 要么非常困难 要么完全不可
  • Git - 如何将整个目录恢复到特定提交(删除任何添加的文件)

    我想恢复 git 中的目录 恢复其中的所有文件 并删除自该提交以来添加的所有文件 进行结账似乎只能满足我的第一个要求 但不会删除任何文件 我想出了最简单的解决方案 git rm path to dir git checkout
  • git 排除与忽略

    I use Tower http www git tower com 用于在 Mac 中使用 Git Tower 中的设置具有创建 gitignore 的 忽略 部分 但它还有另一个名为 排除 的部分 似乎可以将排除与 git ls fil
  • 无法通过 Git Bash 克隆 git 存储库

    在尝试使用克隆存储库时git clone 它显示以下错误 致命 无法访问 https github com microsoft c9 python getting started git https github com microsoft
  • git reflog 和 log 有什么区别?

    手册页说 log 显示提交日志 reflog 管理 reflog 信息 reflog 信息到底是什么 它有哪些日志没有的信息 日志看起来更详细 git log显示当前的 HEAD 及其祖先 也就是说 它打印提交 HEAD 指向的提交 然后打
  • Git 更改丢失 - 为什么?

    我们的开发团队正在使用 git 最近我们至少两次丢失了文件更改 我们正在使用私人 Github 存储库 在当前情况下 我们可以返回 Github 上的日志并查看我对文件所做的一些更新 后来 另一位团队成员更改了文件的不同部分 它似乎破坏了我

随机推荐

  • .NET Framework 项目上的 dotnet 恢复不起作用

    我有一个 NET 项目 其中包含以下内容 csproj
  • C# 中的自然排序顺序

    任何人都拥有良好的资源或提供 C 自然顺序排序的示例FileInfo大批 我正在实施IComparer我喜欢的界面 最简单的方法就是 P Invoke Windows 中的内置函数 并将其用作您的比较函数IComparer DllImpor
  • Vue路由器如何在页面加载时获取延迟加载模块的当前路由路径?

    我有一个 vue 应用程序 其路由器设置如下 import index from components index vue import http404 from components http404 vue module lazy loa
  • shell 脚本中的 grep 实用程序

    我正在尝试克服文件结构的限制 我想在已知位置 grep 一系列文件 如果我从命令行执行标准 grep grep i searchpattern known dir s sql 我收到以下错误 ksh usr bin grep 0403 02
  • 从 pandas DataFrame 创建术语密度矩阵的有效方法

    我正在尝试从 pandas 数据帧创建术语密度矩阵 因此我可以对数据框中出现的术语进行评分 我还希望能够保留数据的 空间 方面 请参阅帖子末尾的评论以获取我的意思的示例 我是 pandas 和 NLTK 的新手 所以我希望我的问题可以通过一
  • 子元素触发的鼠标悬停事件 - 如何停止?

    我想使用 scriptaculous 中的 Effect Move 来构建这个界面 当然 使用 Prototype 当顶div鼠标悬停时触发span标签是向左移动 50 像素 并在鼠标移开时重置而不移动到原始位置 问题是 任何时候div元素
  • 为什么我无法使用方法返回的列表引用添加元素[重复]

    这个问题在这里已经有答案了 当我使用方法返回的列表引用添加元素时出现错误 假人 java package firstPro import java util List public class Dummy private List
  • 阻止访问静态内容文件夹

    我想知道如何阻止访问我的网络应用程序中的静态内容文件夹 右边的文件夹位于 war 中的 web root 文件夹内 像这样 myapp css js swf WEB INF 我希望内容仅在用户处于会话中时从应用程序中可见 如果有人在他 她的
  • 如何在 JavaScript 中四舍五入为整数?

    我有以下代码来计算一定的百分比 var x 6 5 var total total x 15 100 Result 43 3333333333 我想要的结果是确切的数字43如果总数是43 5它应该四舍五入到44 有没有办法在 JavaScr
  • 检索 WMI Win32_Processor.Family 属性的描述性值而不是索引

    下面的简单 VBS 示例从 WMI 检索 CPU 标题 体系结构和系列 s For Each Item In GetObject winmgmts impersonationLevel impersonate Root CIMV2 Inst
  • SonarQube 4.3.2 Javascript 排除 [重复]

    这个问题在这里已经有答案了 我们在 Java 项目中使用 SonarQube 版本 4 3 2 我们想要排除当前正在分析的所有 javascript 文件 我们尝试在排除列表中使用 js 进行排除 但没有成功 请帮忙 In your son
  • [外设maximumWriteValueLengthForType:CBCharacteristicWriteWithResponse]返回什么?

    我正在运行以下代码 peripheral maximumWriteValueLengthForType CBCharacteristicWriteWithResponse 就我而言 iPhone 7 iOS 10 0 2 它返回 512 这
  • jPlayer - 通过页面重定向保存用户设置

    我已经关注这个问题好几天了 我无法让它发挥作用 希望有人可以帮助我并指出我正确的方向 使用 jPlayer http jplayer org http jplayer org 我需要将 cookie 设置为以下内容 以便当用户返回该网页时
  • iPhone 802.11 扫描

    我正在开发一个室内位置使用 wifi 的系统 但是我在使用苹果库时遇到了问题 曾经是私人的 现在是公共的 我在哪里使用代码 libHandle dlopen System Library SystemConfiguration IPConf
  • MacOS 上使用 clang-15 时 FindTerminfo 中的 CMake 错误

    我在我的项目中使用 llvm 并使用 cmake 找到它find package LLVM REQUIRED CONFIG 配置失败并显示消息 cmake CMake Error at Applications CMake app Cont
  • jestjs - 如何在 ci 中参数化 cli 的测试执行?

    我有4个环境 dev 开发者区 测试 测试区 preprod 预生产环境 生产 生产环境 这些环境需要不同的配置来执行测试 不同的 url 用户名 资产等 如何在持续集成中将它们的配置作为参数传递给 jest 正如你所读到的here htt
  • Java 线程转储总结工具

    我有时必须查看 Tomcat 服务器的线程转储 然而 这是一个非常慢的过程 因为我的应用程序使用具有数百个线程的线程池 我查看的大多数线程转储都包含许多线程的相同堆栈跟踪 因为它们处于空闲等待工作状态 是否有任何工具可以解析线程转储并仅向我
  • eXist-db 在 .xq 数据中包含 html 模板

    我有一个 index html 数据 我通过以下方式包含了模板 div 在索引 html 站点中 我包含了一个关键字搜索表单 其想法是当我单击搜索按钮时 它应该调用 xq 文件来请求搜索结果 div
  • Pandas 跨多列进行代表性采样

    我有一个代表人口的数据框 每一列表示该人的不同品质 特征 我怎样才能获得该数据框 人口的样本 它代表了整个人口的所有特征 假设我有一个代表 650 人的员工队伍的数据框 如下所示 import pandas as pd import num
  • 我可以让 RSpec 只运行更改后的规格吗?

    我有一个非常大的项目 约 3800 个单独示例 的测试套件 我正在将其从 RSpec 2 14 更新到 3 6 我刚刚运行了全部替换s be true be true 但其中一些应该be truthy相反 这些规格是失败的 我可以从中提取更