如何将多个文本存储到变量(cucumber/capybara)?

How to store a number of a text to a variable (cucumber/capybara)?

我正在用 Cucumber 和 Capybara 创建一个票证,但是当它被创建时,我在 HTML 页面上收到一条带有确认消息的警报:

工单6168218已创建

我如何才能将此文本的编号存储在变量中?

这是HTML代码:

`<div id="messages" class="clearfix">
  <div class="success global alert-default form-section">
    <ul>
        <li><i class="fa fa-check"></i>Ticket 6168218 created.</li>
    </ul>
      <a href="javascript:;" class="close-alert"><strong>x</strong></a>
   </div>
 </div>`

您可以通过

获取元素的文本
find('.success li').text #change the .success selector if you need more specificity

然后您可以使用正则表达式提取数字。加起来就是

ticket_no = /Ticket (\d+) created/.match(find('.success li').text)[1]