Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >相同按钮的黄瓜场景?

相同按钮的黄瓜场景?
EN

Stack Overflow用户
提问于 2015-10-05 08:35:30
回答 2查看 1.7K关注 0票数 0

这是我第一次吃黄瓜,所以也许我问的没错,但似乎有更好的方法:

所以现在我通过一个类似于调查的网站,这是我第一次用黄瓜完成自动化任务。它工作得很好,但就像大多数调查一样,他们的调查也有很多“填表,然后点击下一步”。

因此,在我的特写文件中,我有很多:

代码语言:javascript
运行
AI代码解释
复制
    Then I will click 'Next'

它与步骤匹配(因为按钮都有相同的文本):

代码语言:javascript
运行
AI代码解释
复制
Then(/^I will click 'Next'$/) do
  click_button('Next')
end

因此,这一步定义就像我的特性file...which中的8-9行--我想这是可以的,但是我的特性文件只是looks...ugly?我一点也不习惯Gherkin语言,因为这是我第一次,但它基本上变成了很多:

代码语言:javascript
运行
AI代码解释
复制
THEN SELECT THAT THING FROM DROPDOWN
THEN CLICK THIS RADIO BUTTON
THEN SELECT THIS BUTTON
THEN CLICK NEXT

就像一遍又一遍.我的意思是它是人类可读的,但它只是看起来凌乱?是这样吗?

我也不太确定什么时候我应该在我的特性文件中使用“解释”?就像我应该解释说,我会从下拉列表中选择'X‘(或者"X",不确定这是否重要)?或者单击“下一步”按钮或选择“是”单选按钮?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-05 09:14:48

您正在编写所谓的“命令式步骤”,这确实是一种错误的做法。

你的步骤应该是说“你在做什么”,而不是“怎么”你在做什么。

不知道您的表单的细节,让我们组成一个流程。第1页。名称第2页。人口统计资料第3页。最受欢迎的足球队第4页。最受欢迎的篮球队第5页。结果页显示他们的球队在其他调查对象中的受欢迎程度。

代码语言:javascript
运行
AI代码解释
复制
Given I enter the "Are you a Bandwagon Fan Survey"
When I enter my name
And I enter my demographics
And I choose a favorite football team
And I choose a favorite basketball team
Then I should be directed to the result page
And I should see my teams ranked on a graph

输入您的名字并单击next的详细信息应该隐藏在这个步骤中。一个尝试测试你的应用程序的人不在乎你的名字是什么,字段ID是什么或者类似的东西。他们只是想知道工作流程。

如果您正在执行一些方案以使名称页出错,则只需修改您的gherkin就可以这样说。

代码语言:javascript
运行
AI代码解释
复制
When I enter a name too long
Then I see a name too long error message

When I do not enter a name
Then I see a name missing error message

同样,您将太长的细节或错误消息留给步骤def (或以下),除非它对测试场景至关重要。我通常设置工厂女孩来处理我的数据,并且只使用场景的文本来提取当前的数据。因此,我将有一个错误消息工厂,其中一个"name_missing“和一个"name_too_long”子工厂提供正确的值。如果我需要改变或查找一些东西,一切都在同一个place...but中,最重要的是,它没有弄乱我的腹股沟。

票数 2
EN

Stack Overflow用户

发布于 2015-10-05 08:41:13

是的,我想你想要发送参数到步骤定义

代码语言:javascript
运行
AI代码解释
复制
Then I will click 'Next'

步骤定义将是

代码语言:javascript
运行
AI代码解释
复制
Then(/^I will click "([^"]*))*"$/) do |text|
  click_button(text)
end

同样,上面也将为

代码语言:javascript
运行
AI代码解释
复制
Then I will click 'OK'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32953520

复制
相关文章
ubuntu的ssh连不上_ubuntu网络连接没有显示出来
之前发在其他的博客上的,现在移动以下位置 之前的链接: http://blog.chinaunix.net/uid-69944074-id-5831708.html(原创文章) 使用Ubuntu,经常需要需要SSH远程连接,但是有时候会出现问题,难以捉摸,下面参考别人的,在结合自己的尝试总结下吧。 服务器配完ubuntu系统以及LNMP环境以后,想用WINSCP远程登录,就需要开启SSH服务才能支持。
全栈程序员站长
2022/09/21
2.6K0
c#利用Halcon的图像显示控件显示图像
?
vv彭
2020/10/27
3K0
c#利用Halcon的图像显示控件显示图像
opencv显示图像
如果说我们在些项目的过程中会频繁的查看我们的图片,我们就可以直接给它封装一个方法:
淼学派对
2023/10/14
2750
opencv显示图像
MATLAB的图像显示方法
在 MATLAB 中, 序列是用矩阵向量表示, 但它没有包含采样信息, 即序列位置信息, 为 此, 要表示一个序列需要建立两个向量; 一是时间序列 n , 或称位置序列, 另一个为取值序 列 x ,表示如下:
timerring
2023/03/04
4.9K0
MATLAB的图像显示方法
基于FPGA的图像显示
这几天一直在调试FPGA的图像显示系统,今天终于成功,图像不在闪烁,也不再边框缺失。
FPGA开源工作室
2019/10/29
1.9K0
基于FPGA的图像显示
图像特效显示(下)
移动是将图像看作一个整体,显示时不能像扫描那样,扫描方式有些像打开一副画,例如显示上部分的时候,下部分可以不现实,而移动则可以看成一块木板画,显示时必须按物理顺序进行,例如从上向下平移时,必须先显示下面的图像,后显示上面的图像,因此平移的算法比扫描难一些。
周旋
2022/08/07
1K0
图像特效显示(下)
图像特效显示(上)
准备11月份更一个新的系列,之前看的杨淑莹老师的《数字图像处理Visual Studio C++技术实现》,里面的代码都没来得及打,而且其是基于自定义的图像类实现的,这个系列就把所有例程移植为opencv-C++实现,也就是算法逻辑用C++实现,图像对象使用opencv自带的图像类。
周旋
2022/08/07
1.1K0
图像特效显示(上)
【图像篇】OpenCV图像处理(二)---图像读取与显示
在上一篇文章中,我们简要介绍了图像的基础知识,包括图像彩色通道,像素,分辨率等知识,学会这些东西,我们才能更好的理解图像处理的各种操作,今天,我们将会用上一篇文章(【图像篇】opencv图像处理(一)---图像基础知识)提到的工具--OpenCV,并用python语言调用OpenCV接口来进行实际的代码操作,一起来看看吧!
用户5410712
2022/06/01
1.2K0
【图像篇】OpenCV图像处理(二)---图像读取与显示
【OpenCV】图像的读入与显示
相关工程文件下载: 链接:https://pan.baidu.com/s/1jfDQTdOQqIf34-D5Nx6big 密码:0d13
EdenChen
2018/04/17
1.7K0
【OpenCV】图像的读入与显示
圆形收缩显示图像效果
<!doctype html> <html> <head> <style> div{width:300px;height:300px;border-radius:50%;overflow:hidden;position:relative;} div img{width:100%;height:100%;} div span{position:absolute;left:0;top:0;width:100%;height:100%; border-color:black; border-style:sol
用户1730674
2018/05/02
1.5K0
圆形收缩显示图像效果
创建maven项目没有显示项目结构
有一些同学创建Maven项目尤其是从git库中拉取了Maven项目之后没有显示项目结构,该怎么办??
明明如月学长
2021/08/31
1.1K0
创建maven项目没有显示项目结构
Sixel:改变终端图像显示的革命
Sixel 源自“六个像素”(six pixels),是一种用于计算机终端中图像显示和传输的编码方法。最初广泛应用于计算机终端领域的图形和图像显示,Sixel 将图像划分为块,每个块由六个像素组成。这些图像块被表示为单个字符,这些字符可以是 ASCII 字符或其他字符集中的字符。
程序那些事儿
2023/10/14
1.1K0
Sixel:改变终端图像显示的革命
主动发送指令,但是没有反应,日志显示鉴权失败解决办法
这里少了一个空格
快乐的小白
2023/04/06
5540
主动发送指令,但是没有反应,日志显示鉴权失败解决办法
opencv videocapture参数_opencv显示图像
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/17
1.4K0
python PIL 打开\显示\保存图像
使用python进行数字图片处理,还得安装Pillow包。虽然python里面自带一个PIL(python images library), 但这个库现在已经停止更新了,所以使用Pillow, 它是由PIL发展而来的。
狼啸风云
2020/10/28
3.5K0
python PIL 打开\显示\保存图像
(译)SDL编程入门(2)在屏幕上显示图像
注意:从现在开始,教程将只涉及源代码的关键部分。如果想看完整的程序,你必须下载完整的源码。
arcticfox
2020/09/24
2.8K0
OpenCV中图像的读取,显示与保存
相关函数:cv2.imread()、cv2.imshow()、cv2.imwrite()
py3study
2020/01/19
3.1K0
Python+OpenCV的图像读取、显示、保存
一、图像的读取 图像的读取主要函数是cv2.imread()。 函数格式:Mat cv::imread (const String & filename, int flags = IMREAD_COLOR) 功能:读取图片文件。 参数: windows位图:后缀名为bmp JPEG文件:后缀名为jpeg/jpg JPEG2000:后缀名为jp2 便携式网络图像文件:后缀名为png TIFF文件:后缀名为tiff/tif 参数二是整型的flag,标志,默认值为IMREAD_COLOR,取值有如下几种: IMREAD_UNCHANGED:如果设置,则按原样返回加载的图像(带有Alpha通道,否则会被裁剪)。 IMREAD_GRAYSCALE:如果设置,总是将图像转换为单通道灰度图像读入。 IMREAD_COLOR:如果设置,总是将图像转换为3通道BGR彩色图像读入。 IMREAD_ANYDEPTH:如果设置,当输入具有相应深度时返回16位/ 32位图像,否则将其转换为8位。 IMREAD_ANYCOLOR:如果设置,图像将以任何可能的颜色格式读取。 IMREAD_LOAD_GDAL:如果设置,总是使用GDAL驱动程序加载图像。 IMREAD_REDUCED_GRAYSCALE_2:如果设置,总是将图像转换为单通道灰度图像,图像尺寸减小1/2。 IMREAD_REDUCED_COLOR_2:如果设置,总是将图像转换为3通道BGR彩色图像,图像尺寸减小1/2。 IMREAD_REDUCED_GRAYSCALE_4:如果设置,总是将图像转换为单通道灰度图像,图像尺寸减小1/4。 IMREAD_REDUCED_COLOR_4:如果设置,总是将图像转换为3通道BGR彩色图像,图像尺寸减小1/4。 IMREAD_REDUCED_GRAYSCALE_8:如果设置,总是将图像转换为单通道灰度图像,图像尺寸减小1/8。 IMREAD_REDUCED_COLOR_8:如果设置,总是将图像转换为3通道BGR彩色图像,图像尺寸减小1/8 常用的是前三种。因为flags是整型,所以传入数值也行: flags >0:等同于IMREAD_COLOR。 flags =0:等同于 IMREAD_GRAYSCALE。 flags <0: 等同于IMREAD_UNCHANGED。 通常是给1、0、-1,给其他整型也是可以的。 返回值:Mat类型。从opencv2开始,用于存放图像的数据类型就是Mat, 二、图像的显示 图像读取后,下一步就是再把图像显示出来,主要函数有:cv2.namedWindows()、cv2.imshow()。再另外再介绍三个函数cv2.waitKey()、cv2.destroyWindow()、cv2.destroyAllWindows()。 2.1 cv2.namedWindows函数介绍 void cv::namedWindow (const String & winname,int flags = WINDOW_AUTOSIZE ) 功能:创建一个窗口。 参数:参数一是winname,给创建的窗口起一个名字,以后通过这个名字调用该窗口;参数二整型的flags,定义窗口的属性,默认值是WINDOW_AUTOSIZE,其他取值如下所示: WINDOW_NORMAL:用户可以调整窗口大小(不受约束)/也可以使用将全屏窗口切换为正常大小。 WINDOW_AUTOSIZE:用户无法调整窗口大小,窗口大小随显示图像的大小而变化。 WINDOW_OPENGL:带有opengl支持的窗口。 WINDOW_FULLSCREEN:将窗口更改为全屏。 WINDOW_FREERATIO:不遵循图像的比例调整图像后在窗口显示 WINDOW_KEEPRATIO:根据图像的比例调整图像后在窗口中显示 2.2 cv2.imshow函数介绍 void cv::imshow (const String & winname, InputArray mat ) 功能:在指定窗口显示图像。 参数:参数一是窗口名;参数二设置为要显示的图像。 注意此函数之后应该跟随函数waitKey,指定窗口显示多少毫秒。 2.3 cv2.waitKey函数介绍 int cv::waitKey (int delay = 0) 功能:等待按键或延迟多少毫秒。 参数:整型的delay,默认值是0。设置为0表示永久等待按键,设置为非零,表示延迟delay毫秒。该函数仅在创建至少一个窗口并且窗口处于活动状态时才起作用。 2.4 cv2.destroyWind
菲宇
2019/11/12
3.8K0
点击加载更多

相似问题

当我想让它扭曲时,图像没有显示出来

12

图像没有显示出来

10

图像没有显示出来

24

JPG图像没有显示在反应Js中

14

反应:没有显示图像

35
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档