用于控制台应用程序的selenium风格的测试库
hecate的Python项目详细描述
hecate是一个python 3库,用于测试 终端的有趣使用,例如通过ncurses。不像像这样的工具 expect或pexpect它运行一个成熟的终端模拟器(特别是tmux) 在幕后,这样您就可以准确地拍摄应用程序的快照 看起来像是由真正的用户运行。
用法
我们现在应该说,他是一个被轻描淡写的人(这是一个委婉的说法 无证)。然而the tests 应该和使用示例一样工作良好,并且有合理的docstring 在the implementation上。
常见问题
你是认真的吗?
不是很好,不是。作为一个概念,它运作良好,我完全准备好 如果它被证明是流行的,那么就保持它,但是这应该被认为是半流行的 实验性黑客,刚好比 所有这些都是你可以用来替代的成熟项目。
另一方面,上次我写了一个半实验性的测试黑客 刚好是python中最好的,我们得到了Hypothesis,所以…
是否支持Python2.7?
编号
为什么不呢?
因为你不应该需要,我也不想。他写的剧本是站着的 通过终端与程序交互的单独应用程序 接口。你可以很容易地测试用任何你喜欢的语言写的东西, 包括其他版本的python。
它支持什么版本的tmux?
我的ci在1.6到2.0版本上测试它,所以这是官方支持的 准备好了。它可能适用于早期的,但我没有测试过,也不是很好 有兴趣这么做。
为什么叫赫卡特?
为基于诅咒的工具命名selenium样式似乎是合适的 在a goddess whose domain includes the moon and magic之后的应用程序。
它是如何工作的?
在幕后,hecate正在生成一个tmux实例并运行您的命令 伴随着监控过程,我们可以报告出口。 代码(毕竟,谁会创建一个没有报告 标准的向你指出错误的机制?).hecate与 tmux服务器使用其命令行工具。
我可能会在某个时候更新它以使用控制协议,但目前为止 这样做似乎没有多大用处,这将限制支持的范围 tmux版本或者需要很多特定于版本的代码。