测试 PySpark#

为了运行 PySpark 测试,您应该首先通过 Maven 或 SBT 构建 Spark 本身。例如,

build/mvn -DskipTests clean package
build/sbt -Phive clean package

之后,PySpark 测试用例可以通过使用 python/run-tests 来运行。例如,

python/run-tests --python-executable=python3

请注意,如果您在 Mac OS 上运行测试,可以设置 OBJC_DISABLE_INITIALIZE_FORK_SAFETY 环境变量为 YES

请参阅有关如何构建 Spark运行模块测试或单个测试的指南。

运行单个 PySpark 测试#

您可以通过使用 python/run-tests 运行特定的测试,例如,如下所示

python/run-tests --testnames pyspark.sql.tests.test_arrow

更多详细信息请参阅测试 PySpark

使用 GitHub Actions 运行测试#

您可以在自己的 GitHub 分叉仓库中,通过几次点击,使用 GitHub Actions 运行完整的 PySpark 测试。更多详细信息请参阅在您的分叉仓库中使用 GitHub Actions 运行测试

运行 Spark Connect 测试#

运行 Python 客户端测试#

为了测试 Protobuf 定义的更改,例如在 spark/sql/connect/common/src/main/protobuf/spark/connect,您应该首先运行 dev/connect-gen-protos.sh 来重新生成 Python Protobuf 客户端。

使用 Python 客户端运行 PySpark Shell#

以下命令会自动在本地启动 Spark Connect 服务器,并创建一个连接到该服务器的 Spark Connect 客户端。

bin/pyspark --remote "local[*]"