Playwright 1.56 ಮೂರು ಅಂತರ್ನಿರ್ಮಿತ AI ಏಜೆಂಟ್‌ಗಳೊಂದಿಗೆ ಬರುತ್ತಿದೆ; ಇವು ಟೆಸ್ಟ್ ಸೂಟ್ ಅನ್ನು ಯೋಜಿಸಲು, ಅದಕ್ಕೆ ಸಂಬಂಧಿಸಿದ TypeScript ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಬರೆಯಲು ಮತ್ತು ದೋಷಪೂರಿತ ಲೋಕೇಟರ್‌ಗಳನ್ನು (locators) ತಕ್ಷಣವೇ ಸರಿಪಡಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತವೆ. ಇದರ ಪರಿಣಾಮ: ಮ್ಯಾನುಯಲ್ ಟೆಸ್ಟಿಂಗ್‌ನ ಕಷ್ಟಕರವಾದ ಕೆಲಸವು AI-ಸಹಾಯಿತ ವರ್ಕ್‌ಫ್ಲೋ ಆಗಿ ಬದಲಾಗುತ್ತದೆ.

ಈ ಬದಲಾವಣೆ ಏಕೆ ಮುಖ್ಯ

ಆಟೊಮೇಷನ್ ಎಂಜಿನಿಯರ್‌ಗಳು ದೀರ್ಘಕಾಲದಿಂದ ಒಂದು ಪುನರಾವರ್ತಿತ ಚಕ್ರವನ್ನು ಅನುಸರಿಸುತ್ತಿದ್ದಾರೆ: ಅಗತ್ಯತೆಗಳನ್ನು ಟೆಸ್ಟ್ ಕೇಸ್‌ಗಳಾಗಿ ಪರಿವರ್ತಿಸುವುದು, ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಕೈಯಾರೆ ಬರೆಯುವುದು, ಅವುಗಳನ್ನು ರನ್ ಮಾಡುವುದು ಮತ್ತು UI ಬದಲಾದಾಗ ಫ್ಲೇಕಿ ಸೆಲೆಕ್ಟರ್‌ಗಳ (flaky selectors) ಹಿಂದೆ ಬೀಳುವುದು. ವಿಶೇಷವಾಗಿ ವೇಗವಾಗಿ ಬದಲಾಗುವ ಫ್ರಂಟ್-ಎಂಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ, ಆಟೊಮೇಷನ್‌ನಿಂದ ಉಳಿತಾಯವಾದ ಸಮಯಕ್ಕಿಂತ ನಿರ್ವಹಣಾ ವೆಚ್ಚವೇ (maintenance overhead) ಹೆಚ್ಚಾಗಬಹುದು. ಟೆಸ್ಟಿಂಗ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ನಲ್ಲೇ ನೇರವಾಗಿ AI ಏಜೆಂಟ್‌ಗಳನ್ನು ಅಳವಡಿಸುವ ಮೂಲಕ, Playwright 'ಫಿಕ್ಸ್-ಅಂಡ್-ರನ್' ಚಕ್ರವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ ಮತ್ತು ಎಂಜಿನಿಯರ್‌ಗಳು ಸೆಲೆಕ್ಟರ್ ಹುಡುಕುವ ಬದಲು ಉನ್ನತ ಮಟ್ಟದ ಟೆಸ್ಟ್ ಸ್ಟ್ರಾಟಜಿಯ ಮೇಲೆ ಗಮನ ಹರಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.

ಮೂರು ಏಜೆಂಟ್‌ಗಳ ವಿವರಣೆ

  • Planner Agent – ಅಪ್ಲಿಕೇಶನ್ ಏನು ಮಾಡಬೇಕು ಎಂಬ ನೈಸರ್ಗಿಕ ಭಾಷೆಯ ವಿವರಣೆಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಲೈವ್ ಸೈಟ್ ಅನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ ಮತ್ತು ಒಂದು ರಚನಾತ್ಮಕ Markdown ಯೋಜನೆಯನ್ನು ನೀಡುತ್ತದೆ. ಈ ಯೋಜನೆಯು ಪ್ರಮುಖ ಯೂಸರ್ ಫ್ಲೋಗಳು ಮತ್ತು ಎಡ್ಜ್-ಕೇಸ್ ಸನ್ನಿವೇಶಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡುತ್ತದೆ, ಇದರಿಂದ ಯಾವುದೇ ಕೋಡ್ ಬರೆಯುವ ಮೊದಲು ಸ್ಪಷ್ಟವಾದ ನೀಲನಕ್ಷೆ (blueprint) ಸಿಗುತ್ತದೆ.
  • Generator Agent – Markdown ಯೋಜನೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದಾದ TypeScript ಟೆಸ್ಟ್ ಕೋಡ್ ಅನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ. ಸೆಲೆಕ್ಟರ್‌ಗಳು ಸ್ಥಿರವಾಗಿವೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಇದು ಚಾಲನೆಯಲ್ಲಿರುವ ಬ್ರೌಸರ್ ಜೊತೆಗೆ ಸಂವಹನ ನಡೆಸುತ್ತದೆ ಮತ್ತು ಸೂಚನೆ ನೀಡಿದರೆ Page Object Model (ಪೇಜ್ ರಚನೆಯನ್ನು ಟೆಸ್ಟ್ ಲಾಜಿಕ್‌ನಿಂದ ಪ್ರತ್ಯೇಕಿಸುವ ಒಂದು ಡಿಸೈನ್ ಪ್ಯಾಟರ್ನ್) ಅನ್ನು ಅನುಸರಿಸಬಲ್ಲದು.
  • Healer Agent – ಟೆಸ್ಟ್ ರನ್‌ಗಳನ್ನು ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡುತ್ತದೆ; ಯಾವುದಾದರೂ ವೈಫಲ್ಯವು UI ಬದಲಾವಣೆಯಿಂದ ಉಂಟಾದಾಗ, ಇದು ವಿಫಲವಾದ ಹಂತಗಳನ್ನು ಮರುಪ್ರದರ್ಶಿಸುತ್ತದೆ (replays), ಅಪ್‌ಡೇಟ್ ಆದ DOM ಅನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ ಮತ್ತು ಸರಿಪಡಿಸಿದ ಸೆಲೆಕ್ಟರ್ ಅಥವಾ ಲೋಕೇಟರ್ ಅನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಈ ಸೂಚನೆಯು ಡೆವಲಪರ್‌ಗಳು ಸ್ವೀಕರಿಸಬಹುದಾದ ಅಥವಾ ಬದಲಾಯಿಸಬಹುದಾದ ಡ್ರಾಫ್ಟ್ ಪ್ಯಾಚ್ ಆಗಿ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ.

ಈ ಏಜೆಂಟ್‌ಗಳು ಒಂದು “ಏಜೆಂಟಿಕ್ ಲೂಪ್” (agentic loop) ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ: Planner → Generator → Healer. ಪ್ರತಿಯೊಂದು ಹಂತವು ಮುಂದಿನ ಹಂತಕ್ಕೆ ಇನ್‌ಪುಟ್ ನೀಡುತ್ತದೆ, ಇದು ಪರೀಕ್ಷೆಗೆ ಒಳಪಡುವ ಅಪ್ಲಿಕೇಶನ್‌ನೊಂದಿಗೆ ಸಮಕಾಲೀನವಾಗಿರುವ ಸ್ವಯಂ-ಹೊಂದಾಣಿಕೆಯ ಪೈಪ್‌ಲೈನ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ.

ಸಾಮಾನ್ಯ AI ಪರಿಕರಗಳಿಗಿಂತ ಇದು ಹೇಗೆ ಭಿನ್ನವಾಗಿದೆ

ಚಾಟ್-ಶೈಲ್ ಮಾಡೆಲ್‌ಗಳು ಅಥವಾ ಕೋಡ್-ಕಂಪ್ಲೀಷನ್ ಎಕ್ಸ್‌ಟೆನ್ಶನ್‌ಗಳು ಸ್ನಿಪೆಟ್‌ಗಳನ್ನು ನೀಡಬಲ್ಲವು, ಆದರೆ ಅವುಗಳಿಗೆ ಲೈವ್ DOM ಮತ್ತು ನಿರ್ದಿಷ್ಟ ಪ್ರಾಜೆಕ್ಟ್ ಕಾನ್ಫಿಗರೇಶನ್‌ಗೆ ನೇರ ಪ್ರವೇಶ ಇರುವುದಿಲ್ಲ. Playwright ಏಜೆಂಟ್‌ಗಳು Model Context Protocol ಅನ್ನು ಬಳಸುತ್ತವೆ, ಇದು ಪ್ರಸ್ತುತ ಪೇಜ್ ರಚನೆ ಮತ್ತು ಟೆಸ್ಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಮಾಡೆಲ್‌ಗೆ ಸ್ಟ್ರೀಮ್ ಮಾಡುತ್ತದೆ, ಇದರಿಂದ AI ತಾನು ಸಂವಹನ ನಡೆಸುವ ನಿಖರವಾದ ಎಲಿಮೆಂಟ್‌ಗಳ ಬಗ್ಗೆ ವಿವೇಚನೆ ನಡೆಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ. ಇದು ಸೃಷ್ಟಿಸುವ ಕೋಡ್ ಕೇವಲ ಸಿಂಟ್ಯಾಕ್ಸಿಕಲಿ ಸರಿಯಾಗಿರುವುದಲ್ಲದೆ, ಸೃಷ್ಟಿಸುವ ಸಮಯದಲ್ಲಿನ ನೈಜ UI ಗೆ ಅನುಗುಣವಾಗಿಯೂ ಇರುತ್ತದೆ.

ಕೆಲವೇ ಕಮಾಂಡ್‌ಗಳೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸುವುದು ಹೇಗೆ

  1. Node ಪ್ರಾಜೆಕ್ಟ್ ಅನ್ನು ಸೆಟಪ್ ಮಾಡಿ ಮತ್ತು Playwright ಅನ್ನು ಡಿಪೆಂಡೆನ್ಸಿಯಾಗಿ ಸೇರಿಸಿ.
  2. ನಿಮ್ಮ ಎಡಿಟರ್‌ನೊಳಗೆ AI ಲೂಪ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಲು npx playwright init-agents --loop=vscode ಅನ್ನು ರನ್ ಮಾಡಿ.
  3. ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಲೋಡ್ ಮಾಡುವ ಕನಿಷ್ಠ “seed” ಟೆಸ್ಟ್ ಬರೆಯಿರಿ; ಇದು ಏಜೆಂಟ್‌ಗಳಿಗೆ ಒಂದು ನಿರ್ದಿಷ್ಟ ಸಂದರ್ಭವನ್ನು (context) ನೀಡುತ್ತದೆ.
  4. Planner ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ನೈಸರ್ಗಿಕ ಭಾಷೆಯ ಪ್ರಾಂಪ್ಟ್‌ಗಳನ್ನು ನೀಡಿ (ಉದಾಹರಣೆಗೆ, “Create a checkout flow covering discount codes”), ನಂತರ Generator ಸ್ಕ್ರಿಪ್ಟ್ ಸಿದ್ಧಪಡಿಸಲು ಬಿಡಿ ಮತ್ತು Healer ಅದನ್ನು ಸುಸ್ಥಿತಿಯಲ್ಲಿಡಲು ಬಿಡಿ.

ಏಜೆಂಟ್‌ಗಳು ಉತ್ತಮವಾಗಿ ಕೆಲಸ ಮಾಡಲು ಕೆಲವು ಸಲಹೆಗಳು

  • ಸ್ಪಷ್ಟವಾದ seed ಟೆಸ್ಟ್ – ಆರಂಭಿಕ ಟೆಸ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ವಿಶ್ವಾಸಾರ್ಹವಾಗಿ ಪ್ರಾರಂಭಿಸಬೇಕು ಮತ್ತು ಮುಖ್ಯ UI ಎಲಿಮೆಂಟ್‌ಗಳನ್ನು ಪ್ರದರ್ಶಿಸಬೇಕು; ಅಸ್ಪಷ್ಟ ಎಂಟ್ರಿ ಪಾಯಿಂಟ್‌ಗಳು Planner ಅನ್ನು ಗೊಂದಲಕ್ಕೀಡುಮಾಡಬಹುದು.
  • ರಚನಾತ್ಮಕ seed ಡೇಟಾ – ನಿರೀಕ್ಷಿತ ಇನ್‌ಪುಟ್‌ಗಳನ್ನು ವಿವರಿಸುವ JSON ಫಿಕ್ಚರ್‌ಗಳನ್ನು ಒದಗಿಸುವುದು, Generator ಸೂಕ್ತ ಸೆಲೆಕ್ಟರ್‌ಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
  • Page Object Model ಅನ್ನು ಕೇಳಿ – Generator ಗೆ ಪೇಜ್ ಆಬ್ಜೆಕ್ಟ್‌ಗಳನ್ನು ರಚಿಸಲು ಸ್ಪಷ್ಟವಾಗಿ ಸೂಚಿಸುವುದು ಹೆಚ್ಚು ಸ್ವಚ್ಛ ಮತ್ತು ಸುಲಭವಾಗಿ ನಿರ್ವಹಿಸಬಹುದಾದ ಕೋಡ್ ಅನ್ನು ನೀಡುತ್ತದೆ.
  • AI ಔಟ್‌ಪುಟ್ ಅನ್ನು ಕರಡು (draft) ಎಂದು ಪರಿಗಣಿಸಿ – ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಕಮಿಟ್ ಮಾಡುವ ಮೊದಲು ಅವುಗಳನ್ನು ಪರಿಶೀಲಿಸಿ; ಏಜೆಂಟ್‌ಗಳು ಇನ್ನೂ ಬಿಸಿನೆಸ್-ಲಾಜಿಕ್‌ನ ಸೂಕ್ಷ್ಮತೆಗಳನ್ನು ತಪ್ಪಿಸಬಹುದು ಅಥವಾ ಅತಿಯಾದ ಸಾಮಾನ್ಯ ಸೆಲೆಕ್ಟರ್‌ಗಳನ್ನು ನೀಡಬಹುದು.

ಅಪಾಯಗಳು ಮತ್ತು ವಿರೋಧಾಭಿಪ್ರಾಯಗಳು

ಮುಂದೆ ಗಮನಿಸಬೇಕಾದವುಗಳು