- objective-c - iOS 5 : Can you override UIAppearance customisations in specific classes?
- iphone - 如何将 CGFontRef 转换为 UIFont?
- ios - 以编程方式关闭标记的信息窗口 google maps iOS
- ios - Xcode 5 - 尝试验证存档时出现 "No application records were found"
我有一个使用 Cucumber 和 Capybara 进行测试的 Rails 元素。我有一个使用 Dropzone.js 的文件上传页面。
我的上传使用对话框或拖放效果很好。测试是另一回事。
我的表单中有以下字段:
<input id="photo_image" multiple="multiple" name="image" type="hidden">
但是,在步骤定义中,我尝试了几种查找和附加文件数据的方法,但都不起作用。
我试过 fill_in:
fill_in "photo_image", with: photo
我试过使用 css 选择器查找:
find('#photo_image').set photo
我试过用 xpath 查找:
find(:xpath, "//input[@id='photo_image']").set photo
但是他们都没有看到隐藏的字段。
Unable to find css "#photo_image" (Capybara::ElementNotFound)
Unable to find xpath "//input[@id='photo_image']" (Capybara::ElementNotFound)
Unable to find field "photo_image" (Capybara::ElementNotFound)
是否有任何测试方法可以使用 Dropzone.js 处理上传还是没有希望?
最佳答案
capybara 2.1 doesn't find hidden elements by default .
您可以将 ignore_hidden_elements
设置为 false:
capybara .ignore_hidden_elements = false
或者在你的方法中添加:visible
选项:
attach_file('photo_image', path_to_file, visible: false)
我更喜欢第二种变体,因为在大多数情况下,在测试中找到的元素是可见的,如果其中一个元素被隐藏,最好让 Capybara 抛出异常。
注意::visible
选项也被大多数内部使用 Capybara::Query
的 Capybara 方法支持(比如 find
,all
, has_css?
, have_selector
等)
关于css - 如何使用 Rails、Cucumber 和 Capybara 测试 Dropzone.js 上传?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16722291/
我正在使用 dropzone js,它在我需要 dropzone 的页面上运行得很好。在任何其他页面上,它都会给我一个“无效的 dropzone 元素” 错误消息并导致我的其他 javascript
我已经设置了带有可点击元素的 dropzone。单击该按钮会导致 dropzone 打开文件选择器两次,而不是一次,第二次会在选择第一个文件后立即打开。 初始化代码是: Dropzone.autoDi
我正在尝试使用Dropzone.js重新创建放置的文件/文件夹的文件夹结构。 有没有办法访问每个文件的完整路径,以便可以在php端重新创建目录结构? 最佳答案 这是一种简单的方法,您可以另外发送某些文
我有一个 DropZone除了一个异常(exception),表单工作得很好,我似乎无法根据需要精确地限制文件类型。 使用 acceptedFiles: "image/*"暗淡所有不是图像的文件夹和文
我正在尝试使用 dropzone.js FAQ 以编程方式将现有图像添加到我的 dropzone作为指南: // Add the existing image if it's there. // he
我正在使用 dropzone 来处理文件上传,并且我正在使用预览容器来指定应显示上传文件的位置。 所以我的配置如下(只剩下相关部分): var myDropzone = new Dropzone("#
我想限制 Dropzone 在您单击指定的 dropzone 区域时只选择一个文件,但我找不到任何参数来执行此操作。现在,当我选择一个文件并点击打开时,Dropzone 会立即再次弹出打开文件对话框而
我想上传一个文件并根据文件大小设置宽度和高度以适应给定的 div。例如: div size: width: 600px, height: 300px img size: width: 1200px,
我正在使用 Dropzone.autoDiscover = false 并使用 element.dropzone() 创建我的放置区。我想在另一个容器中显示处理后的文件,所以我使用了 previews
我想在我的 Web 应用程序中创建一个拖放区,用于上传图像并使用 ImageMagick 操作它们。我的拖放区始终自动上传所有图像,并在拖放区中的图像预览上显示“对象对象”错误。服务器上的上传工作正常
我已经在我的 ASP.MVC 4 上成功实现了 dropzone.js。 但我需要缩短下拉区域的高度并翻译文本。 有什么简单的方法可以做到吗?我试图修改 CSS 没有结果;下拉区域仍然采用相同的高度。
在 dropzone (或vue2dropzone),有没有办法禁用文件上传并且仅**允许通过拖放添加到dropzone。 我有一个设置,我使用自定义预览模板成功地在拖放区中设置了拖放到子区域(可单击
是否可以使用外部按钮通过 Dropzone 插件添加文件?我找到了 documentation但它没有回答我的问题。确实,我无法使用诸如单击之类的处理程序事件添加文件。有解决办法吗? 最佳答案 我猜您
当我使用 dropzone 上传多个文件时,图标显示在框外。我这张图,下图中的dropzone表格是黄色的,但是当我选择很多文件时,它们会溢出并显示在表格之外。我的 dropzone 的 CSS 是
最新的 dropzone.js 版本似乎不适用于 IE11。如何测试? 1) 打开 https://www.dropzonejs.com/examples/simple.html在 IE11 2) d
我正在尝试使用Dropzone.js在我的 Laravel 网站上。 这是我的设置: index.blade.php: @csrf 在我的 app.js 文件中,我有以下代码: window.
我正在为我的网站使用 dropzone.js 并尝试在上传之前重命名文件。最近 dropzone 添加了新函数 renameFile,我无法开始工作。这是错误还是我对功能的理解有误? console.
我正在制作一个比较应用,它有两个不同的拖放区域。每个都应该像一个单独的拖放区(用于替换或删除每个图像)。 问题: var previewaDropzone = new Dropzone("div#pr
我觉得我在这里失去了理智。我已经阅读了与我的问题相关的所有线程,我添加了“Dropzone.autoDiscover = false;”但似乎没有任何效果。 我不断得到: Uncaught Error
我在我的应用程序上使用 react-dropzone,并希望在一个页面上有多个 dropzones 来预览多个图像。例如,我希望能够将英雄图像拖放到在页面顶部显示英雄图像的拖放区。然后,我想将不同的图
我是一名优秀的程序员,十分优秀!