【发布时间】:2022-10-06 16:26:33
【问题描述】:
我一直在尝试快速编写单元测试用例来进行 API 调用,但是在这方面是新手,我无法弄清楚如何编写相同的单元测试用例。这是我要为其编写单元测试用例的代码
class QuotesModel: ObservableObject {
@Published var quotes = [Quote]()
@MainActor
func fetchData() async {
guard let url = URL(string: \"https://breakingbadapi.com/api/quotes\") else {
print(\"Invalid URL\")
return
}
do {
let (data, _) = try await URLSession.shared.data(from: url)
quotes = try JSONDecoder().decode([Quote].self, from: data)
} catch {
print(error)
}
// print(quotes)
}
}
我一直在尝试为此编写单元测试用例,但无法弄清楚我该怎么做。有人可以帮我弄这个吗?
-
将解码分解为一个单独的函数并为该部分编写一个测试。您不应该尝试对 URLSession 进行单元测试。这样,您还可以获得更好的逻辑分离。
标签: swift mvvm xctest xctestcase