问题标签 [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.
python - 将生菜与 TeamCity 集成
是否可以在 TeamCity 中使用生菜?
我知道 unittest 和 nose 是可能的,但由于 lettuce 不使用标准测试运行器,我不能使用teamcity python 测试运行器。
如果我想保留 TeamCity,我应该使用另一个 BDD 测试框架吗?
django - 使用 django 测试设置生菜时出错
我正在尝试将生菜与标准 django 测试联系起来。生菜单独工作时效果很好。但是,当我从 django.test.client 导入客户端时,我收到错误消息:“无法导入设置,因为环境变量 DJANGO_SETTINGS_MODULE 未定义。”
我的 steps.py 看起来像:
我收到以下错误
我试图在init .py 文件中设置 DJANGO_SETTINGS_MODULE 变量,但它也不起作用。有人可以帮我弄这个吗?
python - 生菜:在场景大纲之前运行代码
我将生菜 0.1.35 与 Python 2.6 一起使用,我注意到当我定义场景大纲时,使用@lettuce.before.each_scenario
装饰器定义的代码不会在场景大纲的每个实例之前运行 - 当我将每个场景定义重复为不同的场景时,这代码运行。
如何在同一场景大纲定义的每个场景之间运行一些代码?
python - 生菜循环进口地雷
我在 PyDev 中设置了 3 个项目,它们的项目引用列表中都有彼此。出于说明目的:
再举一个例子,测试人员:
和 mod_bar:
我所看到的是,ImportError: cannot import name
当我从 tester 调用它们时,来自 foo 的一些导入将进入 mod_bar (至关重要的是,一些但不是全部)。如果我只运行 mod_bar,导入工作正常,如果我从 mod_bar 删除依赖项和导入并从测试器运行它,它工作正常;只有当一个类的子集从 f 导入到 b 和 t 并且我从 t 运行时,它才会中断。我已经尝试阅读有关导入如何工作的文档并在谷歌上搜索解决方案,但我没有找到任何可以指出我正确方向的东西。我有一种感觉,这与 Python 内部的一些晦涩的部分有关,但我不知道那是什么。
tester
我认为这准确地代表了正在发生的事情,尽管从to的引用mod_bar
是间接的(tester
是我在处理代码时用来监视代码的文件,而mod_bar
实际上是生菜,这会增加一层复杂性地形文件,而其他一些正在调用的模块正在加载生菜tester
。)任何人都可以为我提供至少一些地方来开始寻找有关如何解决此问题的信息吗?
编辑:
我正在查看更多内容,特别是堆栈跟踪:
terrain = fs.FileSystem._import("terrain")
是否会导致lettuce.__init__()
循环进口让我感到头疼?
python - 启动 lettuce 测试套件时控制环境的方法
我正在构建一个测试框架,它将具有由 Python/Lettuce 支持的顶级 Gherkin 接口。我们希望将其构建到我们的持续集成基础架构(Hudson)中,并让相同的测试可以在任何环境(dev-int、qa-int、stage 等)上轻松运行。由于您无法在命令行上将参数传递给测试,因此我一直在考虑的方法是:
哈德逊工作
- 在机器上动态构建配置文件的子作业,该文件将根据所需的测试环境运行测试
- 子作业在跑步机上启动生菜,然后地形文件从动态配置中获取值以针对正确的环境运行测试
- 子作业删除配置文件
虽然这会起作用,但对我来说这似乎是一个 hacky 解决方法。我一直在谷歌搜索,但似乎即使是写生菜的人也认为配置不应该是必要的,如果你想要的话,你应该在测试之外设置环境变量,然后从内部地形读取它们。没有重新设计生菜来传递命令行参数,谁能想到其他方法来实现这个目标?
python - 生菜和奇怪的字符
我试着运行生菜。通常可以,但是当我使用时:
有很多颜色命令,例如:
写入文件时如何摆脱它?
例如 cucumber 在控制台打印漂亮的颜色,在 less 和 file 中打印普通文本。
namespaces - 如何避免 BDD(生菜)中的名称冲突
我正在用生菜在 Django 中学习 BDD,同时我想到不同场景中的两个步骤碰巧具有相同名称的情况,例如,
上述步骤this是冲突的步骤,碰巧在多个不同含义的场景中定义。然后将针对此步骤的所有出现执行此步骤的以下测试代码。
我的问题是,是否有一种命名空间机制允许我们为具有相同名称但在不同场景中的步骤创建不同的测试代码?例如,我期望以下测试代码或类似的东西:
python - 在生菜测试步骤中传入多个参数
通常每个生菜测试步骤都需要一个参数,有没有办法在一个步骤中传递多个参数?
像,我可以有这个:
python - 如何指定要运行的生菜场景
如何指定运行哪个生菜场景?
在使用python lettuce测试框架时,我经常遇到这种情况,一个场景失败了,然后我想放大这个场景来修复这个场景
我们可以指定在功能文件中运行哪个生菜场景吗?
lettuce - 使用生菜“世界”时出现属性错误
我有两个文件:
步骤.py:
测试功能:
对他们运行生菜会返回:
关于可能出现问题的任何想法?