测试 PySpark

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

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

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

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

有关更多详细信息,请参考 Testing PySpark

使用 GitHub Actions 运行测试

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

运行 Spark Connect 的测试

运行 Python 客户端的测试

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

使用Python客户端运行PySpark Shell

对于本地构建的Apache Spark:

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

对于 Apache Spark 的发布:

bin/pyspark --remote "local[*]" --packages org.apache.spark:spark-connect_2.12:3.4.0