Swift HTTP Stub 不起作用。(Alamofire 3.0 & Mockingjay)



HTTP Stub 不起作用。(阿拉莫火3.0)

我想用Alamofire(3.0)和Mockingjay存根http请求。

我尝试使用OHHTTPStubs存根。

但它也不起作用..

这是我的测试代码。

我该怎么办?

版本

阿拉莫火 3.0

嘲笑杰 1.1.1

Xcode 7.3 测试版

import Quick
import Nimble
import Alamofire
import SwiftyJSON
import Mockingjay
@testable import testApp
class apitestSpec: QuickSpec {
var email:String = ""
override func spec() {
    describe("API") {
        context("test get request") {
            beforeEach() {
                let body = [ "email": "test@test.com" ]
                self.stub(http(.GET, uri: "http://localhost/api/user"), builder: json(body))
            }
            it("returns json") {
                Alamofire.request(.GET, "http://localhost/api/user")
                    .responseJSON { response in
                        switch response.result {
                        case .Success(let value):
                            self.email = JSON(value)["email"].stringValue
                        case .Failure(let error):
                            print(error)
                        }
                }
                expect(self.email).toEventually(equal("test@test.com"))
            }
        }
     }
    }
}

我也有类似的问题。

取代

self.stub(http(.GET, uri: "http://localhost/api/user"), builder: json(body))

MockingjayProtocol.addStub(http(.GET, uri: "http://localhost/api/user"), builder: json(body))

成功了!

希望这有帮助

最新更新