对蔚蓝数据湖挂载路径进行Spark读写的单元测试

mbzjlibv  于 2022-10-07  发布在  Spark
关注(0)|答案(1)|浏览(110)

我对单元测试非常陌生,我需要为Spark读写函数编写一个单元测试。

我有一个函数,例如:

def read_file(path, format, logger):
   df = spark.read.load(path, format = format)
   etc.....
   return df
  • 注:路径已挂载。*

现在我需要为这个函数编写单元测试/模拟ADLS位置

我已经检查了下面的链接,它使用补丁来模拟blobServiceClient,但我不确定这对我是否有用,因为它使用的是Python的打开函数。

Trying to use patch to mock BlobServiceClient but the real class is called instead

甚至有可能嘲笑ADLS吗?如果可能,如何嘲笑?

有没有人能帮我一下。任何帮助都将不胜感激。

b0zn9rqh

b0zn9rqh1#

确保HDFS在本地可用。如果您在Windows上运行测试,请确保阅读此自述文件https://github.com/steveloughran/winutils

该回购引用了更新版本的另一个回购。这两个GitHub贡献者是Hadoop团队的一部分,这些是我在本地环境中使用的二进制文件。

完成此设置后,您可以传递本地路径。它们可以是本地Linux或Windows路径。

还要阅读本文以正确设置Hadoop二进制文件的路径项:https://sparkbyexamples.com/spark/spark-hadoop-exception-in-thread-main-java-lang-unsatisfiedlinkerror-org-apache-hadoop-io-nativeio-nativeiowindows-access0ljava-lang-stringiz/?msclkid=4333eb3bc05d11ecb99904c712581198

相关问题