我将一些页面元素拆分为单独的可视块。
我目前正在集成设计师的前端htmls,因此对我来说,测试它们在浏览器中的显示方式非常重要(每个块)。
使用django-testing实现此目的的最简单方法是什么?
我知道我可以创建一个包含所有块的视图,并通过斜纹或硒调用此页面。我认为必须有一个更简单的平台特定命令,我可以在gnome-open render_to_string(abcd.html,{})
让我想起了乔尔的思想学派,他聘请了一位训练有素的“测试员”,并且不介意一次又一次地测试这种无聊的东西;但我不一定接受它。
另外,指定django使用内存中的sqlite-db进行测试的最简单方法是什么,以便加快进程?
答案 0 :(得分:0)
也许将render_to_string()写入文件,然后使用该文件作为参数启动浏览器(使用subprocess.call或类似的东西)?
答案 1 :(得分:0)
在使用sqlite for tests问题时,您可以指定一个单独的设置模块(让我们称之为test_settings),它只定义数据库设置。然后运行它:
manage.py test --settings=test_settings
在该文件中:
from settings import *
DATABASE_ENGINE = "sqlite3"
如果指定了sqlite,测试运行器应默认使用内存数据库。
关于检查单个元素的输出,它取决于您要实现的目标。如果你的意思是你想在浏览器中手动查看某些内容以确定它,那么我建议你编写一个管理命令来做到这一点。测试运行器更适合于可以确定代码通过或失败的事物。如前所述,如果这是您的目标,则输出到文件,然后编写浏览器脚本以打开包含目录中所有文件的选项卡(如果可能是个好主意)。您可能会发现Watir对此非常有用,它是一个用于自动化Web浏览器的开源(BSD)库。
如果您可以以编程方式检查所拥有的内容(某些CSS内容,与图像进行比较,在输出中查找字符串),那么您可能会发现我使用selenium和Python测试CSS时所做的一些工作(http://github.com/garethr/css-test )