以测试驱动的方式构建 Scrapy Crawlers 的助手和示例。
项目描述
scrapy_tdd
以测试驱动的方式构建 Scrapy Crawlers 的助手和示例。
动机 / 为什么我应该使用 TDD 开发 Scrapy Crawlers?
开发 - 测试周期缩短到几秒钟,因此它可以让您更快地获得正常工作的刮板
当使用真实数据在“野外”发现错误时,可以更快地创建和测试新的示例文件、测试和修复
它允许在不破坏任何东西的情况下快速重构——这会产生更清晰的爬虫代码
当你习惯做 TDD 的时候感觉很不错
与 Scrapy 的 Spiders Contracts 有什么区别?
Scrapy 有自己的内置测试功能,名为Spiders Contracts
我尝试使用它们一段时间,但由于以下缺点,我决定在 py.test 这样的单元测试框架中构建真正的单元测试:
它的理念是针对本质上更广泛且不太具体的概念的合同(因此得名)进行测试。可以对项目中的确切字段内容进行测试,但既困难又脆弱
它的文档和基本功能集有点薄
它将实现代码与合同描述混合在一起,只有在合同很少且简单的情况下才可用
安装
点安装 scrapy_tdd
快速入门示例
- def 描述_fancy_spider():
to_test = MySpider().from_crawler(get_crawler())
- def describe_parse_suggested_terms():
resp = response_from(“Result_JSON_Widget.txt”) 结果 = to_test.parse(resp)
- def should_get_item():
item = 结果断言 item[0][“lorem”] == 'ipsum' 断言 item[0][“iterem”] == “ipsem”
完整文档
… 快来了 …
缺失/后续步骤
模拟请求-响应对
如何贡献
… 快来了 …
项目详情
关
scrapy_tdd -0.1.5.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5a6edcb90866ee92e824e92a0957eca18e6b7b8fa5658a7372d7ec083c8d6086 |
|
MD5 | f299e55e4be7b763720150f99cdec2b6 |
|
布莱克2-256 | 82ee345302ac4099f397f1a329e52dc8119efe8840a2f1b2e08ad0a2dfc17f3e |