import-export.spec.js 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. const { test, expect } = require('@playwright/test');
  2. const BASE_URL = 'https://ajy.danclub.cn';
  3. const TEST_ADMIN = { username: 'admin', password: 'admin123' };
  4. test.describe('数据导入导出测试', () => {
  5. test.beforeEach(async ({ page }) => {
  6. await page.goto(BASE_URL);
  7. await page.waitForLoadState('networkidle');
  8. await page.getByPlaceholder('请输入用户名').fill(TEST_ADMIN.username);
  9. await page.getByPlaceholder('请输入密码').fill(TEST_ADMIN.password);
  10. await page.getByRole('button', { name: '登 录' }).click();
  11. await page.waitForURL(`${BASE_URL}/#/user/app`, { timeout: 10000 });
  12. });
  13. test('IE-001: 用户列表导出Excel', async ({ page }) => {
  14. await page.goto(`${BASE_URL}/#/user/app`);
  15. await page.waitForLoadState('networkidle');
  16. await page.waitForTimeout(1000);
  17. });
  18. test('IE-002: 设备列表导出Excel', async ({ page }) => {
  19. await page.goto(`${BASE_URL}/#/device`);
  20. await page.waitForLoadState('networkidle');
  21. await page.waitForTimeout(1000);
  22. });
  23. test('IE-003: 导入用户-文件格式错误', async ({ page }) => {
  24. await page.goto(`${BASE_URL}/#/user/app`);
  25. await page.waitForLoadState('networkidle');
  26. const importBtn = page.getByRole('button', { name: '导入' });
  27. if (await importBtn.isVisible()) {
  28. await importBtn.click();
  29. await page.waitForTimeout(500);
  30. }
  31. });
  32. test('IE-004: 导入设备-文件格式错误', async ({ page }) => {
  33. await page.goto(`${BASE_URL}/#/device`);
  34. await page.waitForLoadState('networkidle');
  35. const importBtn = page.getByRole('button', { name: '导入' });
  36. if (await importBtn.isVisible()) {
  37. await importBtn.click();
  38. await page.waitForTimeout(500);
  39. }
  40. });
  41. test('IE-005: 导入用户-必填字段缺失', async ({ page }) => {
  42. await page.goto(`${BASE_URL}/#/user/app`);
  43. await page.waitForLoadState('networkidle');
  44. });
  45. test('IE-006: 导入用户-手机号格式错误', async ({ page }) => {
  46. await page.goto(`${BASE_URL}/#/user/app`);
  47. await page.waitForLoadState('networkidle');
  48. });
  49. test('IE-007: 导入用户-重复手机号', async ({ page }) => {
  50. await page.goto(`${BASE_URL}/#/user/app`);
  51. await page.waitForLoadState('networkidle');
  52. });
  53. test('IE-008: 导入设备-设备编号重复', async ({ page }) => {
  54. await page.goto(`${BASE_URL}/#/device`);
  55. await page.waitForLoadState('networkidle');
  56. });
  57. });