我正在用Python编写小应用程序,一个模块负责使用Beautiful Soup
进行解析和urllib2
页面下载来下载和解析网页。
我现在想知道,我怎样才能为负责解析页面的类编写单元测试。
我可以在urllib2
周围创建一些抽象并将其注入负责解析的类(我的计划是为不同的网页设置不同的类),并且在测试期间我会注入一个会模拟这个抽象的对象。但我对这种方式不太确定。我只会创建一个抽象,因为编写测试会更容易,不是因为需要抽象(至少这是我现在的想法)。
此外,我会遇到如何测试这种抽象的问题,它需要互联网连接才能正常工作,当我运行测试时,我怎么能断言正确的页面被下载?