Python—从html页面提取数据的单元测试类

Python—从html页面提取数据的单元测试类,python,unit-testing,Python,Unit Testing,我正在用Python编写一个小应用程序,其中一个模块负责下载和解析网页,使用Beauty Soup进行解析,使用urllib2进行网页下载 我现在想知道,如何为负责解析页面的类编写单元测试 我可以围绕urllib2创建一些抽象,并将其注入负责解析的类中(我的计划是为不同的网页创建不同的类),在测试期间,我将注入一个模拟此抽象的对象。但我不太确定这种方式。我只会创建一个抽象,因为编写测试会更容易,而不是因为需要抽象(至少我现在这么认为) 我也会遇到这样一个问题:如何测试这个抽象,它需要互联网连接来

我正在用Python编写一个小应用程序,其中一个模块负责下载和解析网页,使用
Beauty Soup
进行解析,使用
urllib2
进行网页下载

我现在想知道,如何为负责解析页面的类编写单元测试

我可以围绕
urllib2
创建一些抽象,并将其注入负责解析的类中(我的计划是为不同的网页创建不同的类),在测试期间,我将注入一个模拟此抽象的对象。但我不太确定这种方式。我只会创建一个抽象,因为编写测试会更容易,而不是因为需要抽象(至少我现在这么认为)


我也会遇到这样一个问题:如何测试这个抽象,它需要互联网连接来正常工作,当我运行测试时,我如何断言下载了正确的页面?< /p> 在Python中实现单元测试,你应该考虑使用模拟和补丁:


我知道嘲弄,我甚至在帖子中提到过。我的问题是,我不知道如何正确地测试使用
urlopen
函数从
urlib2
下载页面的类。即使我围绕页面下载创建了一个抽象,仍然有一个测试这个抽象的案例,我们又遇到了同样的问题。我不确定我是否理解你的观点。您不需要自己创建抽象来模拟
urlopen
,您可以使用补丁装饰器。