Files
openobserve/.github
ktx-akshay cb81c7c7ed test: pending pom and modified existing test file (#7459)
### **PR Type**
Tests, Enhancement


___

### **Description**
- Add `data-test` attributes to dashboard components for reliable
selectors

- Refactor Playwright tests to Page Object Model structure

- Convert dashboard, logs, visualize specs to use reusable POM classes

- Introduce panel configs page object for panel settings


___

### **Changes diagram**

```mermaid
flowchart LR
  A["Vue components (`data-test` hooks)"] --> B["Page Object Model classes"]
  B --> C["Refactored Playwright tests"]
```


___



### **Changes walkthrough** 📝
<table><thead><tr><th></th><th align="left">Relevant
files</th></tr></thead><tbody><tr><td><strong>Configuration
changes</strong></td><td><details><summary>2 files</summary><table>
<tr>
<td><strong>PanelLayoutSettings.vue</strong><dd><code>Add `data-test`
hooks to settings inputs/buttons</code>&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-c9ba85de5d831d5d661bbc41366b93430d0459a64b38989b6e6c4b0ce23591a9">+3/-0</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>

<tr>
<td><strong>ExportDashboard.vue</strong><dd><code>Add `data-test`
attribute to export button</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
</dd></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-f474d1a47791a2e4a79be607aff5c932bbb980ea264297e0fdeb123e84f2b704">+1/-0</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>

</table></details></td></tr><tr><td><strong>Tests</strong></td><td><details><summary>3
files</summary><table>
<tr>
<td><strong>dashboard.spec.js</strong><dd><code>Refactor dashboard spec
to Page Object Model</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-d0fa0042783dc109334b05266edce228bad97adcb568dd1e447920596238e9b4">+564/-1013</a></td>

</tr>

<tr>
<td><strong>visualize.spec.js</strong><dd><code>Refactor visualize spec
with POM classes</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
</dd></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-d144f23552ec150db375c89e52c3a53ede9ff3fa5dcd6092694fbe0a308d22ec">+380/-284</a></td>

</tr>

<tr>
<td><strong>dashboard-multi-y-axis.spec.js</strong><dd><code>Update
multi Y-axis tests to use POM</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-e90516a105c0b17c8e04c18e2b67ac10af213dbdd208fa4414cdcb7e377e6ee5">+38/-47</a>&nbsp;
</td>

</tr>

</table></details></td></tr><tr><td><strong>Enhancement</strong></td><td><details><summary>1
files</summary><table>
<tr>
<td><strong>dashboard-panel-configs.js</strong><dd><code>Add panel
configs page object stub</code>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </dd></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-f9ea2c35d253aa0c99b5c165f575a883ee898f981dc0a451502e230f03a0995c">+3/-0</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>
</table></details></td></tr><tr><td><strong>Additional
files</strong></td><td><details><summary>29 files</summary><table>
<tr>
  <td><strong>playwright.yml</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-7afcd2d8f7b49bda74843f209eefb7b2da45f7e7803bf2e4bd636699b76aa2d3">+24/-30</a>&nbsp;
</td>

</tr>

<tr>
  <td><strong>dashboard-chart.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-573a312576fce62d8e14f2bbb5f9b7d9a552d746304dce3d79862edddd24de76">+27/-61</a>&nbsp;
</td>

</tr>

<tr>
  <td><strong>dashboard-create.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-c3c5add2b934580a91a79bb580634b70e2376b0452113008a0911102db3863e2">+48/-13</a>&nbsp;
</td>

</tr>

<tr>
  <td><strong>dashboard-drilldown.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-d89e91ffb0de2f6f1499ebfe5d9f5072e5e7bc7b166e2e4991b4a51dde1f708f">+84/-0</a>&nbsp;
&nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-filter.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-cc4b5c84fa9084ee18943e000284fe9fbdaed9605503109d90a00a95871940a2">+217/-0</a>&nbsp;
</td>

</tr>

<tr>
  <td><strong>dashboard-folder.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-2c20ba97d8e487482cb8fafab72dc6ac96b8a8935ca7e16383afb6173372082e">+17/-7</a>&nbsp;
&nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-list.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-59cd31661ce4f41cef3fe0c42068784ea636a62817982cb3c5e1aed16880c980">+50/-10</a>&nbsp;
</td>

</tr>

<tr>
  <td><strong>dashboard-panel-actions.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-d29713fdcc11cbc93bda29da5261da389226cd718e4292a1c2cd96629f573a80">+7/-0</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-panel-edit.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-ea18ab21ebeaac575078abcbc4f986502578ec39e2c9cb86437c821d0dabc9b5">+79/-1</a>&nbsp;
&nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-refresh.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-aab6b522710463c41744173c6a7dce2946364d5c15610edd7a6343f126f468ff">+33/-5</a>&nbsp;
&nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-settings.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-1a07f3f14dacb06180bc02437804d175886aeacda98f5b0ef507a274e5ddd485">+323/-26</a></td>

</tr>

<tr>
  <td><strong>dashboard-share-export.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-4daa5b1100c694371286cd39d1145ace5fb16497d44214b17a0ac03050526617">+25/-0</a>&nbsp;
&nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-variables.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-67d38d39bb67f4a0cbfa473ee81ad50b1fffebc40c635417e58905f3c865a6e2">+8/-1</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard.import.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-5ebf681abb1567a1dede4b6763e199eb5db437c36c7b3829de98da60f27715e0">+37/-0</a>&nbsp;
&nbsp; </td>

</tr>

<tr>
  <td><strong>visualise.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-c14ac1db3e4aa86190d7525e8e38c410bcbbae7f46b01890e74937cc11be67e6">+225/-0</a>&nbsp;
</td>

</tr>

<tr>
  <td><strong>custom-charts.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-bb0672bd78ba9a59df96a08374f5fd77f52a47792ad409921fd25457bcf0a9e2">+49/-87</a>&nbsp;
</td>

</tr>

<tr>
  <td><strong>dashboard-filter.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-c48a796836a25b90a9f94af58273ea9fd1b36248ca8689075c3d48be77de1468">+459/-948</a></td>

</tr>

<tr>
  <td><strong>dashboard-folder.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-bdb8f953e350e378f4196ea1b74fa60961dbe7e87ea34b77e551e77983ab0360">+7/-7</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-general-setting.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-ef759468f0819a05fc8db111b83188c56d602c015c126e1b656f4206f50f880c">+74/-176</a></td>

</tr>

<tr>
  <td><strong>dashboard-geoMap.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-6ae8394cd6b915e6d55a179cf6c7dc32992b8ebbd5d9aac177c0cbd1b9f351b3">+7/-3</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>

<tr>
  <td><strong>dashboard-import.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-4d23d07530d81a854e1e5f91ffbdcbbf5ff33eecf73a1e13819e3194b324a930">+204/-175</a></td>

</tr>

<tr>
  <td><strong>dashboard-tabs-setting.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-a532f52076aa0cae0a5fce5ac4dcf1738ffc98e5e9a5bfbd24ca0ad1b0cd4891">+172/-230</a></td>

</tr>

<tr>
  <td><strong>dashboard-transpose.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-da631007cea76a4bc59e4acd1195b59ae4131cd5208d21a9c1f94d3913911dc4">+139/-470</a></td>

</tr>

<tr>
  <td><strong>dashboard-variables-setting.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-1a76f44cf5e01a03b14f502bd9d624d17a48801996df4dbfb82b17fd52e83c64">+457/-654</a></td>

</tr>

<tr>
  <td><strong>dashboard2.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-8c9189e9e3950fff987c45ee8116d89f15f8fdec5baad209bef6f5858f3b3045">+334/-661</a></td>

</tr>

<tr>
  <td><strong>dashboardtype.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-40ee9b1480e11efe6a8fcbdd9c28e2881ef564783b43e12aaa86f2b3cc7d8bc6">+59/-218</a></td>

</tr>

<tr>
  <td><strong>visualization-vrl.spec.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-4bfe28b08994ca0333edbe51bc99d3ddf05525387e90932d88681028e1947db4">+183/-252</a></td>

</tr>

<tr>
  <td><strong>dashCreation.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-c8615e0571a101473f8b2972a760e365fb5ac511b2ba3c07ab8b87017c9d3d4e">+4/-4</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>

<tr>
  <td><strong>dashLogin.js</strong></td>
<td><a
href="https://github.com/openobserve/openobserve/pull/7459/files#diff-05fc8386227811efbdfd6440e6f72f013001033a45d7fc80f986f73b04dfeb88">+1/-5</a>&nbsp;
&nbsp; &nbsp; </td>

</tr>
</table></details></td></tr></tr></tbody></table>

___

> <details> <summary> Need help?</summary><li>Type <code>/help how to
...</code> in the comments thread for any questions about PR-Agent
usage.</li><li>Check out the <a
href="https://qodo-merge-docs.qodo.ai/usage-guide/">documentation</a>
for more information.</li></details>
2025-07-09 10:42:35 +05:30
..