debug_return_from_rules.js 1.4 KB

123456789101112131415161718192021222324252627282930
  1. const { chromium } = require('playwright');
  2. (async () => {
  3. const browser = await chromium.launch({ headless: true, executablePath: 'C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe' });
  4. const page = await browser.newPage({ viewport: { width: 1365, height: 900 } });
  5. const errors = [];
  6. page.on('pageerror', error => errors.push(error.message));
  7. await page.goto('http://127.0.0.1:8931/AI%E5%BF%AB%E9%80%9F%E6%8A%A5%E4%BB%B7_Demo2.html?v=return-rule-test', { waitUntil: 'load' });
  8. await page.evaluate(() => {
  9. window.qRenderStep2 = function(){};
  10. state.currentQuoteId = null;
  11. switchView('editor');
  12. state.currentStep = 2;
  13. switchView('rules');
  14. });
  15. const before = await page.evaluate(() => ({
  16. view: state.currentView,
  17. rememberedStep: state._editorReturnContext && state._editorReturnContext.step,
  18. label: document.querySelector('#view-rules .page-back-btn').textContent.trim(),
  19. display: getComputedStyle(document.querySelector('#view-rules .page-back-btn')).display
  20. }));
  21. await page.locator('#view-rules .page-back-btn').click();
  22. const after = await page.evaluate(() => ({
  23. view: state.currentView,
  24. step: state.currentStep,
  25. editorVisible: !document.getElementById('view-editor').classList.contains('hidden')
  26. }));
  27. console.log(JSON.stringify({ before, after, errors }));
  28. await browser.close();
  29. })().catch(error => { console.error(error); process.exit(1); });