verify-bank-search.spec.ts 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import { test, expect } from '@playwright/test';
  2. test('银行名称搜索框验证', async ({ page }) => {
  3. console.log('1. 导航到银行名称页面...');
  4. await page.goto('http://localhost:8080/admin/bank-names', { waitUntil: 'networkidle' });
  5. console.log('2. 查找搜索框...');
  6. const searchInput = page.locator('input[placeholder*="搜索"], input[placeholder*="search"], input[type="search"]').first();
  7. const count = await searchInput.count();
  8. console.log('找到搜索框数量:', count);
  9. if (count === 0) {
  10. console.log('未找到搜索框,列出所有 input 元素...');
  11. const allInputs = await page.locator('input').all();
  12. for (let i = 0; i < Math.min(allInputs.length, 5); i++) {
  13. const input = allInputs[i];
  14. const placeholder = await input.getAttribute('placeholder');
  15. const type = await input.getAttribute('type');
  16. console.log('Input ' + (i + 1) + ': type=' + type + ', placeholder=' + placeholder);
  17. }
  18. test.skip(true, '未找到搜索框');
  19. return;
  20. }
  21. console.log('3. 输入中文"中国"...');
  22. await searchInput.fill('中国');
  23. await page.waitForTimeout(500);
  24. const beforeValue = await searchInput.inputValue();
  25. console.log('输入后的值:', beforeValue);
  26. console.log('4. 按 Enter 键...');
  27. await searchInput.press('Enter');
  28. await page.waitForTimeout(1000);
  29. const afterValue = await searchInput.inputValue();
  30. console.log('按 Enter 后的值:', afterValue);
  31. // 截图
  32. await page.screenshot({ path: '/mnt/code/188-179-template-6/search_verification.png' });
  33. console.log('截图已保存到 search_verification.png');
  34. // 验证
  35. expect(beforeValue).toBe('中国');
  36. expect(afterValue).toBe('中国');
  37. console.log('验证通过:搜索内容保持不变');
  38. });