如果我们在span标记中有动态内容填充, 例如,
.detail
%label Sku:
%span.#sku.detail= @deal.sku
当上述示例中的交易没有关联sku时,html中的span元素将如下所示 没有任何内容。
<div class="detail">
<label>Sku:</label>
<span id="sku" class="detail"></span>
</div>
如果定义SitePrism元素以查找例如
element :sku, "#sku"
如果&#34; @ sample_page&#34;是指我的Site Prism页面,我将sku称为
@sample_page.sku.text
我们将获得Capybara :: ElementNotFound Exception
答案 0 :(得分:0)
为避免这种情况,我们可以查看以下内容
@sample_page.has_sku?
如果该元素可用,则根据需要继续执行操作。
这将省略Capybara :: ElementNotFound Exception
答案 1 :(得分:0)
当跨度没有内容时,它不可见,因此找不到。如果您仍想找到它,请将您的元素更改为:
element :sku, "#sku", visible: false