2017-08-25 77 views
1

我已經建立了一個安靜的應用程序與我相信是郵遞員的全面測試。我從命令行使用newman運行我的測試。Python的覆蓋範圍和郵差

我想使用coverage.py來確定我是否在我的測試中遺漏了任何代碼,但我無法通過newman使它與外部測試過程一起工作。

我遵循燒瓶指導,並添加了紐曼腳本最後調用的關閉端點。當我檢查覆蓋報告時,基本上說我的所有代碼都沒有被覆蓋。

這甚至可能嗎?有沒有其他工具可以讓我用我現有的測試來檢查覆蓋率?我真的不想將所有的測試轉換爲python來獲取覆蓋率數據。

+1

你在做什麼樣的測試?覆蓋報告是一種主要用於單元測試等低級測試的工具。另一方面,您似乎通過HTTP訪問系統,這對於集成,行爲或端到端測試等高級別測試來說是典型的。 –

回答

0

簡短回答:要使用coverage.py,您的測試必須使用Python編寫。

較長的回答:coverage.py通過運行代碼(即測試)並查看它調用哪些代碼行來工作。換句話說,測試和要測試的代碼必須處於相同的過程中。如果newman是用Python編寫的它可以調用Flask應用程序,它可能可能是可能的。

希望的一線:可能是使用profiler來運行Flask應用程序,通過newman在外部運行它,然後檢查分析數據以查看是否調用了所有的語句。唉,我不知道提供這種報告的分析器,但理論上它應該可以收集到的數據。