xctest使用非同步測試需要用到xctestexpectation
這個類,
首先在測試方法中建立乙個xctestexpectation
物件expectation
。
xctestexpectation* exception = [self expectationwithdescription:@"xx"];
然後執行自定義的非同步方法。在這裡測試使用dispatch_async
執行非同步操作,真實的測試環境可能是執行乙個非同步的網路請求,在非同步任務執行完成之後需要呼叫xctestexpectation
物件expectation
的fullfill
方法,網路請求中需要再網路請求完成之後呼叫該方法。
dispatch_queue_t queue = dispatch_queue_create("group.queue", dispatch_queue_serial);
dispatch_block_t block = dispatch_block_create(0, ^);
dispatch_async(queue, block);
呼叫waitforexpectationswithtimeout:handler
方法傳遞乙個時間引數和超時處理的block。
[self waitforexpectationswithtimeout:3 handler:^(nserror * _nullable error) ];
完整的**
- (void)testasync );
dispatch_async(queue, block);
[self waitforexpectationswithtimeout:3 handler:^(nserror * _nullable error) ];
}
PAT初步 測試
刷題 常用的是黑河測試,系統後台準備若干組輸入資料,讓提交程式取執行這些資料,看輸出的結果是否與正確答案完全相同。黑盒測試分為單點測試和多點測試 系統判斷每組資料的輸出結果是否正確,正確則該組資料通過測試,使用者可獲得該組資料的分值。includeint main 要求程式一次性執行所有的資料,所有...
thread同步測試
1 編譯執行附件中的 提交執行結果截圖,並說明程式功能 2 修改 把同步資源個數減少為3個,把使用資源的執行緒增加到 你的學號 3 4 個,編譯 提交修改後的 和執行結果截圖。截圖 執行截圖 程式功能 生產者消費者模型,假定有兩個執行緒,乙個消費者執行緒,乙個生產者執行緒。乙個模擬生產者行為,乙個模...
thread同步測試
1.編譯執行附件中的 提交執行結果截圖,並說明程式功能 2 修改 把同步資源個數減少為3個,把使用資源的執行緒增加到 你的學號 3 4 個,編譯 提交修改後的 和執行結果截圖。每乙個生產者都要把自己生產的產品放入緩衝池,每個消費者從緩衝池中取走產品消費。在這種情況下,生產者消費者程序同步,因為只有通...