我正在尝试运行一个运行 tmux 的 Ruby 程序来创建一个新会话。我正在用 Cucumber 测试这个。Ruby 程序本身可以正常工作并启动 tmux 会话,但是当从 Cucumber 场景运行代码时,我在 Cucumber 输出中的控制台上出现错误 - “不是终端”。
我知道这是由于 tmux 认为它没有在终端中运行,因为 isatty() 的返回值是 tmux 在启动时调用的。为什么在通过 Cucumber 运行时会发生这种情况,并且无论如何都在它周围,因为我真的希望能够用这些场景测试我的程序。