我有一套測試,我正逐漸在視頻文件上寫測試不同的功能。 (我在我的資源包中包含一個測試視頻。)逐個運行這些測試時,它們會成功。但是從Xcode的測試導航運行他們都在一起時,他們開始生產負荷的錯誤,如"The requested URL was not found on this server."
(使用AVAssetImageGenerator - 類似的消息「無法找到該網址」是爲其他文件加載操作生成的。)Xcode iOS - 使用相同資源的多個測試失敗 - 如何使用1資源進行多項測試?
我可以擺脫這些錯誤,並通過簡單地複製我的測試視頻併爲每個測試用例使用不同的文件,讓所有測試都能夠完美運行。我目前使用NSFileManager
和AVAsset
類從文件URL加載視頻,我現在最好的猜測是測試正在並行運行,並且當測試資源視頻文件被一個線程使用時被系統鎖定。
這個每個測試一個文件的場景對於視頻來說並不理想,因爲我的測試資源文件夾正在快速增長!
跨多個測試使用一種測試資源的好方法?
編輯:我的測試中跨越不同的測試文件,我得到在所有情況下的文件URL(這始終是有效的),如
testVideoURL = [[NSBundle bundleForClass:[self class]] URLForResource:@"TestVideo3" withExtension:@"MOV"];
你能展示一個最小代碼示例 - 至少有兩個測試用例在一起運行時會失敗,以及所有setup/teardown方法嗎? – Losiowaty