<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Using Node.js (Playwright) how to utilize columnHeader; rowHeader instead of nth-child in Developer</title>
    <link>https://community.fabric.microsoft.com/t5/Developer/Using-Node-js-Playwright-how-to-utilize-columnHeader-rowHeader/m-p/1393939#M25874</link>
    <description>&lt;P&gt;Trying to use playwright to automate testing Power BI reports like the user would click. I am trying to "get" a value from a visual. I have it working using the&amp;nbsp;nth-child(#) or nth-of-type(#).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Example.&lt;/P&gt;&lt;P&gt;These work to click or "get" the value:&lt;/P&gt;&lt;P&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;await&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;page&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;click&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;(&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; div:nth-of-type(1)'&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="EOP SCXO24918101 BCX0"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;test4&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;page&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;textContent&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; div:nth-of-type(1)'&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;console&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;log&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;(&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;test4&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="EOP SCXO153553568 BCX0"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;test5&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;page&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;textContent&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; :nth-child(1)'&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;console&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;log&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;(&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;test5&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class="EOP SCXO153553568 BCX0"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;elementByClass&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;page&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;$&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; div:nth-of-type(1)'&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;innerText&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;elementByClass&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;innerText&lt;/SPAN&gt;&lt;SPAN&gt;()&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;console&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;log&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;innerText&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a way to not use the "nth-child" and actually reference the "div title=rowHeader name" and the "div title = columnHeader name" to "get" the value in that cell of this visual. example below get 258,886.064&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="cell.JPG" style="width: 711px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/363505i9E7AEE7C83FAD860/image-size/large?v=v2&amp;amp;px=999" role="button" title="cell.JPG" alt="cell.JPG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 24 Sep 2020 19:13:28 GMT</pubDate>
    <dc:creator>wadezone</dc:creator>
    <dc:date>2020-09-24T19:13:28Z</dc:date>
    <item>
      <title>Using Node.js (Playwright) how to utilize columnHeader; rowHeader instead of nth-child</title>
      <link>https://community.fabric.microsoft.com/t5/Developer/Using-Node-js-Playwright-how-to-utilize-columnHeader-rowHeader/m-p/1393939#M25874</link>
      <description>&lt;P&gt;Trying to use playwright to automate testing Power BI reports like the user would click. I am trying to "get" a value from a visual. I have it working using the&amp;nbsp;nth-child(#) or nth-of-type(#).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Example.&lt;/P&gt;&lt;P&gt;These work to click or "get" the value:&lt;/P&gt;&lt;P&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;await&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;page&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;click&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;(&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; div:nth-of-type(1)'&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO24918101 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO24918101 BCX0"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="EOP SCXO24918101 BCX0"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;test4&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;page&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;textContent&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; div:nth-of-type(1)'&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;console&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;log&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;(&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;test4&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="EOP SCXO153553568 BCX0"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;test5&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;page&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;textContent&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; :nth-child(1)'&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;console&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;log&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;(&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;test5&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="TextRun SCXO153553568 BCX0"&gt;&lt;SPAN class="NormalTextRun SCXO153553568 BCX0"&gt;);&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;SPAN class="EOP SCXO153553568 BCX0"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;elementByClass&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;page&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;$&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;'.bodyCells &amp;gt; :nth-child(1) &amp;gt; :nth-child(1) &amp;gt; :nth-child(4) &amp;gt; div:nth-of-type(1)'&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;const&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;innerText&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;await&lt;/SPAN&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;SPAN&gt;elementByClass&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;innerText&lt;/SPAN&gt;&lt;SPAN&gt;()&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;console&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;log&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;innerText&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a way to not use the "nth-child" and actually reference the "div title=rowHeader name" and the "div title = columnHeader name" to "get" the value in that cell of this visual. example below get 258,886.064&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="cell.JPG" style="width: 711px;"&gt;&lt;img src="https://community.fabric.microsoft.com/t5/image/serverpage/image-id/363505i9E7AEE7C83FAD860/image-size/large?v=v2&amp;amp;px=999" role="button" title="cell.JPG" alt="cell.JPG" /&gt;&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 24 Sep 2020 19:13:28 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/Developer/Using-Node-js-Playwright-how-to-utilize-columnHeader-rowHeader/m-p/1393939#M25874</guid>
      <dc:creator>wadezone</dc:creator>
      <dc:date>2020-09-24T19:13:28Z</dc:date>
    </item>
  </channel>
</rss>

