Cercare il modo migliore per determinare se un elemento è veramente vuoto.L'elemento di asserzione di Capibara è vuoto
<table id="foo">
<tr>
<td>Cell One</td>
<td></td>
</tr>
</table>
Ma entrambi questi ritorno true
:
find("#foo td:nth-child(1)").should have_content('')
find("#foo td:nth-child(2)").should have_content('')
Così ho usato questo:
find("#foo td:nth-child(1)").text.should == 'Cell One'
find("#foo td:nth-child(2)").text.should == ''
che sembra funzionare, ma non controllare per vedere se l'elemento può contenere altri elementi. Ad esempio può contenere un'immagine, un collegamento o un intervallo.
Posso controllare ciascuno di quelli singolarmente (immagine, collegamento o intervallo), ma sembra che ci dovrebbe essere un modo migliore.
C'è un modo per verificare se l'elemento è vuoto?
Per le vostre esigenze, è la seguente vuoto? '
Questa è una buona domanda, ma direi di no. –
Probabilmente sarebbe più semplice controllare se la sua proprietà innerHTML è '" "', altrimenti puoi anche controllare '.children.length === 0' ma fallisce per l'esempio precedente –