thienphuong / playwright-with-typescript

0 stars 0 forks source link

Khởi tạo dự án với template từ serenityjs #1

Open thienphuong opened 11 months ago

thienphuong commented 11 months ago
  1. Download template here: https://github.com/serenity-js/serenity-js-playwright-test-template
  2. Open the project with VS
  3. run npm ci
  4. Fix linting issues
npm run lint            # runs code linter
npm run lint:fix        # attempts to automatically fix linting issues
npm run clean         # removes reports from any previous test run
thienphuong commented 11 months ago

Tại dòng 14, chỉnh lại giá trị testDir: "./tests" trong file PlaywrightTestConfig để trỏ tới thư mục chứa test của bạn

Trong dự án mẫu có 3 thư mục chứa test

thienphuong commented 11 months ago

Cấu hình để chạy kịch bản với Edge. Open PlaywrightTestConfig file and edit this part.

  projects: [
    {
      name: "Microsoft Edge",
      use: {
        channel: "msedge",
      },
    },
],
thienphuong commented 11 months ago

https://serenity-js.org/handbook/test-runners/playwright-test/

thienphuong commented 2 months ago

image

thienphuong commented 2 months ago

Lệnh npm ci trong Node.js được sử dụng để cài đặt các gói phụ thuộc dựa trên tệp package-lock.json hoặc npm-shrinkwrap.json. Dưới đây là các tác dụng chính của lệnh này:

  1. Cài đặt nhanh hơn: npm ci được tối ưu hóa để cài đặt nhanh hơn so với lệnh npm install, vì nó sử dụng trực tiếp tệp package-lock.json để đảm bảo các phiên bản gói chính xác và không thực hiện các cập nhật hoặc thay đổi không cần thiết.

  2. Chính xác theo package-lock.json: Nó chỉ cài đặt các gói đúng với các phiên bản được chỉ định trong package-lock.json. Điều này giúp đảm bảo sự nhất quán giữa các môi trường phát triển, thử nghiệm và sản xuất.

  3. Xóa thư mục node_modules: Trước khi cài đặt, npm ci sẽ xóa toàn bộ thư mục node_modules để đảm bảo cài đặt mới hoàn toàn. Điều này có nghĩa là tất cả các gói phụ thuộc sẽ được cài đặt lại từ đầu.

  4. Không cập nhật package-lock.json: Khác với npm install, lệnh npm ci không cập nhật tệp package-lock.json, ngay cả khi phát hiện các khác biệt giữa package.jsonpackage-lock.json.

Lệnh này thường được sử dụng trong môi trường CI/CD (Continuous Integration/Continuous Deployment) để đảm bảo các phiên bản gói cài đặt luôn chính xác và đồng nhất.