测试助手的集合。

lazr.testing的Python项目详细描述


请看https://dev.launchpad.net/LazrStyleGuidehttps://dev.launchpad.net/Hacking如何在这个 包裹。

使用jstestdriver进行javascript测试

lazr.testing包括对运行javascript测试的支持 JsTestDriver的帮助,以及报告的故障和错误 对于基于unittest的测试运行程序,就像它们是失败和错误一样 一个单元测试用例。

要实际运行测试,必须启动浏览器(如果未运行) 并被jstestdriver服务器捕获。因为我们一般都想 只有一次,jstestdriver服务器作为 使用zope.testing支持层的子进程。

jstestdriver支持以基于xml的格式输出测试结果, 从unittest解析并馈送到TestResult实例。

写作测试

请参阅JsTestDriver TestCase文档,了解如何 编写jstestdriver支持的测试。

此外,lazr-js项目还有一些运行示例 YUI Test在jstestdriver下基于测试。

让javascript测试作为测试套件的一部分运行是 有点微不足道,前提是您已经在使用zope.testing 作为您的测试运行程序(另请参见Future Plans)。你要做的就是 使用 config_filename指向^{tt9}的属性$ 配置文件。例如:

from lazr.testing.jstestdriver import JsTestDriverTestCase

class JsTestDriverSelfTest(JsTestDriverTestCase):
    config_filename = os.path.abspath(os.path.join(os.path.dirname(__file__),
                                                   "js", "tests.conf"))

运行测试

为了实际运行测试,您需要指定位置 在那里可以找到jstestdriver。这可以通过导出 环境变量:

JSTESTDRIVER="java -jar /path/to/JsTestDriver.jar" ./bin/test

默认情况下,如上所述,测试层将启动jstestdriver 服务器并将默认浏览器连接到它。那么实际的测试 run将执行jstestdriver作为客户端连接回 服务器来驱动javascript测试。此变量必须始终 不管下面描述的其他变量如何,都存在。

您可以在另一个环境中控制服务器使用的端口 变量。默认情况下,在端口4224上启动服务器:

JSTESTDRIVER_PORT="10001"

这也是可能的(而且非常方便!)长跑 jstestdriver服务器并手动连接一个或多个浏览器。如果 如果要这样做,必须导出另一个变量,告诉 jstestdriver服务器正在运行(提示:这甚至可能是远程的 服务器):

JSTESTDRIVER_SERVER="http://localhost:10001"

控制将要启动的浏览器也可以通过 将BROWSER环境变量设置为 浏览器的可执行文件。

如果你的默认浏览器是firefox,那么每次 你在后台运行测试,一个新的标签打开,firefox 自动切换到它,中断您的浏览。你可以 通过首选项禁用该选项->;选项卡并禁用名为 “当我打开一个新标签页中的链接时,请立即切换到它”。它可能 还需要启用“在新窗口中打开新窗口”选项 选项卡改为“如果尚未启用。

最后,如果您对每次测试运行都打开新的 tabs,您可以选择拥有一个长期运行的jstestdriver服务器 如上所述并手动连接到它。这样,只有一个 将使用浏览器的选项卡,并且每个测试运行都将重新使用该选项卡 标签。

未来计划

在将来,测试层可能会被 testresources和自定义xml解析可能被替换为 使用subunit流过滤器。

lazr.测试新闻

0.1.2(2010-09-06)

  • 添加与jstestdriver 1.2.2的兼容性。与早期版本不兼容 jstestdriver的版本。
  • 如果jstestdriverlayer没有启动 浏览器。(低压:627413)

0.1.1(2009-10-16)

  • 棕色包,拙劣的新闻发布。

0.1.0(2009-10-16)

  • 初始版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java SimpleFramework和工厂方法   Java适当地处理异常   java单例类不起作用   java小程序和Swing在eclipse中不显示组件   多个键上的java Redisson FastRemove不起作用   java验证请求正文不等于模式   在Java中从URL读取数据   eche RecyclerView项的java Set自定义字体   string Java如何从Date获取HH:mm:ss   当Java应用程序落后于负载均衡器时,在某些URL上强制使用SSL   使用esapi时发生java错误   java使用流根据第二个列表中的值更新一个列表中的对象   组织。openqa。硒。Java中的NoTouchElementException WebDriver?   从JSON字符串Java创建CSV文件