프로젝트 소개

Selenium은 웹 브라우저 자동화를 가능하게 하는 다양한 도구와 라이브러리를 포괄하는 우산 프로젝트입니다. 이는 모든 주요 웹 브라우저와 호환되는 플랫폼 및 언어 중립적 코딩 인터페이스인 W3C WebDriver 사양을 위한 인프라를 제공합니다. 이 프로젝트는 자원봉사 기여자들에 의해 가능해졌습니다. 이 README는 주로 기여에 관심이 있는 개발자를 위한 것입니다. 사용자의 경우 사용자 매뉴얼과 지원 채널을 참조하세요. 주요 섹션은 다음과 같습니다: - **기여**: 풀 리퀘스트를 제출하기 전에 CONTRIBUTING.md를 읽어보세요. - **설치**: 로컬 개발 환경 요구 사항으로 Bazelisk, Java JDK 17+, macOS 및 Windows용 플랫폼별 설정이 포함됩니다. 대안으로 GitPod, Dev Containers, Docker 이미지가 있습니다. Bazel 캐싱을 위한 워크트리 지침도 있습니다. - **빌드**: 사용자 정의 Rake 래퍼(`./go`)와 함께 Bazel을 사용합니다. 일반적인 명령어: `bazel build`, `bazel run`, `bazel test`, `bazel query`. 빌드 대상은 BUILD.bazel 파일에 정의됩니다. 언어별 빌드는 `./go <language>:build`를 통해 수행합니다. - **개발**: Java(IntelliJ와 Bazel 플러그인, Google Java Format), Python(ruff 린팅, 로컬 설치), Ruby(디버깅, RubyMine), Rust(Cargo의 종속성)에 대한 세부 사항. - **테스트**: 테스트를 위한 Bazel 구성으로 브라우저 고정, 헤드리스 모드, 불안정 테스트 재시도, 병렬 처리, 크기 및 태그별 필터링이 포함됩니다. Linux 가상 X-서버 지침도 있습니다. - **문서화**: C#, JavaScript, Java, Python, Ruby용 API 문서. `./go <language>:docs`를 통해 업데이트합니다. - **릴리스**: 위키의 프로세스로, `./go all:release` 또는 언어별 릴리스를 사용합니다.