问题标签 [cucumber-cpp]
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.
c++ - 处理多个功能文件时 Cucumber-cpp 上的链接器错误
我已经使用 BDD 框架Cucumber-cpp一段时间了,没有太多问题,但是扩展模块的功能集被证明会引发一些链接器错误。
设置:
- Linux
- 黄瓜-cpp
- 生成文件
如果我从以下内容开始:
和
当我用 make 构建它时,它生成测试二进制文件没有问题,并且通过 cucumber 执行按预期工作。
但是如果我添加另一个功能文件(描述另一个要测试的功能)
与相关的测试文件,
编译这两个文件现在给出以下链接器错误:
查看生成的 obj 文件,给出:
问题看起来像 cukeRegId 函数在 2 个 obj 文件中具有完全相同的修饰名称,从而导致链接器错误。现在,我对如何防止这种情况感到困惑。
cucumber - 用 Cucumber 截图
我只是学习如何使用黄瓜。你能告诉我如何完成这段代码吗?
您可以使用以下代码片段为未定义的步骤实现步骤定义:
frank - 使用 Frank/Cucumber 检查 fot 瞬态消息
我对弗兰克/黄瓜很陌生,希望你能提供帮助。我正在尝试测试 iOS 应用程序并正在编写测试以确保使用错误凭据登录失败。我可以输入凭据并尝试登录,但这会导致显示大约 4 秒钟的消息,然后消失并将用户返回到登录屏幕。我正在尝试使用语法
然后我等着看“错误信息”
但我只是在失败前进入了 4 分钟的超时。还有什么我应该使用或考虑捕获和识别这个瞬态消息的东西吗?
谢谢,
拍
selenium - 黄瓜不运行硒代码
当我尝试运行我的代码时,它只显示黄瓜骨架。我使用 JUnit 运行器类作为 JUnit 测试套件。
下面是所有三个类的代码。
特点是:
硒类:
JUnit类:
步骤定义:
显示的输出是:
boost - Cucumber-cpp 步骤定义运行器立即退出
根据cucumber-cpp github repo和cucumber-cpp 步骤定义快速入门指南中的说明,我创建了我的黄瓜步骤定义文件。功能及其 step_definition 文件位于features/
文件夹下,cpp 代码使用 cucumber-cpp 标头构建,并按照说明链接到 libcucumber-cpp.a。
Cucumber 步骤定义运行器应作为单独的进程继续运行,并且 cucumber 命令应在运行器运行时执行。实际上,cucumber-cpp 存储库中的示例就是这样执行的,但是当我使用 gtest 或 boost test 创建自己的步骤定义时,它们会立即执行,而无需等待来自 cucumber 的调用。
而不是立即执行,它应该什么都不说,等待黄瓜调用。我将 cucumber-cpp 中的示例代码复制粘贴到我的项目中,它们也立即退出。因此,即使 cucumber-cpp 的示例和我的示例之间没有源代码差异,它们的行为也不同。我怀疑 cmake 构建脚本可能与不同的库链接,但链接过程也完全相同。
有人知道为什么会发生这种情况吗?
这是重现我遇到的错误的最少代码的存储库。https://github.com/onatbas/CucumberCppTest 完整的跟踪在自述文件中。
黄瓜文件在 下,只有一个与这里features/
相同的功能
运行器可执行文件定义在tests/CMakeLists.txt
快速参考:这是步骤定义文件 AdditionTest.cxx
这是添加可执行文件的 tests/CMakeLists.txt 文件。
c++ - Cucumber-CPP:示例中未定义的所有步骤
我正在关注这个Cucumber-CPP github 页面来设置框架。我有发布版本v0.4。不幸的是,没有检测到任何步骤定义。
当我运行cmake --build build --target features来检查常见黄瓜测试套件的实现时,我得到以下结果:
[ 3%] 为“gtest”执行更新步骤
[7%] 为“gtest”执行配置步骤——gtest 配置命令成功。另请参阅 /Users/xxxx/Downloads/cucumber-cpp/build/gmock/src/gtest-stamp/gtest-configure-.log [ 11%] 为“ gtest
”执行构建步骤——gtest 构建命令成功。另请参见 /Users/xxxx/Downloads/cucumber-cpp/build/gmock/src/gtest-stamp/gtest-build-.log [15%] ' gtest
' 没有安装步骤
[19%] 已完成 'gtest'
[30 %] 构建目标 gtest
[100%] Built target cucumber-cpp UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
13个场景(13个未定义)
52个步骤(52个未定义)
0m0.031s
我的环境:
Ubuntu 15.04 64bit
Boost 1.55.0.2
Ruby 2.3.3
gcc 4.9.2
CppSpec 最新开发
GoogleTest/Mock 1.7.0
aruba (0.14.2)
cucumber (2.4.0) gherkin
(4.0.0)
rspec (3.4.0)
multi_json ( 1.12.1)
c++ - 如何解决我在项目中使用的两个库使用的 Boost::Program_Option 之间的歧义?
我在我的代码中使用了 cucumber cpp 和另外一个第三方库,但是在运行时我遇到了分段错误,最后我找到了这个错误的根本原因,这是失败的,因为两个库都使用Boost::program_Option
它意味着有两个定义相同的目的。
你能帮我解决这个问题吗?
c++ - Cucumber-cpp required software for running example
After cloning and installing (I believe in the proper way - I followed this tutorial) I go to to ~\Cucumber\Cucumber\cpp\examples\Calc
and type cucumber --init
.
I get
Followed by
While I understand this is a basic mistake I really could not find a solution for this. I visited most links that show up when I type it in google.
My questions are:
- I am working on a network, would that cause issues with the wiring?
- Are there any extra steps required to run the example? The documentation mentions CMake but I did not find its usage
- What other issues might cause this?
- Could you point me to any good tutorial to getting started with cucumber-cpp? (written only)
This computer is a Windows 7 Professional
EDIT:
If I use the given port in the wire file I get:
I also could not fix this based on any of the information I found.