问题标签 [lettuce]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
797 浏览

python - 生菜:断言后继续测试

测试失败后如何继续测试?

我希望“我仍然想运行其他一些测试”运行,即使“有一个可能失败的测试”失败了。

0 投票
1 回答
2675 浏览

python - 生菜入门:“XMLSyntaxError:无”

我一直在尝试在 django 项目中启动并运行一组基本的生菜测试,但我遇到了一些问题。

我按照生菜网站上的示例教程进行操作,但运行时不断出现以下错误python manage.py harvest

我的虚拟环境中安装了以下内容:

这是一个错误,还是我在某个地方犯了一些错误?我原以为这个例子会涵盖它......

0 投票
1 回答
668 浏览

django - 使用生菜+碎片和硒进行测试时,在 Travis CI 上建立超时

我有大约 130 个生菜测试在本地运行良好,但是当 travis 运行它们时,它在几次测试后挂起。

这里测试在第 8 种情况下失败:https ://travis-ci.org/h3/django-editlive/jobs/3945466

当我删除它通过的最后一个场景时:https ://travis-ci.org/h3/django-editlive/builds/3945648

我尝试将测试拆分为单独的功能文件,同样的问题。

这似乎不是由特定场景引起的,而是由运行的场景数量引起的。

根据 Travis 的文档

  • 等待键盘输入或其他类型的人机交互
  • 并发问题(死锁、活锁等)
  • 安装需要很长时间才能编译的本机扩展

我能看到的唯一可能性是并发问题..但是我该如何调试呢?

我的项目是开源的,所以整个源代码都可以在这里找到:

0 投票
1 回答
215 浏览

testing - 如何在分裂和生菜测试中使用循环?

我想问是否可以将 for-loop 或 while-loop 与 splinter 和 lettuce BBD 测试一起使用。

我的一个场景是:我想循环一个表并更改每个条目状态,直到所有条目状态都被更改。我可以更改一个条目状态并返回表。我怎样才能在一个循环中做到这一点?谢谢。

0 投票
0 回答
634 浏览

python - Django Lettuce 并行运行两次测试

我正在尝试使用生菜从我的步骤定义中获取一些输出。当我运行测试时,我看到它闪烁我的输出一秒钟,然后被相同的测试覆盖。但是,我可以看到在输出中调用了两次步骤。一种是很深(几乎是黑色)的颜色,另一种是绿色或红色。输出在下面突出显示。 幻象测试

这让我很头疼,因为调试信息显示在另一个正在运行的测试中,而不是这个。我很难阐明这一点,但我认为屏幕截图有助于说明这一点:我应该只看到每个步骤被​​调用一次,但现在情况并非如此。

对此的任何帮助将不胜感激。

特征

步骤(格式有点不对)

设置

0 投票
1 回答
3667 浏览

python - 尝试使用示例运行生菜场景时,我创建的步骤无法被识别

让我看看我能不能告诉你我有多困惑。

如果我只使用内联变量的生菜特征文件,那么一切正常。例如,如果我创建以下功能文件:

并针对它运行生菜,它告诉我创建以下步骤:

如果我将该标题(“从生菜导入步骤”)和这些步骤粘贴到 filefinder.py 文件夹中,并将“assert False”更改为“assert True”以使测试通过,我将顺利通过:

现在,我想添加一个示例表。我所做的只是添加Then I can ask <manager> for <item>作为我的第三步和以下示例表:

当我对此运行生菜时,它告诉我:

所以,我将它添加到我的 filefinder.py 文件中,并将“assert False”更改为“assert True”,只是为了让它通过并在我的控制台上看到绿色。如果我对此运行生菜,它会给我完全相同的响应,就好像它无法识别占位符<manager><item>创建一个有效的步骤一样,我猜。这是我唯一一次无法创建它要求的步骤 - 当我使用此处描述的占位符时:http: //lettuce.it/tutorial/scenario-outlines.html 奇怪的是示例显示“场景大纲: Factorials [0-4]" 因为我不知道是否需要 [0-4]。尽管我没有任何成功的示例测试,但在我的测试中似乎没有任何区别,所以我可能完全错了。

我需要做的是弄清楚为什么生菜看不到那些具有“ <placeholder>”语法内联的步骤。

有人可以为我解释一下吗?

0 投票
1 回答
279 浏览

python - 测试前冲洗 BD。设置生菜terrain.py

使用沙拉(生菜)进行测试,我按照本教程设置了我的 terraxin.py 文件,如链接所示。我安装了南,进行了初始迁移并运行了测试,但是flush在执行命令后的初始设置中出现错误migrate,获取DatabaseError: relation "xx_yy" already exists. 链接中的例子可以吗?有没有更好的方法来设置 terrain.py 文件以进行正确测试?

0 投票
2 回答
11167 浏览

python - 如何使用 Webdriver 和 Python 与此模式对话框进行交互?

我想要的只是关闭一个模式对话框,理想情况下通过执行以下操作:

给出NoSuchElementException: Message: u'The element could not be found'OK 链接文本。

当我这样做时,xpath 也一样:

我怀疑这是因为我需要把重点放在对话上。为此,我尝试过:

NoSuchElementException: Message: u'The element could not be found'班级。

也试过browser.switch_to_frame(ID OR NAME),但也找不到它作为框架。

请告诉我我遗漏了一些明显的东西。

相关框架来源(总结):

0 投票
1 回答
269 浏览

selenium - 一步设置浏览器窗口大小

我正在尝试为响应式网站编写测试,并且我想编写如下步骤:

或者

我怎样才能在生菜中做到这一点?

我找到了这个答案,但我不知道在哪里插入这个,或者这是否是最好的做法。任何帮助将非常感激。

0 投票
2 回答
600 浏览

python - 如何处理生菜中场景之间的依赖关系?

我喜欢使用 Lettuce 来定义测试用例。在许多情况下,很容易编写 Lettuce 场景,以便它们可以以原子方式运行,也可以作为功能中其他场景的一部分运行。但是,我发现 Lettuce 也是一个有用的工具,可以尝试推理和实现更复杂的集成测试。在这些情况下,将测试分解为场景是有意义的,但要定义对先前场景的依赖关系。这样我就可以运行一个场景,而不必明确定义需要运行哪些其他场景。它还在场景定义中明确了依赖关系。这可能看起来像这样:

然后我可以做类似的事情:

你如何处理这种情况?这种方法有什么我遗漏的问题吗?快速浏览 API 文档和源代码,似乎没有一种简单的方法可以通过字符串检索场景。