如何测试从网络数据解析?

How to test parsed from the web data?

我有一个程序可以从 Internet 捕获一些数据并对其执行一些操作。非常基本的代码:

class ParsedData:

    data = None

    def _get(self):
        self.data = requests.get('...')

    def method1(self):
        self._get()

    def method2(self):
        self._get()

我需要如何测试 method1method2?我是否需要在 TestCase 中提供我自己的类似网络的数据而不是从网络上获取它,或者我可以只用网络上的真实数据测试它并检查程序的结果是否正确?

单元测试通常使用 mocks for objects/methods,利用网络、数据库等。这种方法使测试非常快,也不需要任何特殊的 'environment'。

因此您可以模拟class的_get()方法,然后确保method1()method2()等正确处理数据。