【问题标题】:How to get code coverage of functional tests written in selenium python for a browser extension?如何获得用 selenium python 编写的浏览器扩展功能测试的代码覆盖率?
【发布时间】:2018-10-02 01:38:07
【问题描述】:

我准备了一个用 NodeJS 编写的浏览器扩展。我的源代码中的所有文件都有 UT,但我想用 Python Selenium 编写用于功能测试的测试用例。我已经准备好所有的测试用例,但我不确定我的代码中有多少被测试用例击中。我正在尝试找到一种方法来获得代码覆盖率。我尝试使用伊斯坦布尔并尝试检测代码,然后使用检测代码构建扩展。现在,当我使用检测代码安装此扩展时,执行测试用例后我无法获得覆盖率。我将此用作参考,我发现它非常有帮助: https://medium.com/@the1mills/front-end-javascript-test-coverage-with-istanbul-selenium-4b2be44e3e98

我只需要一些相同的抽象,我会自己挖掘,不胜感激。

【问题讨论】:

    标签: node.js python-3.x selenium browser-automation istanbul


    【解决方案1】:

    得到答案,我们需要首先检测我们想要了解代码覆盖率的文件(查看问题中的链接以供参考)。检测文件后,我们需要使用此检测代码而不是实际代码构建浏览器扩展。在浏览器中加载扩展后,运行功能测试,并在所有功能测试结束时在浏览器控制台中运行以下命令:

    window.__coverage__
    

    此命令将以字典的形式返回文件的代码覆盖率信息。信息可以以 JSON 的形式写入,然后使用 istanbul 的报告命令进行可视化,如下所示:

    istanbul report --include path/to/my-coverage-file.json --dir my-coverage-dir html
    

    该命令会生成html格式的报告。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-09
      • 2018-03-24
      • 2017-02-21
      • 2014-05-26
      • 1970-01-01
      • 2017-05-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多